{
  "openapi": "3.0.1",
  "info": {
    "title": "ATS Jobs Search API: Greenhouse, Lever & Ashby Career Site Jobs",
    "description": "Greenhouse jobs API, Lever jobs API and Ashby jobs search in one: ATS job search over 10,330 bundled career site boards (about 315k open jobs, checked 2026-10-21), plus Workday and 4 more. New jobs in the last hour, 24 h or week. $0.002 per job.",
    "version": "0.1",
    "x-build-id": "YJn6hp6ET6vfmFz0U"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/datagleaner~career-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-datagleaner-career-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/datagleaner~career-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-datagleaner-career-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/datagleaner~career-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-datagleaner-career-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": {
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "Career-page URLs such as https://boards.greenhouse.io/stripe, https://jobs.lever.co/netflix, https://jobs.ashbyhq.com/openai, https://<tenant>.wd5.myworkdayjobs.com/<site>, https://jobs.smartrecruiters.com/<company>, https://apply.workable.com/<company>, https://<company>.recruitee.com or https://<company>.jobs.personio.de. You can also write 'greenhouse:stripe', or a plain company name or website: the Actor then tries the Greenhouse, Lever and Ashby slugs for it.",
            "items": {
              "type": "string"
            }
          },
          "titleKeywords": {
            "title": "Job title keywords",
            "type": "array",
            "description": "Keep only jobs whose title contains at least one of these words (case-insensitive), for example data engineer, product manager. Leave empty for all jobs.",
            "items": {
              "type": "string"
            }
          },
          "excludeTitleKeywords": {
            "title": "Exclude title keywords",
            "type": "array",
            "description": "Drop jobs whose title contains any of these words (case-insensitive), for example intern, sales. Applied after the title keywords.",
            "items": {
              "type": "string"
            }
          },
          "departments": {
            "title": "Departments",
            "type": "array",
            "description": "Keep only jobs whose department or team contains at least one of these texts, for example Engineering, Marketing. Jobs from a company that publishes no department are left out when this is set.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Keep only jobs with a location containing at least one of these texts, for example London, Germany, Remote. Leave empty for all locations.",
            "items": {
              "type": "string"
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Keep only jobs located in these countries, as two-letter codes or names, for example US, GB, Germany. Matches any location of the job. Jobs whose country cannot be worked out are left out. Leave empty for all countries.",
            "items": {
              "type": "string"
            }
          },
          "remoteOnly": {
            "title": "Remote jobs only",
            "type": "boolean",
            "description": "Keep only jobs the company marks as remote. Jobs where the ATS does not say are left out when this is on.",
            "default": false
          },
          "postedWithinDays": {
            "title": "Posted within the last N days",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "Keep only jobs posted or updated in the last N days. Jobs with no date are kept."
          },
          "timeRange": {
            "title": "Time range (new jobs)",
            "enum": [
              "1h",
              "24h",
              "7d",
              "30d"
            ],
            "type": "string",
            "description": "Quick freshness filter: only jobs posted or updated in the last hour (1h), 24 hours (24h), 7 days (7d) or 30 days (30d). Hour precision where the ATS publishes a timestamp; jobs with no date are kept. If Posted within the last N days or Posted after is also set, the later cut-off wins."
          },
          "ats": {
            "title": "ATS filter",
            "type": "array",
            "description": "Only return jobs from these applicant tracking systems. Applies to the bundled-board search and to the Companies you list. Leave empty for every ATS.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "lever",
                "ashby",
                "workday",
                "smartrecruiters",
                "workable",
                "recruitee",
                "personio"
              ]
            }
          },
          "postedAfter": {
            "title": "Posted after (date)",
            "type": "string",
            "description": "Keep only jobs posted or updated on or after this date, YYYY-MM-DD. Jobs with no date are kept. If Posted within the last N days is also set, the later cut-off wins."
          },
          "maxJobsPerCompany": {
            "title": "Max jobs per company",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Upper bound on jobs returned for each company, after the filters.",
            "default": 20
          },
          "maxItems": {
            "title": "Max jobs in total",
            "minimum": 1,
            "maximum": 1000000,
            "type": "integer",
            "description": "Upper bound on jobs across all companies. The run stops once it is reached.",
            "default": 200
          },
          "includeDescription": {
            "title": "Include job descriptions",
            "type": "boolean",
            "description": "Return descriptionText and descriptionHtml. Turn off for a faster run; SmartRecruiters, Workable and Workday need one extra request per job for the description.",
            "default": true
          },
          "searchAllCompanies": {
            "title": "Search all bundled companies",
            "type": "boolean",
            "description": "Search the Actor's bundled list of about 8,000 company boards on Greenhouse, Lever and Ashby instead of the example companies above (leave Companies as it is, or add your own to search them as well). Use it with Job title keywords and Max jobs in total.",
            "default": false
          },
          "concurrency": {
            "title": "Parallel requests",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many companies are fetched at the same time. Each one is a separate site, so 10 is polite; the maximum is 20.",
            "default": 10
          },
          "requestDelaySeconds": {
            "title": "Delay between page requests (seconds)",
            "minimum": 0,
            "maximum": 30,
            "type": "number",
            "description": "Base pause between page requests to the same company; the actual pause is randomised up to 1.5x.",
            "default": 0.2
          },
          "onlyNewSinceLastRun": {
            "title": "Only jobs not seen in earlier runs (monitor mode)",
            "type": "boolean",
            "description": "For scheduled runs: return only jobs that earlier runs with the same state key have not already returned, and pay only for those. The seen list is kept in the named key-value store 'career-jobs-state' on your account. Ignored in the built-in example run.",
            "default": false
          },
          "stateKey": {
            "title": "State key",
            "type": "string",
            "description": "Name of the seen-jobs list for monitor mode. Use a different key for each schedule or search so they do not share memory.",
            "default": "default"
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Optional. These endpoints work without a proxy from Apify datacenter IPs."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}