콘텐츠로 이동

resumes 스키마

워크마루 이력서 문서의 전체 스키마. 각 엔드포인트 문서에서 참조용으로 사용합니다.

저장 위치

users/{uid}/resumes/{resume_id}
  • 사용자별 서브컬렉션으로 저장됩니다.
  • 한 사용자당 최대 10개까지 생성 가능합니다.

문서 필드

필드 타입 설명
title string 이력서 제목 (최대 100자)
email string 연락용 이메일 (이메일 형식 검증)
phone string 휴대폰 번호 (010-XXXX-XXXX)
location string 주소 (최대 400자)
introduction string? 자기소개 (최대 2000자, 선택)
careers Career[] 경력사항 배열 — 아래 Career 참조
educations Education[] 학력사항 배열 — 아래 Education 참조
certificates ResumeCertificate[] 이력서에 포함된 자격증 배열 — 아래 ResumeCertificate 참조
military Military? 병역사항 — 아래 Military 참조
created_at timestamp 생성 시각 (KST)
updated_at timestamp 최종 수정 시각 (KST)

users 서브컬렉션의 certificates와 구분

이력서 문서의 certificates 배열은 이력서 본문에 포함된 자격증 요약 정보입니다. 사용자 프로필용 자격증 원본은 별도 컬렉션 users/{uid}/certificates에 저장됩니다.

Career

경력사항 서브오브젝트. start_date 오름차순으로 자동 정렬되어 저장됩니다.

필드 타입 설명
company_name string 회사명 (필수)
position string 직책/직무 (필수)
start_date string 입사일 (YYYY-MM 형식)
end_date string? 퇴사일 (YYYY-MM 형식, null이면 재직중)
description string? 업무 설명 (선택)

Education

학력사항 서브오브젝트.

필드 타입 설명
school_type string 학교 구분 (아래 ENUM 참조)
school_name string? 학교명 (검정고시일 경우 자동 "검정고시")
major string? 전공 (선택)
status string 졸업 상태 (아래 ENUM 참조)
graduation_date string? 졸업일 (선택)

school_type ENUM: high_school, ged, college, university, master, doctor

status ENUM: graduated, enrolled, leave, dropout, expected, passed

검정고시 특수 규칙

  • school_type == "ged"인 경우 status는 반드시 "passed"이며 school_name은 자동으로 "검정고시", majornull로 설정됩니다.
  • ged가 아닌 경우 status"passed"를 사용할 수 없습니다.

ResumeCertificate

이력서 문서 안에 임베딩되는 자격증 요약. (별도 users/{uid}/certificates 원본과 독립)

필드 타입 설명
name string 자격증명 (필수)
issuer string 발급기관 (필수)
grade string? 급수/점수 (선택)
acquired_date string 취득일 (YYYY-MM 형식)

Military

병역사항 서브오브젝트.

필드 타입 설명
status string 병역 구분 (아래 ENUM 참조)
branch string? 군별 (status == "completed"일 때만 값 존재)
start_date string? 입대일 (YYYY-MM, 군필 시 필수)
rank string? 전역 계급 (선택)

status ENUM: completed(군필), not_completed(미필), exempted(면제)

branch ENUM: army(육군), navy(해군), air_force(공군), marine(해병대), social_service(사회복무요원), other(기타)

조건부 필수 규칙

  • status == "completed"인 경우 branch, start_date가 필수입니다.
  • statusnot_completed 또는 exempted인 경우 branch, start_date, rank는 모두 null로 저장됩니다.

예시 문서

{
  "title": "건설 경력 이력서",
  "email": "user@example.com",
  "phone": "010-1234-5678",
  "location": "서울시 강남구",
  "introduction": "10년차 건설 현장 관리자입니다.",
  "careers": [
    {
      "company_name": "ABC건설",
      "position": "현장소장",
      "start_date": "2020-01",
      "end_date": "2023-12",
      "description": "아파트 신축 현장 관리"
    }
  ],
  "educations": [
    {
      "school_type": "university",
      "school_name": "서울대학교",
      "major": "건축공학",
      "status": "graduated",
      "graduation_date": "2015-02-25"
    }
  ],
  "certificates": [
    {
      "name": "건설안전기사",
      "issuer": "한국산업인력공단",
      "grade": "기사",
      "acquired_date": "2019-06"
    }
  ],
  "military": {
    "status": "completed",
    "branch": "army",
    "start_date": "2015-03",
    "rank": "병장"
  },
  "created_at": "2026-04-23T10:00:00+09:00",
  "updated_at": "2026-04-23T10:00:00+09:00"
}

관련 엔드포인트