{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn Jobs Scraper",
    "description": "Scrape LinkedIn jobs by title, location, company or search link. Full descriptions, salary, applicants, seniority, job type, industries, job poster and optional company profiles. Every filter works, incl. remote, experience and salary. Beyond 1,000 jobs per search. No login.",
    "version": "0.0",
    "x-build-id": "UXO7pXx46USWrfWRZ"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/calm_builder~linkedin-jobs-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-calm_builder-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/calm_builder~linkedin-jobs-scraper/runs": {
      "post": {
        "operationId": "runs-sync-calm_builder-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/calm_builder~linkedin-jobs-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-calm_builder-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",
        "properties": {
          "position": {
            "title": "Job title or keywords",
            "type": "string",
            "description": "What to search for, as you would type it into LinkedIn's job search. Examples: `data analyst`, `registered nurse`, `python developer`."
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "A country, state, region or city, for example `United States`, `California`, `London` or `Berlin`. Leave empty to search worldwide."
          },
          "maxJobs": {
            "title": "Max jobs per search",
            "minimum": 1,
            "maximum": 100000,
            "type": "integer",
            "description": "How many jobs to save for each search. Large searches go well past the 1,000 jobs LinkedIn normally shows for one search. Only jobs that match all your filters count.",
            "default": 100
          },
          "datePosted": {
            "title": "Date posted",
            "enum": [
              "any",
              "1h",
              "24h",
              "3d",
              "week",
              "2weeks",
              "month"
            ],
            "type": "string",
            "description": "Only jobs posted within this time.",
            "default": "any"
          },
          "postedWithinHours": {
            "title": "Posted within (hours)",
            "minimum": 1,
            "maximum": 8760,
            "type": "integer",
            "description": "Exact time window in hours, for example `6` for jobs posted in the last 6 hours. Overrides **Date posted**."
          },
          "experienceLevels": {
            "title": "Experience level",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep only jobs with these seniority levels. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "internship",
                "entry",
                "associate",
                "mid_senior",
                "director",
                "executive"
              ],
              "enumTitles": [
                "Internship",
                "Entry level",
                "Associate",
                "Mid-Senior level",
                "Director",
                "Executive"
              ]
            }
          },
          "jobTypes": {
            "title": "Job type",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep only these employment types. Leave empty for all.",
            "items": {
              "type": "string",
              "enum": [
                "full_time",
                "part_time",
                "contract",
                "temporary",
                "internship",
                "volunteer",
                "other"
              ],
              "enumTitles": [
                "Full-time",
                "Part-time",
                "Contract",
                "Temporary",
                "Internship",
                "Volunteer",
                "Other"
              ]
            }
          },
          "workplace": {
            "title": "Remote, hybrid or on-site",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep only jobs that say they are remote, hybrid or on-site in the title, location or job description. Jobs that do not say are left out when this is set.",
            "items": {
              "type": "string",
              "enum": [
                "remote",
                "hybrid",
                "onsite"
              ],
              "enumTitles": [
                "Remote",
                "Hybrid",
                "On-site"
              ]
            }
          },
          "industries": {
            "title": "Industries",
            "type": "array",
            "description": "Keep only jobs whose industry contains one of these words, for example `Software Development`, `Hospitals`, `Financial Services`.",
            "items": {
              "type": "string"
            }
          },
          "jobFunctions": {
            "title": "Job functions",
            "type": "array",
            "description": "Keep only jobs whose job function contains one of these words, for example `Engineering`, `Sales`, `Information Technology`. LinkedIn does not list a function for every job; those are left out when this is set.",
            "items": {
              "type": "string"
            }
          },
          "salaryMin": {
            "title": "Minimum yearly salary",
            "minimum": 0,
            "type": "integer",
            "description": "Leave out jobs whose listed pay is below this amount per year (hourly and monthly pay are converted). Jobs without a listed salary are kept unless the next option is on."
          },
          "listedSalaryOnly": {
            "title": "Only jobs that show a salary",
            "type": "boolean",
            "description": "Keep only jobs where the employer lists the pay.",
            "default": false
          },
          "easyApply": {
            "title": "Easy Apply only",
            "type": "boolean",
            "description": "Only jobs you can apply to directly on LinkedIn.",
            "default": false
          },
          "earlyApplicant": {
            "title": "Fewer than 25 applicants",
            "type": "boolean",
            "description": "Only jobs where you would be among the first 25 applicants.",
            "default": false
          },
          "radius": {
            "title": "Distance from location",
            "enum": [
              "0",
              "5",
              "10",
              "25",
              "50",
              "100"
            ],
            "type": "string",
            "description": "Include jobs this far from a city.",
            "default": "0"
          },
          "companies": {
            "title": "Companies",
            "type": "array",
            "description": "Only jobs at these companies. Use names (`Google`), LinkedIn company links or company IDs. Leave **Job title** empty to get every open job at these companies.",
            "items": {
              "type": "string"
            }
          },
          "excludeCompanies": {
            "title": "Exclude companies",
            "type": "array",
            "description": "Leave out jobs from these companies (exact company names as shown on LinkedIn, for example staffing agencies).",
            "items": {
              "type": "string"
            }
          },
          "companyDetails": {
            "title": "Company details ($)",
            "type": "boolean",
            "description": "Add the hiring company's profile to each job: description, industry, size, employees, followers, headquarters, website, founded year and specialties. Each company is charged once per run, however many of its jobs you get.",
            "default": false
          },
          "startUrls": {
            "title": "LinkedIn links",
            "type": "array",
            "description": "Job search links copied from your browser, logged in or not, for example `https://www.linkedin.com/jobs/search?keywords=nurse&location=Texas&f_TPR=r86400`, or job links such as `https://www.linkedin.com/jobs/view/4457091981`. The filters inside a link are used for that link only.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "keywordSearches": {
            "title": "More searches",
            "type": "array",
            "description": "Extra job title + location pairs. Each one uses the filters above and gets its own **Max jobs per search**.",
            "items": {
              "type": "object",
              "properties": {
                "keywords": {
                  "title": "Job title or keywords",
                  "type": "string",
                  "description": "What to search for."
                },
                "location": {
                  "title": "Location",
                  "type": "string",
                  "description": "Country, state or city (optional)."
                }
              }
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}