{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn Jobs Search Scraper",
    "description": "Scrape job listings from LinkedIn Jobs. Extract job titles, companies, locations, salary ranges, seniority levels, employment types, and application insights from the world's largest professional network.",
    "version": "0.0",
    "x-build-id": "8hhb2bpjQHQvZ9DDi"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jobsapi~linkedin-jobs-search-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jobsapi-linkedin-jobs-search-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/jobsapi~linkedin-jobs-search-scraper/runs": {
      "post": {
        "operationId": "runs-sync-jobsapi-linkedin-jobs-search-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/jobsapi~linkedin-jobs-search-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-jobsapi-linkedin-jobs-search-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"
        ],
        "properties": {
          "keywords": {
            "title": "Job Keywords",
            "type": "string",
            "description": "Job search keywords (e.g. 'software engineer', 'product manager', 'data scientist')."
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "Job location (e.g. 'United States', 'San Francisco, CA', 'Remote', 'India').",
            "default": "United States"
          },
          "maxJobs": {
            "title": "Max Jobs",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Maximum number of job listings to scrape.",
            "default": 50
          },
          "datePosted": {
            "title": "Date Posted",
            "enum": [
              "anyTime",
              "pastMonth",
              "pastWeek",
              "past24Hours"
            ],
            "type": "string",
            "description": "Filter by how recently the job was posted.",
            "default": "anyTime"
          },
          "jobType": {
            "title": "Job Type",
            "enum": [
              "",
              "F",
              "P",
              "C",
              "T",
              "I",
              "V",
              "O"
            ],
            "type": "string",
            "description": "Filter by employment type.",
            "default": ""
          },
          "experienceLevel": {
            "title": "Experience Level",
            "enum": [
              "",
              "1",
              "2",
              "3",
              "4",
              "5",
              "6"
            ],
            "type": "string",
            "description": "Filter by required experience level.",
            "default": ""
          },
          "remoteFilter": {
            "title": "Remote / On-site",
            "enum": [
              "",
              "1",
              "2",
              "3"
            ],
            "type": "string",
            "description": "Filter by work location type.",
            "default": ""
          },
          "scrapeJobDetails": {
            "title": "Scrape Full Job Details",
            "type": "boolean",
            "description": "Visit each job page to extract full description, requirements, salary, and more. Slower but much more data.",
            "default": true
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Optionally, use Apify Proxy or custom HTTP proxy to avoid IP address-based blocking.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ],
              "apifyProxyCountry": "IN"
            }
          },
          "urls": {
            "title": "Linkedin jobs search URLs",
            "type": "array",
            "description": "Go to [linkedin jobs search page](https://www.linkedin.com/jobs/search/) on incognito window (to access public version), search with required filters and once you are done, copy the full URL from address bar and pass it here. You can pass multiple search URLs",
            "items": {
              "type": "string"
            }
          },
          "scrapeCompany": {
            "title": "Scrape company details",
            "type": "boolean",
            "description": "This will require additional scraping requests for each job record and take longer to scrape",
            "default": true
          },
          "count": {
            "title": "Number of jobs needed",
            "minimum": 10,
            "type": "integer",
            "description": "Limit number of jobs scraped"
          },
          "splitByLocation": {
            "title": "Split search by city locations",
            "type": "boolean",
            "description": "Enable this to split your search by cities within a country. This helps bypass LinkedIn's 1000 job limit per search URL by creating separate searches for each city. This will overwrite the location filter in input search URLs.",
            "default": false
          },
          "splitCountry": {
            "title": "Country to split by",
            "enum": [
              "US",
              "CA",
              "MX",
              "GB",
              "DE",
              "FR",
              "NL",
              "CH",
              "SE",
              "NO",
              "DK",
              "FI",
              "IE",
              "ES",
              "IT",
              "PT",
              "BE",
              "AT",
              "PL",
              "CZ",
              "RO",
              "HU",
              "GR",
              "BG",
              "HR",
              "RS",
              "UA",
              "SK",
              "LT",
              "LV",
              "EE",
              "SI",
              "LU",
              "MT",
              "IS",
              "CY",
              "TR",
              "RU",
              "GE",
              "AM",
              "AZ",
              "BY",
              "BA",
              "XK",
              "MD",
              "ME",
              "MK",
              "AL",
              "MC",
              "AD",
              "LI",
              "SM",
              "VA",
              "IN",
              "CN",
              "JP",
              "KR",
              "SG",
              "HK",
              "TW",
              "TH",
              "VN",
              "ID",
              "MY",
              "PH",
              "BD",
              "PK",
              "LK",
              "NP",
              "MM",
              "KH",
              "KZ",
              "UZ",
              "KG",
              "TJ",
              "TM",
              "MN",
              "BN",
              "MV",
              "BT",
              "LA",
              "TL",
              "AF",
              "KP",
              "AE",
              "SA",
              "IL",
              "QA",
              "KW",
              "BH",
              "OM",
              "JO",
              "LB",
              "IQ",
              "IR",
              "PS",
              "SY",
              "YE",
              "AU",
              "NZ",
              "FJ",
              "PG",
              "WS",
              "TO",
              "VU",
              "SB",
              "KI",
              "MH",
              "FM",
              "PW",
              "NR",
              "TV",
              "BR",
              "AR",
              "CO",
              "CL",
              "PE",
              "EC",
              "UY",
              "VE",
              "BO",
              "PY",
              "GY",
              "SR",
              "CR",
              "PA",
              "GT",
              "DO",
              "PR",
              "JM",
              "TT",
              "HN",
              "SV",
              "NI",
              "BS",
              "BB",
              "CU",
              "HT",
              "BZ",
              "AG",
              "DM",
              "GD",
              "LC",
              "KN",
              "VC",
              "ZA",
              "NG",
              "KE",
              "EG",
              "MA",
              "GH",
              "ET",
              "TZ",
              "RW",
              "UG",
              "SN",
              "TN",
              "CI",
              "CM",
              "DZ",
              "AO",
              "MU",
              "ZM",
              "ZW",
              "MZ",
              "CD",
              "BW",
              "NA",
              "MG",
              "LY",
              "SD",
              "SS",
              "SO",
              "ML",
              "GA",
              "BJ",
              "BF",
              "MW",
              "NE",
              "TD",
              "SL",
              "LR",
              "ER",
              "GM",
              "GN",
              "GW",
              "TG",
              "MR",
              "SZ",
              "LS",
              "DJ",
              "CG",
              "CF",
              "BI",
              "CV",
              "KM",
              "GQ",
              "ST",
              "SC"
            ],
            "type": "string",
            "description": "Select the country whose cities will be used to split the search. Only used when 'Split search by city locations' is enabled. Required to when 'Split search by city locations' is enabled."
          },
          "salaryMin": {
            "title": "Minimum Salary",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum salary filter (in local currency). Only show jobs paying at least this amount."
          },
          "salaryMax": {
            "title": "Maximum Salary",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum salary filter (in local currency). Only show jobs paying at most this amount."
          },
          "educationLevel": {
            "title": "Education Level",
            "enum": [
              "",
              "high_school",
              "associate",
              "bachelor",
              "master",
              "doctorate"
            ],
            "type": "string",
            "description": "Filter by minimum education level required.",
            "default": ""
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}