{
  "openapi": "3.0.1",
  "info": {
    "title": "Glassdoor Jobs Scraper | Global Job Listings",
    "description": "Scrape public Glassdoor job listings worldwide with keyword, country, location, date, job type, remote, and Easy Apply filters. Get structured job data with descriptions, salaries, employer details, and direct application links.",
    "version": "0.7",
    "x-build-id": "7l2UGlaOx7ppfYR6G"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/datascraperes~glassdoor-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-datascraperes-glassdoor-jobs-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/datascraperes~glassdoor-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-datascraperes-glassdoor-jobs-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/datascraperes~glassdoor-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-datascraperes-glassdoor-jobs-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": [
          "keywords",
          "country"
        ],
        "properties": {
          "keywords": {
            "title": "Search keywords",
            "minItems": 1,
            "maxItems": 50,
            "type": "array",
            "description": "One job search phrase per item. Duplicate phrases are removed before the run.",
            "items": {
              "type": "string",
              "minLength": 1,
              "maxLength": 200
            },
            "default": [
              "software engineer"
            ]
          },
          "country": {
            "title": "Glassdoor country",
            "minLength": 2,
            "maxLength": 80,
            "type": "string",
            "description": "Glassdoor country site for this run. Use a country supported by Glassdoor, such as usa, uk, canada, australia, germany, france, india, brazil, mexico, or spain.",
            "default": "usa"
          },
          "location": {
            "title": "Location (optional)",
            "maxLength": 200,
            "type": "string",
            "description": "Optional city, region, postal code, or free-text location understood by Glassdoor. Leave empty to search the selected country site without a location constraint.",
            "default": null
          },
          "maxItemsPerQuery": {
            "title": "Maximum jobs per keyword",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum unique jobs collected for each keyword, up to 1,000. This is a limit, not a guaranteed result count. When offset is used, offset plus this value cannot exceed 1,000.",
            "default": 10
          },
          "maxTotalItems": {
            "title": "Maximum total jobs per run",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Global output safety limit across all keywords. The Actor stops scheduling more work once this limit is reached.",
            "default": 10
          },
          "offset": {
            "title": "Result offset",
            "minimum": 0,
            "maximum": 900,
            "type": "integer",
            "description": "Skip this many Glassdoor results before writing jobs for every keyword. Use 0 for the first page of results. Offset plus maxItemsPerQuery cannot exceed 1,000.",
            "default": 0
          },
          "datePostedHours": {
            "title": "Posted within hours",
            "minimum": 0,
            "maximum": 720,
            "type": "integer",
            "description": "Return jobs published within this many hours. Use 0 for any age. Glassdoor may return fewer results when this filter is active.",
            "default": 0
          },
          "jobType": {
            "title": "Job type",
            "enum": [
              "any",
              "fullTime",
              "partTime",
              "contract",
              "internship"
            ],
            "type": "string",
            "description": "Optional Glassdoor job-type filter. Use Any to include all types.",
            "default": "any"
          },
          "remoteOnly": {
            "title": "Remote only",
            "type": "boolean",
            "description": "Return only jobs whose public Glassdoor location indicates remote work.",
            "default": false
          },
          "easyApplyOnly": {
            "title": "Glassdoor application only",
            "type": "boolean",
            "description": "Return only jobs marked as eligible for Glassdoor application. Glassdoor may return fewer results when this filter is active.",
            "default": false
          },
          "descriptionFormat": {
            "title": "Description format",
            "enum": [
              "markdown",
              "html",
              "plain"
            ],
            "type": "string",
            "description": "Format for the public job description returned in each Dataset item.",
            "default": "markdown"
          },
          "includeEmails": {
            "title": "Include emails found in descriptions",
            "type": "boolean",
            "description": "Extract public email addresses from job descriptions. Disabled by default; no email is included unless explicitly enabled.",
            "default": false
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}