{
  "openapi": "3.0.1",
  "info": {
    "title": "⚡️Rapid Linkedin Jobs Scraper",
    "description": "🔥$0.10/1K jobs. Advanced filters, 23 data fields, JSON/CSV/Excel export, cron schedules, webhooks and MCP for AI agents. Scrape Linkedin job postings without login cookies. Cost Effective Linkedin Jobs API for recruiting, job boards, lead generation and AI agents.",
    "version": "1.2",
    "x-build-id": "zKI30e6EUqszl5rS0"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/worldunboxer~rapid-linkedin-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-worldunboxer-rapid-linkedin-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/worldunboxer~rapid-linkedin-scraper/runs": {
      "post": {
        "operationId": "runs-sync-worldunboxer-rapid-linkedin-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/worldunboxer~rapid-linkedin-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-worldunboxer-rapid-linkedin-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": {
          "jobs_titles": {
            "title": "Job Titles / Keywords",
            "type": "array",
            "description": "Job titles to search for (e.g., 'Software Engineer', 'Data Scientist'). The scraper runs a search for each title and merges the results.",
            "items": {
              "type": "string"
            }
          },
          "location": {
            "title": "Location",
            "type": "string",
            "description": "Enter a broad location (e.g., 'Worldwide', 'Europe', 'Canada') or a full search string (e.g., 'San Francisco, CA')."
          },
          "include_job_details": {
            "title": "Include Full Job Details",
            "type": "boolean",
            "description": "Open each job's page to add the full description, seniority, employment type, industries, applicants, salary and Easy Apply. Turn it off for a cheaper and faster run with listing data only: job ID & link, title, company name/URL/logo, location, posted date and hiring badge.\n\nSee the [Output Fields](https://apify.com/worldunboxer/rapid-linkedin-scraper#-output-fields) section of the README for the full list.",
            "default": true
          },
          "posted_within": {
            "title": "Job Posting Time",
            "enum": [
              "Any Time",
              "Past 24 hours",
              "Past Week",
              "Past Month"
            ],
            "type": "string",
            "description": "Only return jobs posted within this period. To use a custom time window, leave this field unset."
          },
          "easy_apply": {
            "title": "Easy Apply Only",
            "type": "boolean",
            "description": "Filter for jobs with simplified application",
            "default": false
          },
          "early_applicant_only": {
            "title": "Early Applicant Only",
            "type": "boolean",
            "description": "Only jobs LinkedIn marks \"Be an early applicant\"",
            "default": false
          },
          "include_contact_details": {
            "title": "Include Contact Details",
            "type": "boolean",
            "description": "Requires Include Full Job Details. Also return contact details the poster wrote in the job description. These are personal data: enable only if you have a lawful basis under the laws that apply to you. See Legal and compliance in the README.",
            "default": false
          },
          "jobs_entries": {
            "title": "Number of Jobs Entries you want",
            "minimum": 10,
            "maximum": 100000,
            "type": "integer",
            "description": "Number of jobs you want to scrape.",
            "default": 1000
          },
          "company_names": {
            "title": "Company Names",
            "type": "array",
            "description": "Only search for these companies",
            "items": {
              "type": "string"
            }
          },
          "cities": {
            "title": "Cities",
            "type": "array",
            "description": "Optional. List specific cities to search (e.g., 'London', 'Manchester'). The scraper searches each city on its own, without the 'Location' field. If several places share a name, add the state or country (e.g., 'Birmingham, Alabama').",
            "items": {
              "type": "string"
            }
          },
          "distance": {
            "title": "Distance (miles)",
            "minimum": 1,
            "type": "integer",
            "description": "Optional. Search radius in miles around the Location, Cities or Location IDs (e.g., 5, 25, 100). Leave empty for LinkedIn's default (25 miles)."
          },
          "search_urls": {
            "title": "Search URLs",
            "type": "array",
            "description": "Optional. Paste LinkedIn job search URLs (e.g. 'https://www.linkedin.com/jobs/search-results/?keywords=Software%20Engineer&geoId=101389470') instead of filling in the search fields. Include Full Job Details, Number of Jobs, Jobs per URL and Exclude Job IDs still apply.",
            "items": {
              "type": "string"
            }
          },
          "jobs_per_url": {
            "title": "Jobs per URL",
            "minimum": 10,
            "maximum": 100000,
            "type": "integer",
            "description": "Optional. Used with Search URLs: the most unique jobs to take from each address. Number of Jobs Entries still caps the whole run. Leave empty for no per-address limit."
          },
          "geo_ids": {
            "title": "Location IDs",
            "type": "array",
            "description": "Optional. LinkedIn location IDs (numbers, e.g. '101389470') to search directly, without looking up a name. An ID can be a city, region or country. Combined with 'Cities': the places from both lists are searched, each on its own. A location's ID is the number after 'geoId=' in the address of a LinkedIn jobs search for that location.",
            "items": {
              "type": "string"
            }
          },
          "company_ids": {
            "title": "Company IDs",
            "type": "array",
            "description": "Optional. LinkedIn company IDs (numbers, e.g. '1337') to search directly, without looking up a name. Combined with 'Company Names': the companies from both lists are searched. A company's ID is the number after 'f_C=' in the address of a LinkedIn jobs search filtered by that company.",
            "items": {
              "type": "string"
            }
          },
          "exclude_job_ids": {
            "title": "Exclude Job IDs",
            "type": "array",
            "description": "Optional. LinkedIn job IDs (numbers, e.g. '4419969671') to leave out. These jobs are skipped entirely: not returned, and not charged. Pass the job IDs of a previous run to receive only new jobs.",
            "items": {
              "type": "string"
            }
          },
          "job_post_time": {
            "title": "Custom Job Post Time",
            "type": "string",
            "description": "Optional custom posting window, used only when 'Job Posting Time' is not set.\n\nEnter the time in seconds as a positive whole number (e.g., 86400 for 1 day, 172800 for 2 days)."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}