{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn Jobs Scraper",
    "description": "LinkedIn Jobs Scraper pulls job listings from any LinkedIn job search URL. Get title, company, location, salary, posted date, applicant count, seniority, benefits and apply link. Export to JSON, CSV or Excel for recruiting, job market research and lead generation. No login needed.",
    "version": "1.0",
    "x-build-id": "svIkUfxE8LBhfHXKG"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/alpha-scraper~linkedin-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-alpha-scraper-linkedin-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/alpha-scraper~linkedin-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-alpha-scraper-linkedin-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/alpha-scraper~linkedin-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-alpha-scraper-linkedin-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": [
          "urls"
        ],
        "properties": {
          "urls": {
            "title": "LinkedIn Job Search URLs",
            "minItems": 1,
            "type": "array",
            "description": "List of LinkedIn Job search URLs to scrape. You can copy the URL from a LinkedIn job search. Only job search URLs are supported (not single job or company pages). Note: LinkedIn only applies keywords, location/geoId, date posted (f_TPR), company (f_C), Easy Apply (f_AL) and early applicant (f_EA) filters to logged-out visitors. Work type, experience level, job type, salary, industry and sort order are ignored by LinkedIn and will not filter the results.",
            "items": {
              "type": "string"
            }
          },
          "count": {
            "title": "Maximum Number of Jobs",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of jobs to scrape per URL. A single LinkedIn search returns at most about 1,000 jobs; enable 'Split search by city locations' to go beyond that (the limit then applies to the whole URL, not to each city).",
            "default": 5
          },
          "scrapeCompany": {
            "title": "Scrape Company Details",
            "type": "boolean",
            "description": "Whether to fetch additional company details (website, slogan, description, employees, headquarters, address). Each company page is fetched once per run. This is slower and uses more bandwidth.",
            "default": false
          },
          "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. Cities are searched one after another until the 'Maximum Number of Jobs' limit is reached; jobs found in several cities are only returned once.",
            "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 when 'Split search by city locations' is enabled. Countries without a built-in city list are searched as a whole."
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Proxy used for all requests to LinkedIn. LinkedIn rate-limits and blocks data center IPs quickly, so the default is Apify Residential proxy.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}