{
  "openapi": "3.0.1",
  "info": {
    "title": "💼 Indeed Jobs Scraper — Salary, Rating & Benefits",
    "description": "Search Indeed jobs across 18 countries by job title + city. Get salary (min/max/currency), company rating & reviews, remote signal, job type, benefits list, posted date, and apply link — most Indeed scrapers skip salary+benefits. No login, no API key needed.",
    "version": "1.0",
    "x-build-id": "pZHP1SEmLG7DFD9G6"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/inexhaustible_glass~indeed-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-inexhaustible_glass-indeed-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/inexhaustible_glass~indeed-scraper/runs": {
      "post": {
        "operationId": "runs-sync-inexhaustible_glass-indeed-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/inexhaustible_glass~indeed-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-inexhaustible_glass-indeed-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",
        "required": [
          "query"
        ],
        "properties": {
          "query": {
            "title": "🔍 Job title / keywords",
            "type": "string",
            "description": "What to search for on Indeed — a job title, skill, or keyword phrase. This is the exact same text you'd type into Indeed's own search box. Examples: 'python developer', 'registered nurse', 'marketing manager', 'warehouse associate'."
          },
          "location": {
            "title": "📍 Location",
            "type": "string",
            "description": "City, state, region, or ZIP/postal code to search near. Leave empty to search the whole country. Examples: 'New York, NY', 'Bangalore, Karnataka', 'London', 'Toronto, ON'."
          },
          "country": {
            "title": "🌍 Country",
            "enum": [
              "us",
              "in",
              "uk",
              "ca",
              "au",
              "de",
              "fr",
              "sg",
              "ae",
              "nl",
              "ie",
              "nz",
              "za",
              "ph",
              "mx",
              "br",
              "es",
              "it"
            ],
            "type": "string",
            "description": "Which country's Indeed site to search. Supports United States, India, United Kingdom, Canada, Australia, Germany, France, Singapore, UAE, Netherlands, Ireland, New Zealand, South Africa, Philippines, Mexico, Brazil, Spain, and Italy.",
            "default": "us"
          },
          "maxResults": {
            "title": "🔢 Max results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of job listings to return.",
            "default": 100
          },
          "maxPages": {
            "title": "📄 Max pages",
            "minimum": 1,
            "maximum": 300,
            "type": "integer",
            "description": "Safety cap on how many search-result pages to walk (about 15 jobs per page).",
            "default": 20
          },
          "jobType": {
            "title": "🕐 Job type filter",
            "enum": [
              "",
              "fulltime",
              "parttime",
              "contract",
              "temporary",
              "internship"
            ],
            "type": "string",
            "description": "Restrict results to a specific employment type. Leave empty for all types.",
            "default": ""
          },
          "workArrangement": {
            "title": "🏠 Work arrangement",
            "enum": [
              "",
              "remote"
            ],
            "type": "string",
            "description": "Nudge results toward a work style. Note: this is a best-effort filter on Indeed's side, not a strict guarantee — for a guaranteed-accurate remote-only list, filter the output on the 'remote' field in each record, which is read directly from Indeed's own per-job data.",
            "default": ""
          },
          "remoteOnly": {
            "title": "🏠 Remote jobs only (legacy toggle)",
            "type": "boolean",
            "description": "Same effect as setting Work arrangement to 'Remote-leaning'. Kept for convenience.",
            "default": false
          },
          "datePosted": {
            "title": "📅 Posted within (days)",
            "enum": [
              "",
              "1",
              "3",
              "7",
              "14"
            ],
            "type": "string",
            "description": "Only return jobs posted within this many days. Leave empty for any time. Useful for daily/weekly recurring runs to catch only fresh postings.",
            "default": ""
          },
          "radius": {
            "title": "📏 Search radius (miles)",
            "type": "integer",
            "description": "How far from the location to search, in miles. Only applies when a location is set. Leave empty for Indeed's default radius."
          },
          "proxyConfiguration": {
            "title": "🛡️ Proxy (required — Residential)",
            "type": "object",
            "description": "Indeed requires a residential proxy to load reliably; a datacenter/plain connection gets blocked. Defaults to Apify's Residential proxy group — leave as-is unless you have your own residential proxy to supply.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}