{
  "openapi": "3.0.1",
  "info": {
    "title": "Company Jobs Search + Hiring Signals: Greenhouse, Ashby, Lever",
    "description": "Search 47,000+ fresh jobs from company career pages on Greenhouse, Lever, Ashby and Workable. Filter by role, country, remote and salary. Pay per job.",
    "version": "0.2",
    "x-build-id": "ZPkZPQZZFnmC2R8EO"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/worthwhile_quinsy~ats-jobs-search/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-worthwhile_quinsy-ats-jobs-search",
        "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/worthwhile_quinsy~ats-jobs-search/runs": {
      "post": {
        "operationId": "runs-sync-worthwhile_quinsy-ats-jobs-search",
        "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/worthwhile_quinsy~ats-jobs-search/run-sync": {
      "post": {
        "operationId": "run-sync-worthwhile_quinsy-ats-jobs-search",
        "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": {
          "mode": {
            "title": "Mode",
            "enum": [
              "jobs",
              "hiring_signals"
            ],
            "type": "string",
            "description": "jobs = one row per matching job. hiring_signals = one row per company that opened matching roles recently (for sales and recruiting prospecting).",
            "default": "jobs"
          },
          "companyWebsites": {
            "title": "Company websites (optional)",
            "type": "array",
            "description": "Limit results to these companies, e.g. 'stripe.com'. Companies not yet in the database are looked up live on their public job board (billed per lookup) and added to the daily database. Max 100 per run.",
            "items": {
              "type": "string"
            }
          },
          "boardUrls": {
            "title": "Job board URLs (optional)",
            "type": "array",
            "description": "Limit results to these public job boards, e.g. 'https://boards.greenhouse.io/stripe', 'jobs.lever.co/netflix', 'jobs.ashbyhq.com/ramp'. Boards not yet in the database are fetched live (billed per board) and added to the daily database. Max 100 per run.",
            "items": {
              "type": "string"
            }
          },
          "keywords": {
            "title": "Job title keywords",
            "type": "array",
            "description": "Match any of these in the job title (case-insensitive), e.g. 'data engineer', 'account executive'. Empty = all jobs.",
            "items": {
              "type": "string"
            }
          },
          "searchInDescription": {
            "title": "Also search descriptions",
            "type": "boolean",
            "description": "Match keywords in the job description too (e.g. a tool name like 'Snowflake').",
            "default": false
          },
          "excludeKeywords": {
            "title": "Exclude title keywords",
            "type": "array",
            "description": "Drop jobs whose title contains any of these, e.g. 'intern', 'senior'.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Keep jobs whose location contains any of these, e.g. 'London', 'Germany', 'Singapore', 'Remote'.",
            "items": {
              "type": "string"
            }
          },
          "remoteOnly": {
            "title": "Remote only",
            "type": "boolean",
            "description": "Only jobs marked or described as remote.",
            "default": false
          },
          "departments": {
            "title": "Departments / teams",
            "type": "array",
            "description": "Keep jobs whose department or team contains any of these, e.g. 'Engineering', 'Sales'.",
            "items": {
              "type": "string"
            }
          },
          "seniority": {
            "title": "Seniority",
            "type": "array",
            "description": "Heuristic level from the job title.",
            "items": {
              "type": "string",
              "enum": [
                "intern",
                "entry",
                "mid",
                "senior",
                "lead",
                "staff_principal",
                "director",
                "executive"
              ],
              "enumTitles": [
                "Intern",
                "Entry / junior",
                "Mid",
                "Senior",
                "Lead",
                "Staff / principal",
                "Director / head of",
                "Executive / VP"
              ]
            }
          },
          "technologies": {
            "title": "Technologies",
            "type": "array",
            "description": "Keep jobs that mention any of these tools in the title or description, e.g. 'Snowflake', 'Kubernetes', 'Salesforce'.",
            "items": {
              "type": "string"
            }
          },
          "jobCategories": {
            "title": "Job category",
            "type": "array",
            "description": "Keep only jobs in these job families (matched on the job title).",
            "items": {
              "type": "string",
              "enum": [
                "cybersecurity",
                "sales",
                "product",
                "data",
                "design",
                "devops",
                "web3"
              ],
              "enumTitles": [
                "Cybersecurity",
                "Sales & business development",
                "Product management",
                "Data engineering & analytics",
                "Design & UX",
                "DevOps, SRE & platform",
                "Web3 & crypto"
              ]
            }
          },
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Country names or 2-letter codes, e.g. 'Germany', 'US', 'Singapore'. Derived from the posting's location.",
            "items": {
              "type": "string"
            }
          },
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "Limit to companies already in the database whose name, board or website contains any of these words.",
            "items": {
              "type": "string"
            }
          },
          "ats": {
            "title": "ATS platforms",
            "type": "array",
            "description": "Limit to jobs from specific applicant tracking systems.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "ashby",
                "lever",
                "workable",
                "recruitee",
                "smartrecruiters",
                "bamboohr",
                "personio",
                "workday"
              ],
              "enumTitles": [
                "Greenhouse",
                "Ashby",
                "Lever",
                "Workable",
                "Recruitee",
                "SmartRecruiters",
                "BambooHR",
                "Personio",
                "Workday"
              ]
            }
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Jobs mode: only jobs published in the last N days (falls back to the date we first saw the job)."
          },
          "newWithinDays": {
            "title": "New within (days)",
            "minimum": 1,
            "maximum": 90,
            "type": "integer",
            "description": "Jobs mode: only jobs that appeared in the database in the last N days. Hiring-signals mode: window for counting new roles (default 7)."
          },
          "minNewJobs": {
            "title": "Min. new roles per company",
            "minimum": 1,
            "type": "integer",
            "description": "Hiring-signals mode: only companies that opened at least this many matching roles in the window.",
            "default": 1
          },
          "newTechnologiesOnly": {
            "title": "Only companies adopting a new technology",
            "type": "boolean",
            "description": "Hiring-signals mode: only companies whose recent job posts name a technology they had not named in at least 30 days of earlier posts (see 'newly_adopted_technologies'). Strong buying signal for vendors and consultancies.",
            "default": false
          },
          "salaryOnly": {
            "title": "Only jobs with salary",
            "type": "boolean",
            "description": "Jobs mode: only postings that publish a salary range.",
            "default": false
          },
          "estimateMissingSalary": {
            "title": "Estimate missing salaries",
            "type": "boolean",
            "description": "Jobs mode: for postings without published pay, add salary_estimate_min / _max / _median / _currency from similar postings that do publish pay (same role and country, and seniority when there are enough samples). Estimates are clearly labelled (salary_estimate_basis) and never replace real salary fields. Free.",
            "default": true
          },
          "earlyCareerOnly": {
            "title": "Only internships, new-grad and junior roles",
            "type": "boolean",
            "description": "Keep only internships, co-ops, new-grad, graduate-programme and junior roles (recruiter and manager roles for those programmes are left out).",
            "default": false
          },
          "aiJobsOnly": {
            "title": "Only AI and machine learning jobs",
            "type": "boolean",
            "description": "Keep only AI, machine learning, LLM, data science and applied research roles (by title and tech stack).",
            "default": false
          },
          "visaSponsorshipOnly": {
            "title": "Only jobs that offer visa sponsorship",
            "type": "boolean",
            "description": "Keep only postings whose text says the company sponsors visas. Postings that say they cannot sponsor are excluded; postings that do not mention it are excluded too.",
            "default": false
          },
          "ycCompaniesOnly": {
            "title": "Only Y Combinator companies",
            "type": "boolean",
            "description": "Keep only jobs at Y Combinator-backed companies (the batch, e.g. Winter 2024, is in company_batch).",
            "default": false
          },
          "includeDescription": {
            "title": "Include description",
            "type": "boolean",
            "description": "Jobs mode: add the plain-text job description (up to ~4,000 characters) to each row.",
            "default": false
          },
          "includeDuplicates": {
            "title": "Include duplicate postings",
            "type": "boolean",
            "description": "Large employers often post the same role several times (same title and location). By default you get one row per company + title + location, with similar_postings telling how many identical postings it stands for. Turn this on to get every posting.",
            "default": false
          },
          "maxPerCompany": {
            "title": "Max jobs per company",
            "minimum": 0,
            "type": "integer",
            "description": "Cap how many jobs one company can contribute (0 = no cap). Useful when a few large employers would otherwise fill the results.",
            "default": 0
          },
          "onlyNewSinceLastRun": {
            "title": "Only jobs not delivered before",
            "type": "boolean",
            "description": "Remember the jobs this search already returned (in your own Apify account) and return only new ones on the next run. Ideal for scheduled alerts: you never pay twice for the same job.",
            "default": false
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 20000,
            "type": "integer",
            "description": "Maximum rows to return (each row is billed). Newest first.",
            "default": 100
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}