{
  "openapi": "3.0.1",
  "info": {
    "title": "Ats Jobs API",
    "description": "Search for jobs directly from 75+ ATS platforms (Greenhouse, Lever, Ashby, Workday, iCIMS, Taleo, SuccessFactors, and dozens more). Supports advanced filters for skills, companies, salary, work model, employment type, and experience level. Zero ghost jobs, direct company sources.",
    "version": "2.2",
    "x-build-id": "oxTFCcqDRXlB81ipx"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jobo.world~ats-jobs-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jobo.world-ats-jobs-api",
        "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/jobo.world~ats-jobs-api/runs": {
      "post": {
        "operationId": "runs-sync-jobo.world-ats-jobs-api",
        "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/jobo.world~ats-jobs-api/run-sync": {
      "post": {
        "operationId": "run-sync-jobo.world-ats-jobs-api",
        "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": {
          "queries": {
            "title": "Search Queries",
            "maxItems": 5,
            "type": "array",
            "description": "Job titles or keywords to search for. Multiple queries are OR'd together. Up to 5 keywords. Adding more rarely improves results — narrow your filters (skills, companies, locations) for better matches.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Cities, regions, or countries to filter by. The API performs server-side geocoding for accurate location matching.",
            "items": {
              "type": "string"
            }
          },
          "sources": {
            "title": "ATS Sources",
            "type": "array",
            "description": "Filter by specific ATS platforms. Leave empty to search all 75+ platforms.",
            "items": {
              "type": "string",
              "enum": [
                "acquiretm",
                "adpmyjobs",
                "adpworkforcenow",
                "applicantpro",
                "applicantstack",
                "applitrack",
                "ashby",
                "bamboohr",
                "breezy",
                "careerplug",
                "careerpuck",
                "comeet",
                "csod",
                "dayforce",
                "deel",
                "dover",
                "eightfold",
                "fountain",
                "freshteam",
                "gem",
                "gohire",
                "governmentjobs",
                "greenhouse",
                "gusto",
                "harri",
                "hibob",
                "hirebridge",
                "hirehive",
                "hireology",
                "hiringthing",
                "homerun",
                "hrmdirect",
                "hrsmart",
                "icims",
                "isolved",
                "jazzhr",
                "joblinkapply",
                "jobscore",
                "jobvite",
                "joincom",
                "kronos",
                "kula",
                "lever",
                "manatal",
                "onshift",
                "oraclecloud",
                "pageup",
                "paradox",
                "paycom",
                "paycor",
                "paylocity",
                "peopleadmin",
                "peoplematter",
                "personio",
                "phenompeople",
                "pinpoint",
                "polymer",
                "recooty",
                "recruitee",
                "rippling",
                "rival",
                "saashr",
                "smartrecruiters",
                "successfactors",
                "taleo",
                "talnet",
                "teamtailor",
                "trakstar",
                "trinet",
                "ttcportals",
                "ultipro",
                "werecruit",
                "workable",
                "workday",
                "zohorecruit"
              ]
            }
          },
          "work_models": {
            "title": "Work Model",
            "type": "array",
            "description": "Filter by where the work is performed. Accepts: 'remote', 'hybrid', 'onsite'. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "onsite"
              ]
            }
          },
          "employment_types": {
            "title": "Employment Type",
            "type": "array",
            "description": "Filter by employment type. Accepts: 'full-time', 'part-time', 'contract', 'internship', 'freelance', 'temporary'. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "full-time",
                "part-time",
                "contract",
                "internship",
                "freelance",
                "temporary"
              ]
            }
          },
          "experience_levels": {
            "title": "Experience Level",
            "type": "array",
            "description": "Filter by seniority. Accepts: 'intern', 'entry', 'mid', 'senior', 'lead', 'executive'. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "intern",
                "entry",
                "mid",
                "senior",
                "lead",
                "executive"
              ]
            }
          },
          "skills_include": {
            "title": "Skills (Include)",
            "type": "array",
            "description": "Only return jobs that require ANY of these skills (e.g., 'Python', 'React', 'AWS'). Matched case-insensitively against the job's extracted qualifications.",
            "items": {
              "type": "string"
            }
          },
          "skills_exclude": {
            "title": "Skills (Exclude)",
            "type": "array",
            "description": "Exclude jobs that require ANY of these skills. Useful for filtering out unwanted tech stacks.",
            "items": {
              "type": "string"
            }
          },
          "companies_include": {
            "title": "Companies (Include)",
            "type": "array",
            "description": "Only return jobs from these specific companies. Matched case-insensitively by company name.",
            "items": {
              "type": "string"
            }
          },
          "companies_exclude": {
            "title": "Companies (Exclude)",
            "type": "array",
            "description": "Exclude jobs from these companies. Useful for filtering out staffing agencies or companies you've already applied to.",
            "items": {
              "type": "string"
            }
          },
          "min_salary_usd": {
            "title": "Minimum Salary (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum annual salary in USD. Jobs without salary data are excluded when this filter is set."
          },
          "max_salary_usd": {
            "title": "Maximum Salary (USD)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum annual salary in USD. Can be combined with min_salary_usd for a range."
          },
          "posted_after": {
            "title": "Posted After",
            "type": "string",
            "description": "Only show jobs posted after this date. Accepts ISO 8601 dates (e.g., '2025-01-01T00:00:00Z') or relative strings (e.g., '7 days ago', '1 month')."
          },
          "page": {
            "title": "Page Number",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Page number for paginated results. Up to page 100.",
            "default": 1
          },
          "page_size": {
            "title": "Page Size",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Number of results per page (max 100).",
            "default": 50
          },
          "include_company_details": {
            "title": "Include full company details",
            "type": "boolean",
            "description": "When enabled, replaces the lightweight company preview on each job with the fully enriched company profile (funding, leadership, ratings, tech stack, H1B stats, etc.) fetched from GET /api/companies/{id}. Companies are deduplicated, so each unique company is fetched only once per run. Slower and uses more API calls — leave off if you only need basic company info.",
            "default": 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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}