{
  "openapi": "3.0.1",
  "info": {
    "title": "Career Site Jobs API: 260k Startup Jobs, Updated Daily",
    "description": "Jobs API and job listings API for career site jobs: search 260,000+ open jobs from 8,000+ startup and tech company career sites (Greenhouse, Lever, Ashby) by keyword, location, remote and posting date. Refreshed daily, new-jobs-only mode for alerts. $2 per 1,000 jobs.",
    "version": "0.1",
    "x-build-id": "pWUGydcm9glcvS2Ib"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/redfoxscout~jobs-index/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-redfoxscout-jobs-index",
        "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/redfoxscout~jobs-index/runs": {
      "post": {
        "operationId": "runs-sync-redfoxscout-jobs-index",
        "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/redfoxscout~jobs-index/run-sync": {
      "post": {
        "operationId": "run-sync-redfoxscout-jobs-index",
        "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": {
          "keywords": {
            "title": "Keywords (any)",
            "type": "array",
            "description": "Job title, department or team must contain at least one of these. Leave empty for all jobs. Short terms such as \"AI\" or \"ML\" match whole words only. Set Search in to titles and descriptions to also match the job text.",
            "items": {
              "type": "string"
            }
          },
          "searchIn": {
            "title": "Search keywords in",
            "enum": [
              "titleAndDepartment",
              "title",
              "titleAndDescription"
            ],
            "type": "string",
            "description": "Titles, departments and teams (default), titles only, or titles plus full job descriptions. Description search reads company boards live, so it is slower: see Max boards to read.",
            "default": "titleAndDepartment"
          },
          "excludeKeywords": {
            "title": "Exclude keywords",
            "type": "array",
            "description": "Skip jobs whose title, department or team contains any of these (e.g. intern, senior).",
            "items": {
              "type": "string"
            }
          },
          "excludeTitleKeywords": {
            "title": "Exclude title keywords",
            "type": "array",
            "description": "Skip jobs whose title contains any of these. Department and team are not checked.",
            "items": {
              "type": "string"
            }
          },
          "excludeDescriptionKeywords": {
            "title": "Exclude description keywords",
            "type": "array",
            "description": "Skip jobs whose full description contains any of these (e.g. contract, commission). Reads company boards live: see Max boards to read.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations (any)",
            "type": "array",
            "description": "City, region or country text to match, e.g. London, Germany, New York. \"Remote\" also matches remote-flagged jobs.",
            "items": {
              "type": "string"
            }
          },
          "remoteOnly": {
            "title": "Remote jobs only",
            "type": "boolean",
            "description": "Return only jobs flagged as remote.",
            "default": false
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 0,
            "type": "integer",
            "description": "Only jobs first posted in the last N days. 0 = any date.",
            "default": 7
          },
          "postedAfter": {
            "title": "Posted on or after (date)",
            "type": "string",
            "description": "Only jobs first posted on or after this date, e.g. 2026-10-01. Leave empty to ignore. Combines with Posted within (days)."
          },
          "departments": {
            "title": "Departments (any)",
            "type": "array",
            "description": "Department or team text to match, e.g. Engineering, Sales, Marketing, Data.",
            "items": {
              "type": "string"
            }
          },
          "ats": {
            "title": "Job boards",
            "type": "array",
            "description": "Limit to companies on these applicant tracking systems. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "lever",
                "ashby"
              ],
              "enumTitles": [
                "Greenhouse",
                "Lever",
                "Ashby"
              ]
            }
          },
          "excludeAts": {
            "title": "Exclude job boards",
            "type": "array",
            "description": "Skip companies on these applicant tracking systems.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "lever",
                "ashby"
              ],
              "enumTitles": [
                "Greenhouse",
                "Lever",
                "Ashby"
              ]
            }
          },
          "companies": {
            "title": "Companies (optional)",
            "type": "array",
            "description": "Limit to these companies: board name (e.g. stripe, openai) or company name. Empty = every company in the index.",
            "items": {
              "type": "string"
            }
          },
          "excludeCompanies": {
            "title": "Exclude companies",
            "type": "array",
            "description": "Skip these companies (board name or company name), e.g. recruiting agencies you don't want.",
            "items": {
              "type": "string"
            }
          },
          "hasSalary": {
            "title": "Only jobs with a published salary",
            "type": "boolean",
            "description": "Return only jobs whose company publishes a pay range.",
            "default": false
          },
          "minSalary": {
            "title": "Minimum salary (per year)",
            "minimum": 0,
            "type": "integer",
            "description": "Keep jobs whose top published pay is at least this amount a year (hourly pay x 2,080, monthly x 12). Jobs with no published pay are dropped. 0 = no minimum.",
            "default": 0
          },
          "salaryCurrency": {
            "title": "Salary currency for the minimum",
            "type": "string",
            "description": "Currency used by Minimum salary, e.g. USD, GBP, EUR. Amounts are not converted; postings in other currencies are dropped when a minimum is set.",
            "default": "USD"
          },
          "experienceLevels": {
            "title": "Experience level (any)",
            "type": "array",
            "description": "Level from the job title: intern, entry (junior, associate), mid (no seniority word), senior, lead (lead, principal, staff) or executive (director, VP, head of). Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "intern",
                "entry",
                "mid",
                "senior",
                "lead",
                "executive"
              ],
              "enumTitles": [
                "Intern",
                "Entry",
                "Mid",
                "Senior",
                "Lead",
                "Executive"
              ]
            }
          },
          "workArrangement": {
            "title": "Work arrangement (any)",
            "type": "array",
            "description": "Remote, hybrid or onsite, from the company's own field or the location text. Empty = all.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "onsite"
              ],
              "enumTitles": [
                "Remote",
                "Hybrid",
                "Onsite"
              ]
            }
          },
          "visaSponsorship": {
            "title": "Only jobs that offer visa sponsorship",
            "type": "boolean",
            "description": "Keep only jobs whose description says the company sponsors visas. Reads company boards live, so it is slower: see Max boards to read.",
            "default": false
          },
          "groupBy": {
            "title": "Output rows",
            "enum": [
              "jobs",
              "companies"
            ],
            "type": "string",
            "description": "One row per job, or one row per company with its matching roles, role links, places, departments and skills. Each row is charged the same.",
            "default": "jobs"
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 0,
            "type": "integer",
            "description": "Stop after this many rows: jobs newest first, or companies with the most matching roles first. 0 = no limit. You pay only for rows returned.",
            "default": 1000
          },
          "maxPerCompany": {
            "title": "Max jobs per company",
            "minimum": 0,
            "type": "integer",
            "description": "Keep at most this many jobs per company so a few big employers don't fill your results. 0 = no cap. Not used in companies mode.",
            "default": 0
          },
          "includeDescription": {
            "title": "Include full job descriptions",
            "type": "boolean",
            "description": "Fetch each matched job's full description live from the company's board. Slower; same price. Not used in companies mode.",
            "default": false
          },
          "maxBoardsToScan": {
            "title": "Max boards to read (description checks)",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Used only by description search and description filters. Reads at most this many company boards live, newest postings first (one request per board). Jobs on boards not read are judged by title only.",
            "default": 100
          },
          "onlyNewJobs": {
            "title": "Only new jobs (monitoring mode)",
            "type": "boolean",
            "description": "Return only jobs not returned by a previous run with the same filters. Schedule it daily for alerts. The first run returns everything that matches.",
            "default": false
          },
          "monitorName": {
            "title": "Monitoring name",
            "type": "string",
            "description": "Optional name for the monitoring memory, to keep it when you change filters or share it between schedules."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}