{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn People Search — 16 Filters ✅ $2/1k, No Login",
    "description": "Search 1B+ professional profiles by job title, seniority, employer, employer size and industry, past employer, city and career length — $2 per 1,000 distinct people, half what the busiest Actor on this shelf charges for the same page. Every person once. Free count preview, 50,000 rows a run.",
    "version": "0.1",
    "x-build-id": "g77ykeDlXiJLDgd0P"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/sputnikapi~people-database-search/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-sputnikapi-people-database-search",
        "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/sputnikapi~people-database-search/runs": {
      "post": {
        "operationId": "runs-sync-sputnikapi-people-database-search",
        "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/sputnikapi~people-database-search/run-sync": {
      "post": {
        "operationId": "run-sync-sputnikapi-people-database-search",
        "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": [
          "countries"
        ],
        "properties": {
          "countries": {
            "title": "Countries",
            "type": "array",
            "description": "Two-letter country codes (us, de, gb...). At most 5 per run.",
            "items": {
              "type": "string"
            }
          },
          "titleKeywords": {
            "title": "Job title keywords",
            "type": "array",
            "description": "Match any of these words in the current job title (founder, cto, \"vice president\"...). Each 3-64 characters, at most 10.",
            "items": {
              "type": "string"
            }
          },
          "headlineKeywords": {
            "title": "Headline keywords",
            "type": "array",
            "description": "Match any of these words in the profile headline. Each 3-64 characters, at most 10.",
            "items": {
              "type": "string"
            }
          },
          "companyDomains": {
            "title": "Employer site domains",
            "type": "array",
            "description": "Keep only people currently working at companies with these site domains. At most 200.",
            "items": {
              "type": "string"
            }
          },
          "seniority": {
            "title": "Seniority",
            "uniqueItems": true,
            "type": "array",
            "description": "Keep only people whose current role falls in these seniority buckets. Buckets are assigned from the job title, so they work across title spellings ('CTO', 'Chief Technology Officer', 'Head of Technology' all land in cxo). At most 6.",
            "items": {
              "type": "string",
              "enum": [
                "cxo",
                "vp",
                "director",
                "manager",
                "founder",
                "other"
              ],
              "enumTitles": [
                "C-level (CxO)",
                "VP",
                "Director",
                "Manager",
                "Founder",
                "Other / individual contributor"
              ]
            }
          },
          "pastTitleKeywords": {
            "title": "Past job title keywords",
            "type": "array",
            "description": "Match any of these words in a PAST job title — people who used to be something. 3-64 characters each, at most 10.",
            "items": {
              "type": "string"
            }
          },
          "excludeTitleKeywords": {
            "title": "Exclude job title keywords",
            "type": "array",
            "description": "Drop people whose current title contains any of these words (example: junior, assistant, intern). 3-64 characters each, at most 10.",
            "items": {
              "type": "string"
            }
          },
          "excludeHeadlineKeywords": {
            "title": "Exclude headline keywords",
            "type": "array",
            "description": "Drop people whose headline contains any of these words (example: student, retired, freelance). 3-64 characters each, at most 10.",
            "items": {
              "type": "string"
            }
          },
          "pastEmployerDomains": {
            "title": "Past employer site domains",
            "type": "array",
            "description": "Keep only people who USED to work at these companies — give site domains (stripe.com), they are resolved to employers for you. Pair with 'left after year' to find recent leavers. At most 20.",
            "items": {
              "type": "string"
            }
          },
          "leftPastEmployerAfterYear": {
            "title": "Left the past employer after year",
            "minimum": 1990,
            "maximum": 2100,
            "type": "integer",
            "description": "Only counts with 'Past employer site domains': keep people whose last day there falls in this year or later."
          },
          "stillThereCounts": {
            "title": "Count people who are still at the past employer",
            "type": "boolean",
            "description": "Off by default. A past employer match means a completed position there — and an internal promotion also closes one, so roughly a third of matches are people who never left (measured: 668 of 2,102 on one employer). By default those are dropped and you get actual leavers; turn this on to keep everyone who ever held a role there.",
            "default": false
          },
          "localityKeywords": {
            "title": "City / locality keywords",
            "type": "array",
            "description": "Narrow inside the chosen countries by city or region text (example: san francisco, greater london). 3-64 characters each, at most 10.",
            "items": {
              "type": "string"
            }
          },
          "employerIndustries": {
            "title": "Employer industries",
            "type": "array",
            "description": "Keep only people whose current employer is in these industries. Values must match exactly as they appear in the companyIndustry column of result rows — examples: Computer Software, Information Technology & Services, Financial Services, Hospital & Health Care, Marketing & Advertising.",
            "items": {
              "type": "string"
            }
          },
          "employeeCountMin": {
            "title": "Employer size — minimum headcount",
            "minimum": 0,
            "type": "integer",
            "description": "Keep only people at employers with at least this many employees."
          },
          "employeeCountMax": {
            "title": "Employer size — maximum headcount",
            "minimum": 1,
            "type": "integer",
            "description": "Keep only people at employers with at most this many employees."
          },
          "connectionsMin": {
            "title": "Minimum connections",
            "minimum": 0,
            "type": "integer",
            "description": "Keep only people with at least this many connections — a rough proxy for an active, established profile."
          },
          "careerStartYearMin": {
            "title": "Career started in or after",
            "minimum": 1950,
            "maximum": 2100,
            "type": "integer",
            "description": "Year of the person's first recorded position. Use with 'career started in or before' to target experience bands (a 2015 start is roughly 10 years of experience)."
          },
          "careerStartYearMax": {
            "title": "Career started in or before",
            "minimum": 1950,
            "maximum": 2100,
            "type": "integer",
            "description": "Year of the person's first recorded position."
          },
          "currentRoleStartedAfterYear": {
            "title": "Started the current role in or after",
            "minimum": 1990,
            "maximum": 2100,
            "type": "integer",
            "description": "Recent job changers: keep only people whose current position began in this year or later."
          },
          "requireCurrentPosition": {
            "title": "Only people with a current position on record",
            "type": "boolean",
            "description": "Drop rows where no current employer is known.",
            "default": false
          },
          "requireEmail": {
            "title": "Only people with a personal email on record",
            "type": "boolean",
            "description": "Keep only rows where a personal email address is known to exist (the address itself is available through the full profile API).",
            "default": false
          },
          "previewOnly": {
            "title": "Free preview: count only",
            "type": "boolean",
            "description": "Answer with the matching-people count instead of result pages. Free — size the segment before you buy pages.",
            "default": true
          },
          "maxResults": {
            "title": "Maximum result rows",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Stop after this many result rows (default 500, maximum 50000). Billing is per page of up to 50 rows.",
            "default": 500
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}