{
  "openapi": "3.0.1",
  "info": {
    "title": "Career Sites ATS Job Feed & Company Hiring Signals",
    "description": "Live jobs from company career sites on Greenhouse, Lever, Ashby, Workday, Workable, Recruitee, SmartRecruiters and Personio. Pass a name, website or board URL; the ATS is auto-detected. Get normalized jobs plus a hiring profile per company: new/closed roles, trend, momentum score, salary bands.",
    "version": "0.1",
    "x-build-id": "x2HpA4ilKXtbjx0bN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/codeclouds~career-sites-ats-jobfeed/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-codeclouds-career-sites-ats-jobfeed",
        "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/codeclouds~career-sites-ats-jobfeed/runs": {
      "post": {
        "operationId": "runs-sync-codeclouds-career-sites-ats-jobfeed",
        "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/codeclouds~career-sites-ats-jobfeed/run-sync": {
      "post": {
        "operationId": "run-sync-codeclouds-career-sites-ats-jobfeed",
        "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": [
          "companies"
        ],
        "properties": {
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "One company per line. Accepts a company name (Stripe), a website or careers page (notion.com, https://acme.com/careers) or a direct ATS board URL (https://jobs.lever.co/spotify, https://job-boards.greenhouse.io/stripe, https://jobs.ashbyhq.com/ramp, https://apply.workable.com/huggingface, bunq.recruitee.com, https://jobs.smartrecruiters.com/BoschGroup, acme.jobs.personio.de, https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite). The ATS is detected automatically; a board URL is the fastest and most precise option.",
            "default": [
              "Stripe",
              "notion.com",
              "https://jobs.lever.co/spotify",
              "https://jobs.ashbyhq.com/ramp"
            ],
            "items": {
              "type": "string"
            }
          },
          "outputMode": {
            "title": "Output",
            "enum": [
              "jobs_and_profiles",
              "profiles_only",
              "jobs_only"
            ],
            "type": "string",
            "description": "jobs_and_profiles: every open job plus one hiring-signal profile per company. profiles_only: only the company hiring profiles (cheapest way to monitor many companies). jobs_only: only the normalized job records.",
            "default": "jobs_and_profiles"
          },
          "titleKeywords": {
            "title": "Job title keywords",
            "type": "array",
            "description": "Only return jobs whose title contains at least one of these words (case-insensitive), e.g. engineer, sales, designer. Leave empty for all jobs. Company profiles are always computed on the full board.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "locationKeywords": {
            "title": "Location keywords",
            "type": "array",
            "description": "Only return jobs whose location, ISO country code or workplace type contains one of these words, e.g. London, DE, remote.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "functions": {
            "title": "Job functions",
            "type": "array",
            "description": "Only return jobs in these normalized functions. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "engineering",
                "data_ai",
                "product",
                "design",
                "sales",
                "marketing",
                "customer_success",
                "operations",
                "finance",
                "people_hr",
                "legal_compliance",
                "other"
              ],
              "enumTitles": [
                "Engineering",
                "Data & AI",
                "Product",
                "Design",
                "Sales",
                "Marketing",
                "Customer success",
                "Operations",
                "Finance",
                "People & HR",
                "Legal & compliance",
                "Other"
              ]
            },
            "default": []
          },
          "seniorities": {
            "title": "Seniority levels",
            "type": "array",
            "description": "Only return jobs at these seniority levels (inferred from the title, with the ATS level as fallback). Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "intern",
                "junior",
                "mid",
                "senior",
                "staff_principal",
                "lead",
                "manager",
                "director",
                "vp",
                "executive"
              ],
              "enumTitles": [
                "Intern / working student",
                "Junior / graduate",
                "Mid-level",
                "Senior",
                "Staff / principal",
                "Lead",
                "People manager",
                "Director / head of",
                "VP",
                "C-level / executive"
              ]
            },
            "default": []
          },
          "remoteOnly": {
            "title": "Remote jobs only",
            "type": "boolean",
            "description": "Only return jobs marked as fully remote.",
            "default": false
          },
          "trackChanges": {
            "title": "Track new and closed jobs between runs",
            "type": "boolean",
            "description": "Stores a snapshot per company board so the next run can flag new jobs (isNew), list closed jobs and compute net hiring change. The first run creates the baseline (isNew = null). Most useful on a schedule; for a single ad-hoc run it only creates the baseline.",
            "default": true
          },
          "onlyNewJobs": {
            "title": "Only return new jobs",
            "type": "boolean",
            "description": "Return only jobs that were not on the board during the previous run (requires change tracking). The first run returns all jobs as the baseline. Ideal for scheduled alerts.",
            "default": false
          },
          "atsPlatforms": {
            "title": "ATS platforms to use",
            "type": "array",
            "description": "Which applicant tracking systems may be used. Workday boards are only used when you pass a Workday URL (https://{company}.wdN.myworkdayjobs.com/{site}) or when the careers page links to one; they are never guessed from a name.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "lever",
                "ashby",
                "workable",
                "recruitee",
                "smartrecruiters",
                "personio",
                "workday"
              ],
              "enumTitles": [
                "Greenhouse",
                "Lever",
                "Ashby",
                "Workable",
                "Recruitee",
                "SmartRecruiters",
                "Personio",
                "Workday"
              ]
            },
            "default": [
              "greenhouse",
              "lever",
              "ashby",
              "workable",
              "recruitee",
              "smartrecruiters",
              "personio",
              "workday"
            ]
          },
          "includeDescription": {
            "title": "Include full job description",
            "type": "boolean",
            "description": "Adds the plain-text job description (max 20,000 characters) to every job record. Off by default to keep datasets small; salary extraction from the description runs either way.",
            "default": false
          },
          "maxJobsPerCompany": {
            "title": "Max job records per company",
            "minimum": 1,
            "maximum": 10000,
            "type": "integer",
            "description": "Maximum number of job records delivered (and billed) per company after filters. Company hiring profiles and new/closed detection always use the full board, so profiles_only runs stay cheap and complete.",
            "default": 50
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}