{
  "openapi": "3.0.1",
  "info": {
    "title": "Linkedin Smart Talent Scraper | Recruitment Tool",
    "description": "Collect LinkedIn people-search summaries and optionally visible profile details using your session cookie. Deduplicates profiles and reports partial results and access failures.",
    "version": "0.0",
    "x-build-id": "t4pa0EWuMNbzlceXz"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/coolinbex~linkedin-talent-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-coolinbex-linkedin-talent-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/coolinbex~linkedin-talent-scraper/runs": {
      "post": {
        "operationId": "runs-sync-coolinbex-linkedin-talent-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/coolinbex~linkedin-talent-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-coolinbex-linkedin-talent-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": [
          "liAtCookie",
          "searchQueries"
        ],
        "properties": {
          "liAtCookie": {
            "title": "LinkedIn session cookie (li_at)",
            "type": "string",
            "description": "Paste only the li_at cookie value from DevTools > Application > Cookies > https://www.linkedin.com. This is a sensitive session credential, stored encrypted by Apify. Never share it in examples or logs."
          },
          "searchQueries": {
            "title": "Search queries",
            "minItems": 1,
            "maxItems": 100,
            "type": "array",
            "description": "Add at least one search. Text fields are combined as keywords, not exact title, company, or location filters. For exact filters, paste a people-search URL copied from LinkedIn. A direct URL overrides the text fields; pagination starts from the first page.",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "properties": {
                "keywords": {
                  "type": "string",
                  "title": "Keywords",
                  "description": "Words or Boolean search text to search for.",
                  "editor": "textfield"
                },
                "title": {
                  "type": "string",
                  "title": "Job title keywords",
                  "description": "Added to keywords; does not enforce an exact job title filter.",
                  "editor": "textfield"
                },
                "company": {
                  "type": "string",
                  "title": "Company keywords",
                  "description": "Added to keywords; does not enforce current employer.",
                  "editor": "textfield"
                },
                "location": {
                  "type": "string",
                  "title": "Location keywords",
                  "description": "Added to keywords; does not enforce a geographic filter.",
                  "editor": "textfield"
                },
                "directSearchUrl": {
                  "type": "string",
                  "title": "LinkedIn people-search URL",
                  "description": "Optional HTTPS LinkedIn /search/results/people/ URL. Preserves your filters and overrides text fields.",
                  "editor": "textfield",
                  "pattern": "^$|^https://(?:(?:www|[a-z]{2})\\.)?linkedin\\.com/search/results/people/?(?:[?#].*)?$"
                }
              }
            }
          },
          "maxProfiles": {
            "title": "Max profiles to return",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Hard cap on total number of unique profiles collected across all search queries combined.",
            "default": 100
          },
          "scrapeFullProfiles": {
            "title": "Collect visible profile details",
            "type": "boolean",
            "description": "Visit profiles to collect visible About, Experience, Education, Skills and connection count. Adds requests and proxy usage. Does not expand every section or guarantee complete history or skills. Search summaries are retained if a visit fails.",
            "default": false
          },
          "maxProfilesToEnrich": {
            "title": "Max profiles to enrich (if full-profile scraping is on)",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum unique profiles to visit for details, also bounded by maxProfiles. Set 0 for summaries only. Ignored when profile details are disabled.",
            "default": 50
          },
          "minDelayMs": {
            "title": "Minimum delay between requests (ms)",
            "minimum": 500,
            "maximum": 60000,
            "type": "integer",
            "description": "Minimum randomized wait before each navigation, including retries and profile visits. Navigation starts are spaced across concurrent pages.",
            "default": 2500
          },
          "maxDelayMs": {
            "title": "Maximum delay between requests (ms)",
            "minimum": 500,
            "maximum": 60000,
            "type": "integer",
            "description": "Maximum randomized wait before navigation; must be at least minDelayMs.",
            "default": 6000
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 5,
            "type": "integer",
            "description": "Maximum pages running at once. The default is 1; increasing it uses more memory and can trigger restrictions.",
            "default": 1
          },
          "maxRequestRetries": {
            "title": "Max retries per request",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "Retries after a transient navigation or parsing failure. Login and verification challenges stop the run and require account attention.",
            "default": 3
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Defaults to Apify residential proxy, which requires access and incurs proxy charges. You can supply your own proxy URLs or disable proxy use. A proxy cannot guarantee successful access.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          },
          "maxPagesPerQuery": {
            "title": "Maximum pages per search",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Limits search pagination per query, including pages with overlapping profiles. Lower this to control run time and proxy use.",
            "default": 10
          },
          "maxRunTimeSecs": {
            "title": "Maximum run time (seconds)",
            "minimum": 60,
            "maximum": 86400,
            "type": "integer",
            "description": "Stops the crawler and saves collected profiles before the Apify run timeout. Keep the Apify platform timeout at least 30 seconds higher than this value.",
            "default": 240
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}