{
  "openapi": "3.0.1",
  "info": {
    "title": "HireHeat Jobs — Career Site Job Listings from 12,000+ Companies",
    "description": "Search open jobs straight from 12,000+ company career sites (Greenhouse, Ashby, Workable, SmartRecruiters, Recruitee; Lever via company domains). Keyword, location, remote and date filters, newest first, salary where posted. Monitor mode returns only new jobs for daily job alerts. $0.002 per job.",
    "version": "0.1",
    "x-build-id": "lxQ6n5MEyWpzJ4C6Y"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/cybermax~career-site-jobs/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-cybermax-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/cybermax~career-site-jobs/runs": {
      "post": {
        "operationId": "runs-sync-cybermax-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/cybermax~career-site-jobs/run-sync": {
      "post": {
        "operationId": "run-sync-cybermax-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": {
          "keywords": {
            "title": "Job title keywords",
            "type": "array",
            "description": "Jobs whose title contains ANY of these words or phrases (whole words, case-insensitive), e.g. \"data engineer\", \"account executive\", \"nurse\". Leave empty to get every job that passes the other filters.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Locations",
            "type": "array",
            "description": "Jobs whose location contains ANY of these, e.g. \"United States\", \"London\", \"Germany\", \"Remote\". \"United States\"/\"US\"/\"USA\", \"UK\" and \"New York\"/\"NYC\" match their common spellings. Leave empty for anywhere.",
            "items": {
              "type": "string"
            }
          },
          "remoteOnly": {
            "title": "Remote jobs only",
            "type": "boolean",
            "description": "Only jobs the employer marks as remote (or whose location says remote/anywhere).",
            "default": false
          },
          "postedWithinDays": {
            "title": "Posted within (days)",
            "minimum": 1,
            "maximum": 3650,
            "type": "integer",
            "description": "Only jobs first posted in the last N days. Jobs without a posted date are left out when this is set."
          },
          "excludeKeywords": {
            "title": "Exclude title keywords",
            "type": "array",
            "description": "Drop jobs whose title contains any of these, e.g. \"intern\", \"principal\", \"manager\".",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "maxJobs": {
            "title": "Max jobs to return",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "Newest jobs first. Each returned job is charged; the run summary tells you how many more matched.",
            "default": 500
          },
          "newOnly": {
            "title": "Monitor: only jobs new since my last run (job alerts)",
            "type": "boolean",
            "description": "Monitor mode. Remembers which jobs this search already returned (in a key-value store named hireheat-jobs-state in your account) and returns only new postings, marked change: \"new\". Already-seen jobs are not returned or charged. Schedule the Actor daily for a job-alert feed. (Also accepted as \"monitor\": true.)",
            "default": false
          },
          "stateKey": {
            "title": "Alert name (monitor state)",
            "type": "string",
            "description": "Optional. Name for the remembered state, so several alert feeds with different filters stay separate. By default the filters themselves are the key. (Also accepted as \"monitorKey\".)"
          },
          "ats": {
            "title": "Applicant tracking systems",
            "type": "array",
            "description": "Which career-site platforms to search. Default: Greenhouse, Ashby, Workable, SmartRecruiters (and Lever for companies you list). Recruitee (1,800 mostly European employers) is opt-in because it rate-limits cloud servers and makes searches slower.",
            "items": {
              "type": "string",
              "enum": [
                "greenhouse",
                "ashby",
                "workable",
                "smartrecruiters",
                "recruitee",
                "lever"
              ],
              "enumTitles": [
                "Greenhouse",
                "Ashby",
                "Workable",
                "SmartRecruiters",
                "Recruitee (opt-in, slower)",
                "Lever (only with Companies)"
              ]
            },
            "default": []
          },
          "companyNames": {
            "title": "Only these companies (names)",
            "type": "array",
            "description": "Optional. Search only directory companies whose name or board slug contains one of these, e.g. \"stripe\", \"notion\".",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "companies": {
            "title": "Only these companies (domains or job-board URLs)",
            "type": "array",
            "description": "Optional. Instead of the built-in directory, search these companies: domains (acme.com) or job-board URLs (https://jobs.lever.co/acme). The Actor finds each company's board itself, including Lever.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "maxBoards": {
            "title": "Max boards to search (sample)",
            "minimum": 1,
            "maximum": 1000000,
            "type": "integer",
            "description": "Optional. Search an evenly spread sample of this many directory boards instead of all 12,000+, for a quick, cheaper test."
          },
          "maxRunSecs": {
            "title": "Time budget (seconds)",
            "minimum": 30,
            "maximum": 3600,
            "type": "integer",
            "description": "The search stops opening new boards after this long and returns everything found so far (biggest employers are read first). The run summary says how many boards were left unread.",
            "default": 300
          },
          "maxConcurrency": {
            "title": "Max parallel requests per platform",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Upper limit on how many boards of one platform are read at once (each platform has its own polite default, 4–32).",
            "default": 32
          },
          "timeoutSecs": {
            "title": "Per-request timeout (seconds)",
            "minimum": 3,
            "maximum": 60,
            "type": "integer",
            "description": "Timeout for each career-site request.",
            "default": 10
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}