{
  "openapi": "3.0.1",
  "info": {
    "title": "ATS Jobs Scraper: Greenhouse, Lever, Workday +15",
    "description": "Scrape every open job from company career sites on Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Workable and 12 more ATS. Parsed salary, location, remote type and seniority in one schema. For job boards, recruiting, sales leads, hiring-trend research and new-job alerts.",
    "version": "1.0",
    "x-build-id": "KldSnKXiB8ebiSVbJ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/panix~ats-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-panix-ats-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/panix~ats-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-panix-ats-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/panix~ats-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-panix-ats-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": "Any mix of: a job board link (<code>https://boards.greenhouse.io/stripe</code>, <code>https://jobs.lever.co/palantir</code>, <code>https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite</code>), a single job link, a company website (<code>stripe.com</code>) or a company name (<code>Notion</code>). Supported: Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Workable, Recruitee, Personio, Teamtailor, BambooHR, Breezy HR, Rippling, Gem, Pinpoint, HireHive, Polymer, Manatal and Oracle Cloud HCM.",
            "items": {
              "type": "string"
            }
          },
          "companyLists": {
            "title": "Ready-made company lists",
            "type": "array",
            "description": "No list of your own? Add every company of a ready-made list (checked monthly). Combine with filters, for example remote data jobs at AI companies.",
            "items": {
              "type": "string",
              "enum": [
                "ai",
                "climate",
                "dev-tools",
                "enterprise",
                "europe",
                "fintech",
                "gaming",
                "health",
                "remote-first",
                "security",
                "startups",
                "tech"
              ],
              "enumTitles": [
                "AI labs and AI-first companies (50 companies)",
                "Climate, energy and mobility (15 companies)",
                "Developer tools and infrastructure (42 companies)",
                "Large employers (Workday, Oracle, SmartRecruiters career sites) (34 companies)",
                "European tech companies (54 companies)",
                "Fintech, payments and crypto (43 companies)",
                "Games and entertainment (11 companies)",
                "Health and biotech (14 companies)",
                "Remote-first companies (42 companies)",
                "Cybersecurity companies (16 companies)",
                "Fast-growing venture-backed startups (28 companies)",
                "Well-known tech and software companies (74 companies)"
              ]
            }
          },
          "excludeCompanies": {
            "title": "Exclude companies",
            "type": "array",
            "description": "Names, websites or board names to leave out, for example your own employer when you use a ready-made list.",
            "items": {
              "type": "string"
            }
          },
          "titleIncludes": {
            "title": "Title includes (any)",
            "type": "array",
            "description": "Keep jobs whose title contains at least one of these words or phrases, for example <code>data engineer</code>, <code>product manager</code>, <code>C++</code>.",
            "items": {
              "type": "string"
            }
          },
          "titleExcludes": {
            "title": "Title excludes",
            "type": "array",
            "description": "Leave out jobs whose title contains any of these, for example <code>intern</code>, <code>senior</code>, <code>contract</code>.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Keywords in title or description (any)",
            "type": "array",
            "description": "Keep jobs that mention at least one of these in the title or the job description, such as <code>Snowflake</code>, <code>Kubernetes</code> or <code>visa</code>.",
            "items": {
              "type": "string"
            }
          },
          "excludeKeywords": {
            "title": "Exclude keywords",
            "type": "array",
            "description": "Leave out jobs whose title or description mentions any of these, for example <code>security clearance</code>.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations (any)",
            "type": "array",
            "description": "Countries (<code>Germany</code>, <code>DE</code>), US states or provinces (<code>California</code>, <code>Ontario</code>), cities (<code>London</code>, <code>Austin, TX</code>), regions (<code>EMEA</code>, <code>Europe</code>, <code>APAC</code>, <code>LATAM</code>, <code>DACH</code>, <code>Nordics</code>) or <code>Remote</code>. A remote job open to EMEA matches Germany.",
            "items": {
              "type": "string"
            }
          },
          "excludeLocations": {
            "title": "Exclude locations",
            "type": "array",
            "description": "Leave out jobs located in any of these countries, states, cities or regions.",
            "items": {
              "type": "string"
            }
          },
          "workplaceTypes": {
            "title": "Workplace type",
            "type": "array",
            "description": "Remote, hybrid or on-site. A job with no workplace information counts as on-site.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "onsite"
              ],
              "enumTitles": [
                "Remote",
                "Hybrid",
                "On-site"
              ]
            }
          },
          "employmentTypes": {
            "title": "Employment type",
            "type": "array",
            "description": "From the job board's own field, or the title ('Intern', 'Part-time'). A job with no employment information counts as full-time.",
            "items": {
              "type": "string",
              "enum": [
                "full_time",
                "part_time",
                "contract",
                "temporary",
                "internship",
                "apprenticeship",
                "volunteer",
                "other"
              ],
              "enumTitles": [
                "Full-time",
                "Part-time",
                "Contract / freelance",
                "Temporary / fixed-term",
                "Internship",
                "Apprenticeship",
                "Volunteer",
                "Other"
              ]
            }
          },
          "seniorities": {
            "title": "Seniority",
            "type": "array",
            "description": "Read from the job title (Senior, Staff, Director, Intern...) and the board's experience level. Titles without a level count as mid level.",
            "items": {
              "type": "string",
              "enum": [
                "intern",
                "entry",
                "mid",
                "senior",
                "lead",
                "manager",
                "director",
                "vp",
                "executive"
              ],
              "enumTitles": [
                "Intern / working student",
                "Entry level / junior",
                "Mid level",
                "Senior",
                "Lead / staff / principal",
                "Manager",
                "Director / head of",
                "Vice president",
                "Executive (C-level, founder)"
              ]
            }
          },
          "jobFunctions": {
            "title": "Job function",
            "type": "array",
            "description": "Read from the job title, team and department.",
            "items": {
              "type": "string",
              "enum": [
                "engineering",
                "data",
                "product",
                "design",
                "sales",
                "marketing",
                "customer_success",
                "operations",
                "finance",
                "hr",
                "legal",
                "it",
                "security",
                "research",
                "healthcare",
                "education",
                "manufacturing",
                "logistics",
                "retail",
                "hospitality",
                "administrative",
                "consulting",
                "other"
              ],
              "enumTitles": [
                "Engineering",
                "Data, analytics and AI",
                "Product",
                "Design",
                "Sales",
                "Marketing",
                "Customer success and support",
                "Operations and strategy",
                "Finance and accounting",
                "HR and recruiting",
                "Legal and compliance",
                "IT",
                "Security",
                "Research",
                "Healthcare",
                "Education",
                "Manufacturing and trades",
                "Logistics and warehouse",
                "Retail",
                "Hospitality",
                "Administrative",
                "Consulting",
                "Other"
              ]
            }
          },
          "departments": {
            "title": "Departments or teams",
            "type": "array",
            "description": "Keep jobs whose department or team contains one of these, for example <code>Engineering</code> or <code>Sales</code>.",
            "items": {
              "type": "string"
            }
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 1,
            "type": "integer",
            "description": "Only jobs posted in the last N days. Jobs whose board shows no date are left out."
          },
          "postedAfter": {
            "title": "Posted on or after",
            "type": "string",
            "description": "A date such as 2026-10-01, or a relative value such as '2 weeks'."
          },
          "salaryOnly": {
            "title": "Only jobs with a salary",
            "type": "boolean",
            "description": "Keep jobs whose board publishes pay, or whose description states a pay range.",
            "default": false
          },
          "minSalary": {
            "title": "Minimum yearly salary",
            "minimum": 0,
            "type": "integer",
            "description": "Keep jobs whose yearly pay (hourly and monthly pay converted) reaches this amount. Jobs without pay information are left out."
          },
          "salaryCurrency": {
            "title": "Salary currency",
            "type": "string",
            "description": "Three-letter code for the minimum salary, for example <code>USD</code>, <code>EUR</code> or <code>GBP</code>. Jobs paid in other currencies are left out."
          },
          "visaSponsorshipOnly": {
            "title": "Only jobs that offer visa sponsorship",
            "type": "boolean",
            "description": "Keep jobs whose description says sponsorship is available. Jobs that say it is not, or say nothing, are left out.",
            "default": false
          },
          "languages": {
            "title": "Description language",
            "type": "array",
            "description": "Keep jobs written in these languages (from the board, or detected from the text).",
            "items": {
              "type": "string",
              "enum": [
                "en",
                "de",
                "fr",
                "es",
                "it",
                "nl",
                "pt",
                "sv",
                "da",
                "no",
                "fi",
                "pl",
                "cs",
                "ro",
                "hu",
                "tr",
                "el",
                "ru",
                "uk",
                "ja",
                "zh",
                "ko",
                "ar",
                "he",
                "th"
              ],
              "enumTitles": [
                "English",
                "German",
                "French",
                "Spanish",
                "Italian",
                "Dutch",
                "Portuguese",
                "Swedish",
                "Danish",
                "Norwegian",
                "Finnish",
                "Polish",
                "Czech",
                "Romanian",
                "Hungarian",
                "Turkish",
                "Greek",
                "Russian",
                "Ukrainian",
                "Japanese",
                "Chinese",
                "Korean",
                "Arabic",
                "Hebrew",
                "Thai"
              ]
            }
          },
          "nearLocation": {
            "title": "Near a city",
            "type": "string",
            "description": "Keep jobs within the distance below of this city, for example <code>Berlin</code> or <code>Austin, TX</code>, measured between city centers."
          },
          "radiusKm": {
            "title": "Distance (km)",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Used with 'Near a city'.",
            "default": 50
          },
          "maxJobsPerCompany": {
            "title": "Max jobs per company",
            "minimum": 1,
            "type": "integer",
            "description": "Newest jobs first. Empty = every matching job (boards with 10,000+ jobs are read completely)."
          },
          "maxItems": {
            "title": "Max jobs in total",
            "minimum": 1,
            "type": "integer",
            "description": "Stop the run after this many jobs. Empty = no limit (your spending limit still applies)."
          },
          "includeDescription": {
            "title": "Include job description",
            "type": "boolean",
            "description": "The full job text, plus skills, years of experience, education, visa sponsorship and pay found in it. Some boards need one extra request per job for it, included in the price.",
            "default": true
          },
          "descriptionFormat": {
            "title": "Description format",
            "enum": [
              "text",
              "markdown",
              "html",
              "all"
            ],
            "type": "string",
            "description": "Plain text for spreadsheets, Markdown for AI and RAG pipelines, HTML (cleaned) for job boards, or all three. Personal emails and phone numbers are removed.",
            "default": "text"
          },
          "outputMode": {
            "title": "Rows to return",
            "enum": [
              "jobs",
              "both",
              "companies"
            ],
            "type": "string",
            "description": "Job rows, one hiring summary row per company (open jobs, recent postings, functions, locations, pay ranges), or both.",
            "default": "jobs"
          },
          "jobUrlMode": {
            "title": "Job links",
            "enum": [
              "job",
              "board"
            ],
            "type": "string",
            "description": "What a pasted link to a single job returns.",
            "default": "job"
          },
          "includeRawData": {
            "title": "Add the original job board record",
            "type": "boolean",
            "description": "The unmodified job record from the job board in a <code>raw</code> field, for fields this Actor does not normalize.",
            "default": false
          },
          "onlyNewJobs": {
            "title": "Only new jobs since the last run",
            "type": "boolean",
            "description": "Returns jobs not seen in earlier runs (<code>changeType: new</code>), and closed jobs as free rows. Unchanged jobs are skipped and free. The first run returns every job.",
            "default": false
          },
          "monitorName": {
            "title": "Monitor name",
            "type": "string",
            "description": "Any name, such as <code>ai-companies-daily</code>. Each name keeps its own memory in your account (key-value store <code>ats-jobs-scraper-monitors</code>). Without 'Only new jobs', every job is returned with <code>changeType</code> new, updated or unchanged."
          },
          "includeUpdatedJobs": {
            "title": "Also return updated jobs",
            "type": "boolean",
            "description": "With 'Only new jobs': also return jobs whose title, location, department, workplace, employment type or pay changed (<code>changeType: updated</code>, charged as a job).",
            "default": false
          },
          "includeClosedJobs": {
            "title": "Return closed jobs",
            "type": "boolean",
            "description": "With a monitor: one free row per job that disappeared from its board since the last run (<code>changeType: closed</code>, with days open).",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Apify datacenter proxy by default: every retry comes from a new IP address.",
            "default": {
              "useApifyProxy": true
            }
          },
          "maxConcurrency": {
            "title": "Companies in parallel",
            "minimum": 1,
            "maximum": 32,
            "type": "integer",
            "description": "How many job boards are read at the same time. Each job board also has its own polite request limit.",
            "default": 6
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}