{
  "openapi": "3.0.1",
  "info": {
    "title": "Greenhouse, Lever & Ashby Jobs Scraper — with Salaries",
    "description": "Jobs from 3,500+ companies on Greenhouse, Lever and Ashby, read from their public JSON APIs so it doesn't break. Pay on nearly half of all roles, pay and remote filters, job descriptions. 125,000+ open roles.",
    "version": "0.5",
    "x-build-id": "UioP94EYLGjx2nPWY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/viridian_layout_ea2~company-career-site-jobs/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-viridian_layout_ea2-company-career-site-jobs",
        "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/viridian_layout_ea2~company-career-site-jobs/runs": {
      "post": {
        "operationId": "runs-sync-viridian_layout_ea2-company-career-site-jobs",
        "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/viridian_layout_ea2~company-career-site-jobs/run-sync": {
      "post": {
        "operationId": "run-sync-viridian_layout_ea2-company-career-site-jobs",
        "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": {
          "useCuratedList": {
            "title": "Use the curated company list",
            "type": "boolean",
            "description": "Fetch every company in our verified registry (166+ companies, ~14,000 open roles). Turn this off if you want to name specific companies below.",
            "default": true
          },
          "companies": {
            "title": "Specific companies (optional)",
            "type": "array",
            "description": "Companies to fetch, in any of these forms: names (\"stripe\"), job-board links (\"https://jobs.lever.co/veeva\"), or objects ({\"slug\": \"ramp\", \"ats\": \"ashby\"}). Leave the ATS out and we'll work out which system each company uses. Overrides the curated list."
          },
          "maxJobs": {
            "title": "Maximum jobs to return",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Hard cap on results. This is your main cost control — you are charged per job returned.",
            "default": 1000
          },
          "remoteOnly": {
            "title": "Remote roles only",
            "type": "boolean",
            "description": "Only return roles that are remote or remote-eligible. Note: some ATSs (notably Ashby) flag most roles 'remote-eligible' while still listing an office location. Every record carries both `remote` (the location text actually says remote) and `remoteEligible` (the company's own flag), so you can filter more strictly yourself.",
            "default": false
          },
          "titleKeywords": {
            "title": "Title keywords",
            "type": "array",
            "description": "Only roles whose title contains one of these (case-insensitive). e.g. \"engineer\", \"designer\".",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "locationKeywords": {
            "title": "Location keywords",
            "type": "array",
            "description": "Only roles whose location contains one of these (case-insensitive). e.g. \"London\", \"New York\".",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 1,
            "maximum": 365,
            "type": "integer",
            "description": "Only roles posted in the last N days. Roles with no posting date are kept."
          },
          "onlyNewSinceLastRun": {
            "title": "Only jobs new since this search last ran",
            "type": "boolean",
            "description": "For scheduled runs: skip every job this same search has already delivered, so you never pay for the same job twice. The first run returns all current matches. Jobs cut off by the maximum are still delivered next time. The Actor remembers each search in a key-value store named <code>company-career-site-jobs-monitor</code> in your account; changing any filter or company starts a new history.",
            "default": false
          },
          "monitorName": {
            "title": "Search name (optional)",
            "type": "string",
            "description": "Only needed to keep two searches with identical filters separate, e.g. one per client."
          },
          "onlyWithSalary": {
            "title": "Only jobs that state pay",
            "type": "boolean",
            "description": "Only roles that state pay: Ashby's own pay data where the company publishes it, otherwise a range or rate read from the description. US pay-transparency laws make this common.",
            "default": false
          },
          "minAnnualSalary": {
            "title": "Minimum yearly pay",
            "minimum": 0,
            "type": "integer",
            "description": "Only roles whose pay range reaches at least this much per year, in the job's own currency. Hourly and monthly pay are converted (hour × 2,080, month × 12). Implies 'only jobs that state pay'."
          },
          "salaryCurrencies": {
            "title": "Pay currencies",
            "type": "array",
            "description": "Only roles paying in these currencies, e.g. \"USD\", \"GBP\", \"EUR\". Implies 'only jobs that state pay'.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "includeDescription": {
            "title": "Include job description",
            "type": "boolean",
            "description": "Turn off for a much smaller, faster dataset when you only need titles, locations, and links.",
            "default": true
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}