{
  "openapi": "3.0.1",
  "info": {
    "title": "Job Scraper - LinkedIn, Indeed, Glassdoor, Google Jobs & More",
    "description": "Search LinkedIn, Indeed, Glassdoor, Bayt, Naukri and BDJobs at once and get one de-duplicated spreadsheet of jobs: salaries, company profiles, apply links and full descriptions. Filter by company, radius, date and job type. Works with AI agents.",
    "version": "1.0",
    "x-build-id": "DnilczgbGmdoJgrsz"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/vero-api~jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-vero-api-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/vero-api~jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-vero-api-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/vero-api~jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-vero-api-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",
        "properties": {
          "searchTerm": {
            "title": "Search keywords",
            "type": "string",
            "description": "Enter the job title, skill, or company you want, just as you would type it into a job board, for example software engineer or registered nurse. To run several searches at once, use Multiple search terms instead."
          },
          "sites": {
            "title": "Job boards",
            "type": "array",
            "description": "Pick the job boards to search. LinkedIn, Indeed and Glassdoor cover most countries. Bayt covers the Middle East, Naukri the Gulf and Middle East, and BDJobs Bangladesh and its overseas job markets.",
            "items": {
              "type": "string",
              "enum": [
                "linkedin",
                "indeed",
                "glassdoor",
                "bayt",
                "naukri",
                "bdjobs"
              ],
              "enumTitles": [
                "LinkedIn",
                "Indeed",
                "Glassdoor",
                "Bayt",
                "Naukri",
                "BDJobs"
              ]
            },
            "default": [
              "linkedin",
              "indeed",
              "glassdoor"
            ]
          },
          "country": {
            "title": "Country",
            "enum": [
              "dz",
              "ar",
              "au",
              "at",
              "bh",
              "bd",
              "be",
              "br",
              "bg",
              "ca",
              "cl",
              "cn",
              "co",
              "cr",
              "hr",
              "cy",
              "cz",
              "dk",
              "ec",
              "eg",
              "ee",
              "fi",
              "fr",
              "de",
              "gr",
              "hk",
              "hu",
              "in",
              "id",
              "iq",
              "ie",
              "il",
              "it",
              "jp",
              "jo",
              "kw",
              "lv",
              "lb",
              "ly",
              "lt",
              "lu",
              "my",
              "mt",
              "mx",
              "ma",
              "nl",
              "nz",
              "ng",
              "no",
              "om",
              "pk",
              "ps",
              "pa",
              "pe",
              "ph",
              "pl",
              "pt",
              "qa",
              "ro",
              "sa",
              "sg",
              "sk",
              "si",
              "so",
              "za",
              "kr",
              "es",
              "se",
              "ch",
              "tw",
              "th",
              "tr",
              "ua",
              "ae",
              "gb",
              "us",
              "uy",
              "ve",
              "vn",
              "ye"
            ],
            "type": "string",
            "description": "Pick the country to search. LinkedIn, Indeed and Glassdoor search the whole country when Location is empty. Bayt and Naukri cover the Gulf and the Middle East best.",
            "default": "us"
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "Enter a city, state or region inside the selected Country, for example Austin, TX or London. Leave empty to search the whole country. To search several places at once, use Multiple locations instead."
          },
          "maxResults": {
            "title": "Max results per board",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Set how many jobs you want from each board for each search (1 to 1000). Your total is about this number times the boards, search terms and locations you pick.",
            "default": 20
          },
          "searchTerms": {
            "title": "Multiple search terms",
            "maxItems": 5,
            "type": "array",
            "description": "Add up to 5 searches to run in one go, for example AI engineer and machine learning engineer. Results are merged, and every job shows the term that found it. Leave empty to use Search keywords.",
            "items": {
              "type": "string"
            }
          },
          "locations": {
            "title": "Multiple locations",
            "maxItems": 10,
            "type": "array",
            "description": "Add up to 10 cities or regions to search in one run, for example Austin, TX and Dallas, TX. Leave empty to use Location.",
            "items": {
              "type": "string"
            }
          },
          "hoursOld": {
            "title": "Posted within (hours)",
            "minimum": 1,
            "type": "integer",
            "description": "Enter a number of hours to get only fresh jobs on LinkedIn, Indeed, Glassdoor and Bayt, for example 24 for the last day or 168 for the last week. Leave empty for any posting date."
          },
          "jobType": {
            "title": "Job type",
            "enum": [
              "",
              "fulltime",
              "parttime",
              "contract",
              "internship",
              "temporary"
            ],
            "type": "string",
            "description": "Pick an employment type to get only those jobs on LinkedIn, Indeed, Glassdoor, Bayt and BDJobs. Leave as Any to get every type.",
            "default": ""
          },
          "distance": {
            "title": "Search radius (miles)",
            "minimum": 0,
            "maximum": 200,
            "type": "integer",
            "description": "How far around your Location to look on LinkedIn and Indeed, in miles. Use 0 for the city itself only.",
            "default": 50
          },
          "isRemote": {
            "title": "Remote jobs only",
            "type": "boolean",
            "description": "Turn on to get only remote jobs.",
            "default": false
          },
          "easyApply": {
            "title": "Easy apply only",
            "type": "boolean",
            "description": "Turn on to get only jobs you can apply to directly on the job board (LinkedIn, Indeed, Glassdoor, Naukri and Bayt).",
            "default": false
          },
          "linkedinCompanyIds": {
            "title": "LinkedIn company IDs",
            "type": "array",
            "description": "Get LinkedIn jobs from these companies only, for example 1441 for Google and 2382910 for Amazon Web Services. Find a company's ID in the link of its jobs page on LinkedIn (f_C=1441). Leave empty to search every company.",
            "items": {
              "type": "string"
            }
          },
          "bdjobsCountry": {
            "title": "BDJobs market",
            "enum": [
              "bd",
              "sa",
              "ae",
              "qa",
              "kw",
              "om",
              "bh",
              "my",
              "sg",
              "jp",
              "kr",
              "cn",
              "hk",
              "in",
              "pk",
              "it",
              "ro",
              "pl",
              "gb",
              "us",
              "ca",
              "au"
            ],
            "type": "string",
            "description": "Pick which BDJobs listings to get when BDJobs is selected: jobs in Bangladesh, or jobs BDJobs lists for one of its overseas markets.",
            "default": "bd"
          },
          "fetchExtraJobInfo": {
            "title": "Full job details",
            "type": "boolean",
            "description": "Keep on to get the full description and richer details for every job: seniority, employment type, job function, skills, benefits, apply links and company profile (industry, size, revenue, website). Turn off for faster runs with search-card data only.",
            "default": true
          },
          "descriptionFormat": {
            "title": "Description format",
            "enum": [
              "markdown",
              "html",
              "text"
            ],
            "type": "string",
            "description": "Pick how job descriptions are written: Markdown is clean and readable, HTML keeps the original styling, and Plain text has no formatting at all.",
            "default": "markdown"
          },
          "enforceAnnualSalary": {
            "title": "Normalize salaries to annual",
            "type": "boolean",
            "description": "Turn on to convert every salary to a yearly figure (hourly x 2080, monthly x 12 and so on), so pay is easy to compare across jobs.",
            "default": false
          },
          "deduplicate": {
            "title": "Remove duplicates",
            "type": "boolean",
            "description": "Keep on to get each role once, even when it is posted more than once or on several boards (same title, company and city). The first copy found is kept.",
            "default": true
          },
          "offset": {
            "title": "Results offset",
            "minimum": 0,
            "type": "integer",
            "description": "Enter a number of results to skip, to continue where an earlier run stopped. Works on LinkedIn, Glassdoor, Naukri, BDJobs and Bayt."
          },
          "proxy": {
            "title": "Proxy",
            "type": "object",
            "description": "Residential proxies are selected by default and give the most reliable LinkedIn and Indeed results. You can pick another proxy group or use your own proxy URLs.",
            "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
                  },
                  "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}