Shukatsu no Mori API (v1.0)

Download OpenAPI specification:

就活の森 프로젝트 API 명세

Auth

인증 / 사용자 정보 API

회원가입

이메일과 비밀번호를 이용해 신규 회원을 등록합니다.

Request Body schema: application/json
required

회원가입 요청 데이터

email
required
string

이메일

password
required
string [ 4 .. 20 ] characters

비밀번호

rePassword
required
string [ 4 .. 20 ] characters

비밀번호 확인

nickname
required
string [ 2 .. 10 ] characters

닉네임

profileImage
string

프로필 이미지 URL

role
string
Enum: "USER" "ADMIN"

Responses

Request samples

Content type
application/json

회원가입 예시

{}

로그인

이메일과 비밀번호로 로그인하고 JWT 토큰을 발급받습니다.

Request Body schema: application/json
required

로그인 요청 데이터

email
required
string

이메일

password
required
string

비밀번호

Responses

Request samples

Content type
application/json

로그인 예시

{
  • "email": "test@example.com",
  • "password": "1234"
}

내 정보 조회

로그인한 사용자의 정보를 조회합니다.

Responses

내 정보 수정

비밀번호, 닉네임, 프로필 이미지를 수정합니다.

Request Body schema: application/json
required

내 정보 수정 요청 데이터

password
string [ 4 .. 20 ] characters

새 비밀번호

rePassword
string

새 비밀번호 확인

nickname
string [ 2 .. 10 ] characters

닉네임

profileImage
string

프로필 이미지 URL

Responses

Request samples

Content type
application/json

내 정보 수정 예시

{}

Review

기업 후기 API

기업 후기 상세 조회

기업 ID와 후기 ID를 통해 특정 후기를 조회합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

reviewId
required
integer <int64>
Example: 10

후기 ID

Responses

기업 후기 수정

본인이 작성한 기업 후기를 수정합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

reviewId
required
integer <int64>
Example: 10

후기 ID

Request Body schema: application/json
required

기업 후기 수정 요청 데이터

title
required
string [ 0 .. 200 ] characters

후기 제목

position
required
string [ 0 .. 50 ] characters

지원 직군

stage
required
string [ 0 .. 20 ] characters

전형 단계

result
required
string [ 0 .. 20 ] characters

전형 결과

content
required
string [ 0 .. 4000 ] characters

후기 내용

Responses

Request samples

Content type
application/json
{
  • "title": "1차 면접 후기 (수정)",
  • "position": "백엔드 개발자",
  • "stage": "2차 면접",
  • "result": "불합격",
  • "content": "난이도가 높았습니다."
}

기업 후기 삭제

본인이 작성한 기업 후기를 삭제합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

reviewId
required
integer <int64>
Example: 10

후기 ID

Responses

기업 후기 등록

로그인한 사용자가 특정 기업에 대한 후기를 등록합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

Request Body schema: application/json
required

기업 후기 작성 요청 데이터

title
required
string [ 0 .. 200 ] characters

후기 제목

position
required
string [ 0 .. 50 ] characters

지원 직군

stage
required
string [ 0 .. 20 ] characters

전형 단계

result
required
string [ 0 .. 20 ] characters

전형 결과

content
required
string [ 0 .. 4000 ] characters

후기 내용

Responses

Request samples

Content type
application/json
{
  • "title": "1차 면접 후기",
  • "position": "백엔드 개발자",
  • "stage": "1차 면접",
  • "result": "합격",
  • "content": "기술 질문 위주의 면접이었습니다."
}

내 기업 후기 목록 조회

로그인한 사용자가 특정 기업에 작성한 후기 목록을 조회합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

query Parameters
page
integer <int32> >= 0
Default: 0

페이지 번호

size
integer <int32> <= 10
Default: 10
Example: size=10

페이지 당 조회 개수

keyword
string
Example: keyword=합격

검색 키워드

Responses

File

파일(이미지) 업로드 API

이미지 수정

기존 이미지 URL을 기준으로 이미지를 새 파일로 교체합니다.

query Parameters
imageUrl
string
Example: imageUrl=https://cdn.example.com/image.png

기존 이미지 URL (없을 경우 신규 업로드처럼 처리)

Request Body schema: multipart/form-data
file
required
string <binary>

새로 업로드할 이미지 파일

Responses

이미지 업로드

이미지 파일을 업로드하고 접근 가능한 이미지 URL을 반환합니다.

Request Body schema: multipart/form-data
file
required
string <binary>

업로드할 이미지 파일

Responses

이미지 삭제

이미지 URL을 기준으로 저장된 이미지를 삭제합니다.

query Parameters
imageUrl
required
string
Example: imageUrl=https://cdn.example.com/image.png

삭제할 이미지 URL

Responses

Detail

기업 분석 API

기업 분석 상세 조회

기업 ID와 분석 ID를 통해 특정 기업 분석 글을 조회합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

detailId
required
integer <int64>
Example: 20

분석 ID

Responses

기업 분석 수정

본인이 작성한 기업 분석 글을 수정합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

detailId
required
integer <int64>
Example: 20

분석 ID

Request Body schema: application/json
required

기업 분석 수정 요청 데이터

title
required
string [ 0 .. 200 ] characters

분석 제목

position
required
string [ 0 .. 100 ] characters

직군

content
required
string [ 0 .. 4000 ] characters

분석 내용

Responses

Request samples

Content type
application/json
{
  • "title": "기업 문화 분석 (수정)",
  • "position": "백엔드 개발자",
  • "content": "조직 문화가 수평적입니다."
}

기업 분석 삭제

본인이 작성한 기업 분석 글을 삭제합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

detailId
required
integer <int64>
Example: 20

분석 ID

Responses

기업 분석 목록 조회

특정 기업에 대한 분석 글 목록을 페이지 단위로 조회합니다. 키워드 검색을 지원합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

query Parameters
page
integer <int32> >= 0
Default: 0

페이지 번호 (0부터 시작)

size
integer <int32> <= 10
Default: 10
Example: size=10

페이지 당 조회 개수 (최대 10)

keyword
string
Example: keyword=연봉

검색 키워드 (제목/내용)

Responses

기업 분석 등록

로그인한 사용자가 특정 기업에 대한 분석 글을 작성합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

Request Body schema: application/json
required

기업 분석 작성 요청 데이터

title
required
string [ 0 .. 200 ] characters

분석 제목

position
required
string [ 0 .. 100 ] characters

직군

content
required
string [ 0 .. 4000 ] characters

분석 내용

Responses

Request samples

Content type
application/json
{
  • "title": "기업 문화 분석",
  • "position": "백엔드 개발자",
  • "content": "해당 기업은 워라밸이 좋은 편입니다."
}

내 기업 분석 목록 조회

로그인한 사용자가 특정 기업에 작성한 분석 글 목록을 조회합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

query Parameters
page
integer <int32> >= 0
Default: 0

페이지 번호

size
integer <int32> <= 10
Default: 10
Example: size=10

페이지 당 조회 개수

keyword
string
Example: keyword=복지

검색 키워드

Responses

Company

기업 정보 API

기업 상세 조회

기업 ID를 통해 기업 상세 정보를 조회합니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

Responses

기업 수정

기업 ID에 해당하는 기업 정보를 수정합니다. 로그인한 사용자만 수정할 수 있습니다.

path Parameters
companyId
required
integer <int64>
Example: 1

기업 ID

Request Body schema: application/json
required

기업 수정 요청 데이터

city
required
string [ 0 .. 50 ] characters

기업이 위치한 도시

name
required
string [ 0 .. 100 ] characters

기업명

industry
required
string [ 0 .. 50 ] characters

업계

website
string [ 0 .. 255 ] characters

기업 공식 웹사이트 URL

description
string

기업 상세 설명

companyImage
string [ 0 .. 255 ] characters

기업 이미지 URL

Responses

Request samples

Content type
application/json

예시

{}

기업 목록 조회

페이지네이션 기반으로 기업 목록을 조회합니다.

query Parameters
page
integer <int32> >= 0
Default: 0

페이지 번호 (0부터 시작)

size
integer <int32> <= 10
Default: 10
Example: size=10

페이지 당 조회 개수 (최대 10)

Responses

기업 등록

새로운 기업 정보를 등록합니다. 로그인한 사용자만 등록할 수 있습니다.

Request Body schema: application/json
required

기업 등록 요청 데이터

city
required
string

기업이 위치한 도시

name
required
string [ 0 .. 100 ] characters

기업명

industry
required
string [ 0 .. 50 ] characters

업계

website
string [ 0 .. 255 ] characters

기업 공식 웹사이트 URL

description
string

기업 상세 설명

companyImage
string [ 0 .. 255 ] characters

기업 이미지 URL

Responses

Request samples

Content type
application/json

예시

{}