{
  "openapi": "3.0.1",
  "info": {
    "title": "ATS Jobs API - Greenhouse, Lever, Ashby, Workday Jobs",
    "description": "ATS jobs API covering Greenhouse, Lever, Ashby and Workday. Give a company domain and get every open role listed on its applicant tracking system back, with title, location and posting date for each job, deduplicated so you never pay twice for the same listing.",
    "version": "0.1",
    "x-build-id": "Qs9iD2JmQ1yGeIhmD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/om_kh~ats-jobs-api/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-om_kh-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/om_kh~ats-jobs-api/runs": {
      "post": {
        "operationId": "runs-sync-om_kh-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/om_kh~ats-jobs-api/run-sync": {
      "post": {
        "operationId": "run-sync-om_kh-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",
        "required": [
          "maxTotalChargeUsd"
        ],
        "properties": {
          "companyDomains": {
            "title": "Company domains",
            "type": "array",
            "description": "The easiest way to use this Actor. Give company websites (stripe.com, figma.com) and it finds which ATS each one uses - Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Rippling, Breezy, Personio or BambooHR - then returns every open role. No board tokens to look up. Max 20 per run.",
            "items": {
              "type": "string"
            }
          },
          "greenhouseBoards": {
            "title": "Greenhouse company boards",
            "type": "array",
            "description": "Company board tokens on Greenhouse (from boards.greenhouse.io/<token>). Returns every open role.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "leverCompanies": {
            "title": "Lever companies",
            "type": "array",
            "description": "Company handles on Lever (from jobs.lever.co/<handle>).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "ashbyBoards": {
            "title": "Ashby job boards",
            "type": "array",
            "description": "Board names on Ashby (from jobs.ashbyhq.com/<board>).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "smartRecruitersCompanies": {
            "title": "SmartRecruiters companies",
            "type": "array",
            "description": "Company identifiers on SmartRecruiters.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "ripplingCompanies": {
            "title": "Rippling ATS companies",
            "type": "array",
            "description": "Company handles on Rippling ATS (from ats.rippling.com/<handle>).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "breezyCompanies": {
            "title": "Breezy HR companies",
            "type": "array",
            "description": "Company handles on Breezy HR (from <handle>.breezy.hr).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "workdayCareerUrls": {
            "title": "Workday careers URLs",
            "type": "array",
            "description": "Full careers-site URLs on Workday, e.g. https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite. Most large enterprises use Workday.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "personioCompanies": {
            "title": "Personio companies",
            "type": "array",
            "description": "Company handles on Personio (from <handle>.jobs.personio.de). Common across European employers.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "bambooHrCompanies": {
            "title": "BambooHR companies",
            "type": "array",
            "description": "Company handles on BambooHR (from <handle>.bamboohr.com).",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "maxTotalChargeUsd": {
            "title": "Maximum Vigia charge (USD)",
            "minimum": 0,
            "type": "number",
            "description": "Hard maximum amount that this run may charge.",
            "default": 1
          },
          "previousJobs": {
            "title": "Previous run's jobs (optional)",
            "type": "array",
            "description": "Optional. Supply the previous run's output to receive only NEW and CHANGED roles instead of the full list.",
            "default": []
          },
          "currentJobs": {
            "title": "Bring your own jobs (optional)",
            "type": "array",
            "description": "Optional. Supply your own job rows to normalize/deduplicate instead of fetching. Leave empty to fetch from the boards above.",
            "default": []
          },
          "monitorEnabled": {
            "title": "Monitor only new results",
            "type": "boolean",
            "description": "The first monitored run stores a free baseline. Later runs deliver and charge only new results.",
            "default": false
          },
          "monitorId": {
            "title": "Monitor ID (optional)",
            "type": "string",
            "description": "Pins the persistent baseline to a name of your choice. Leave empty to derive it automatically from the Greenhouse boards. Use distinct IDs to track separate targets independently.",
            "default": ""
          },
          "sources": {
            "title": "Declared upstream sources and estimated costs",
            "type": "array",
            "description": "Declare every upstream source before this run. Each item needs name, authorization, and estimated_cost_usd.",
            "default": [
              {
                "name": "Customer-authorized input",
                "authorization": "customer_authorized",
                "estimated_cost_usd": 0
              }
            ]
          },
          "keywords": {
            "title": "Keyword filter",
            "type": "array",
            "description": "Keep only jobs whose title, department, company or location contains one of these words. Whole-word match. Leave empty to keep everything. Filtering happens before billing - you are never charged for a job you filtered out.",
            "items": {
              "type": "string"
            }
          },
          "excludeKeywords": {
            "title": "Exclude keywords",
            "type": "array",
            "description": "Drop jobs matching any of these words, e.g. intern, senior, sales.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Location filter",
            "type": "array",
            "description": "Keep only jobs whose location contains one of these, e.g. Berlin, United Kingdom.",
            "items": {
              "type": "string"
            }
          },
          "remoteOnly": {
            "title": "Remote only",
            "type": "boolean",
            "description": "Keep only roles whose location says remote, anywhere or distributed.",
            "default": false
          },
          "postedAfter": {
            "title": "Posted after",
            "type": "string",
            "description": "Keep only jobs posted on or after this date (YYYY-MM-DD). Jobs from providers that publish no date are kept."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}