{
  "openapi": "3.0.1",
  "info": {
    "title": "JobKorea Jobs Scraper (Korea) - jobkorea.co.kr",
    "description": "Extract job postings from JobKorea (잡코리아), one of Korea's largest job boards. Search by keyword, region, job category, career, education and employment type, and get title, company, location, salary range, deadline, skills and the full job description as clean JSON.",
    "version": "1.0",
    "x-build-id": "1nu0I2GHldMxkFyH3"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/asiajobs~jobkorea-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-asiajobs-jobkorea-jobs-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/asiajobs~jobkorea-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-asiajobs-jobkorea-jobs-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/asiajobs~jobkorea-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-asiajobs-jobkorea-jobs-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "keyword": {
            "title": "Search keyword",
            "type": "string",
            "description": "Search jobs by keyword (Korean or English, max 30 characters), e.g. 'python', '데이터 분석', '마케팅'. Leave empty to list all jobs matching the filters."
          },
          "locationCodes": {
            "title": "Regions",
            "type": "array",
            "description": "JobKorea region codes (the 'local' value in a jobkorea.co.kr search URL): I000 서울, B000 경기, K000 인천, G000 대전, 1000 세종, O000 충남, P000 충북, L000 광주·전남, M000 전북, F000 대구, D000 경북, H000 부산, J000 울산, C000 경남, A000 강원, N000 제주, Q000 전국. District codes also work, e.g. I010 서울 강남구. Leave empty for all.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "jobCategoryCodes": {
            "title": "Job categories",
            "type": "array",
            "description": "JobKorea job category codes (the 'duty' value in a search URL). Top-level groups are expanded automatically: 10026 기획·전략, 10027 법무·사무·총무, 10028 인사·HR, 10029 회계·세무, 10030 마케팅·광고·MD, 10031 AI·개발·데이터, 10032 디자인, 10033 물류·무역, 10034 운전·운송·배송, 10035 영업, 10036 고객상담·TM, 10037 금융·보험, 10038 식·음료, 10039 고객서비스·리테일, 10040 엔지니어링·설계, 10041 제조·생산, 10042 교육, 10043 건축·시설, 10044 의료·바이오, 10045 미디어·문화·스포츠, 10046 공공·복지. Specific roles also work, e.g. 1000229 백엔드개발자, 1000230 프론트엔드개발자, 1000236 데이터엔지니어.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "careerTypes": {
            "title": "Career level",
            "type": "array",
            "description": "Filter by career level. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "4"
              ],
              "enumTitles": [
                "신입 (Entry level)",
                "경력 (Experienced)",
                "경력무관 (Any)"
              ]
            },
            "default": []
          },
          "educationCodes": {
            "title": "Education",
            "type": "array",
            "description": "Filter by required education. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "0",
                "3",
                "4",
                "5",
                "6",
                "7"
              ],
              "enumTitles": [
                "학력무관 (Any)",
                "고졸 (High school)",
                "초대졸 (2-3 yr college)",
                "대졸 (Bachelor)",
                "석사 (Master)",
                "박사 (PhD)"
              ]
            },
            "default": []
          },
          "employmentTypes": {
            "title": "Employment types",
            "type": "array",
            "description": "Filter by employment type. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8",
                "9",
                "10"
              ],
              "enumTitles": [
                "정규직 (Permanent)",
                "계약직 (Contract)",
                "인턴 (Intern)",
                "파견직 (Dispatch)",
                "도급 (Outsourced)",
                "프리랜서 (Freelance)",
                "아르바이트 (Part-time)",
                "연수생/교육생 (Trainee)",
                "병역특례 (Military service alt.)",
                "위촉직/개인사업자"
              ]
            },
            "default": []
          },
          "sort": {
            "title": "Sort",
            "enum": [
              "RelevanceDesc",
              "RegDtDesc",
              "EditDtDesc",
              "ApplyCloseDtAsc",
              "ReadCntDesc",
              "ApplicantDesc"
            ],
            "type": "string",
            "description": "Sort order of the search results.",
            "default": "RelevanceDesc"
          },
          "pageSize": {
            "title": "Results per page",
            "minimum": 10,
            "maximum": 100,
            "type": "integer",
            "description": "Jobs fetched per search request (10-100).",
            "default": 50
          },
          "startPage": {
            "title": "Start page",
            "minimum": 1,
            "type": "integer",
            "description": "Search result page to start from.",
            "default": 1
          },
          "includeDetails": {
            "title": "Include full job details",
            "type": "boolean",
            "description": "Open each job to get the full description (상세요강), work address, skills, keywords, working hours, openings and company info. Turn off for a faster, lighter list.",
            "default": true
          },
          "maxItems": {
            "title": "Max jobs",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of jobs to return. JobKorea shows at most ~500 result pages per search; split big searches with filters.",
            "default": 100
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Proxy settings. JobKorea works best WITHOUT a proxy (the default); only change this if you know you need one (e.g. a Korean residential proxy if you get blocked).",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}