{
  "openapi": "3.0.1",
  "info": {
    "title": "ZipRecruiter Scraper - US Jobs and Salaries",
    "description": "Search US ZipRecruiter jobs by keyword and location or filtered search URLs. Get company, posting date, visible salary ranges with annualized pay, benefits and remote flags as structured rows for recruiters, staffing teams and salary research.",
    "version": "0.2",
    "x-build-id": "H7f2CUvvIEk8sUQgY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/s-r~ziprecruiter-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-s-r-ziprecruiter-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/s-r~ziprecruiter-scraper/runs": {
      "post": {
        "operationId": "runs-sync-s-r-ziprecruiter-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/s-r~ziprecruiter-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-s-r-ziprecruiter-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": {
          "search": {
            "title": "Search",
            "minLength": 1,
            "maxLength": 1000,
            "type": "string",
            "description": "Job search keywords. Use with a nonempty US location; alternative names are search, query, keyword and searchJobKeyword."
          },
          "query": {
            "title": "Query",
            "minLength": 1,
            "maxLength": 1000,
            "type": "string",
            "description": "Job search keywords. Use with a nonempty US location; alternative names are search, query, keyword and searchJobKeyword."
          },
          "keyword": {
            "title": "Keyword",
            "minLength": 1,
            "maxLength": 1000,
            "type": "string",
            "description": "Job search keywords. Use with a nonempty US location; alternative names are search, query, keyword and searchJobKeyword."
          },
          "searchJobKeyword": {
            "title": "Searchjobkeyword",
            "minLength": 1,
            "maxLength": 1000,
            "type": "string",
            "description": "Job search keywords. Use with a nonempty US location; alternative names are search, query, keyword and searchJobKeyword."
          },
          "location": {
            "title": "Location",
            "minLength": 1,
            "maxLength": 1000,
            "type": "string",
            "description": "US city, state or ZIP code, or Remote for a nationwide remote search. Required with a keyword."
          },
          "searchLocation": {
            "title": "Searchlocation",
            "minLength": 1,
            "maxLength": 1000,
            "type": "string",
            "description": "US city, state or ZIP code, or Remote for a nationwide remote search. Required with a keyword."
          },
          "start_urls": {
            "title": "Start urls",
            "type": "array",
            "description": "One to twenty HTTPS www.ziprecruiter.com/jobs-search URLs with search and location. URL filters are preserved; page is reset to 1.",
            "items": {
              "type": "string"
            }
          },
          "startUrls": {
            "title": "Starturls",
            "type": "array",
            "description": "Alias of start_urls; accepts strings or objects containing a URL.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "limit": {
            "title": "Limit",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Total unique jobs across all searches and cursor requests, from 1 to 1000. Default 50. limit takes precedence over aliases."
          },
          "maxItems": {
            "title": "Maxitems",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Total unique jobs across all searches and cursor requests, from 1 to 1000. Default 50. limit takes precedence over aliases."
          },
          "max_items": {
            "title": "Max items",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Total unique jobs across all searches and cursor requests, from 1 to 1000. Default 50. limit takes precedence over aliases."
          },
          "days": {
            "title": "Days",
            "minimum": 1,
            "maximum": 30,
            "type": "integer",
            "description": "Only jobs refreshed within this many days. Applies to keyword searches; with URL input put filters in the URL. Allowed values: 1, 3, 5, 10, 30."
          },
          "daysPosted": {
            "title": "Daysposted",
            "minimum": 1,
            "maximum": 30,
            "type": "integer",
            "description": "Only jobs refreshed within this many days. Applies to keyword searches; with URL input put filters in the URL. Allowed values: 1, 3, 5, 10, 30."
          },
          "radius": {
            "title": "Radius",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Search radius in miles, from 1 to 500. Applies to keyword searches."
          },
          "radiusMiles": {
            "title": "Radiusmiles",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Search radius in miles, from 1 to 500. Applies to keyword searches."
          },
          "remote_only": {
            "title": "Remote only",
            "type": "boolean",
            "description": "Restrict the keyword search to remote jobs. Default false; remote_optional jobs are also classified as remote."
          },
          "remoteOnly": {
            "title": "Remoteonly",
            "type": "boolean",
            "description": "Restrict the keyword search to remote jobs. Default false; remote_optional jobs are also classified as remote."
          },
          "employment_type": {
            "title": "Employment type",
            "enum": [
              "full_time"
            ],
            "type": "string",
            "description": "Restrict a keyword search to full-time employment. Additional employment filters can be supplied in search URLs."
          },
          "cursor": {
            "title": "Cursor",
            "maxLength": 150000,
            "type": "string",
            "description": "Use next_cursor with the same original input and limit to resume a large request. Apify follows cursors automatically."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}