{
  "openapi": "3.0.1",
  "info": {
    "title": "LinkedIn Company About Scraper: Keyword Search & Advance Filter",
    "description": "LinkedIn Company About Scraper extracts the full About section from any public LinkedIn company page. Collect overview text, mission, specialties, size, and key details. Ideal for market research, lead generation, competitive analysis, and workflows needing structured company insight.",
    "version": "0.1",
    "x-build-id": "ITh5WFPdk2JMUKKGD"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/api-empire~linkedin-company-about-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-api-empire-linkedin-company-about-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/api-empire~linkedin-company-about-scraper/runs": {
      "post": {
        "operationId": "runs-sync-api-empire-linkedin-company-about-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/api-empire~linkedin-company-about-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-api-empire-linkedin-company-about-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": {
          "discoveryQueries": {
            "title": "🔎 Keyword / Company Name Search",
            "type": "array",
            "description": "List company names, brand names, or industry/keyword terms (e.g. 'Tesla', 'fintech startups', 'renewable energy company'). Each query is searched and auto-resolved to real LinkedIn company page(s), which are then scraped the same way as a direct URL. Example: 'electric vehicle manufacturer' + maxCompaniesPerQuery=3 -> up to 3 matching LinkedIn company pages.",
            "items": {
              "type": "string"
            }
          },
          "maxCompaniesPerQuery": {
            "title": "🔢 Max Companies Per Query",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "How many distinct LinkedIn company pages to resolve per keyword/name query above. A specific company name usually needs just 1; a broad industry keyword benefits from 3-5. Default is 3."
          },
          "discoverySearchRegion": {
            "title": "🌍 Discovery Search Region",
            "type": "string",
            "description": "Search-engine region code used while resolving keyword/name queries to companies (e.g. 'us-en', 'uk-en', 'de-de'). Default is 'us-en'."
          },
          "includeUnresolvedQueries": {
            "title": "🚫 Include Unresolved Queries",
            "type": "boolean",
            "description": "When ON, a query that resolves to zero LinkedIn company pages still produces a diagnostic output row (success=false, discoveryStatus='unresolved') instead of being silently skipped. Default OFF.",
            "default": false
          },
          "discoveryMaxConcurrency": {
            "title": "⚡ Discovery Concurrency",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many keyword/name queries to resolve in parallel during discovery. Default is 5."
          },
          "directCompanyUrls": {
            "title": "🔗 Direct LinkedIn Company URLs / Usernames",
            "type": "array",
            "description": "List one or more LinkedIn company URLs (e.g. https://www.linkedin.com/company/microsoft) or bare usernames (e.g. microsoft) to scrape directly, bypassing keyword discovery. This is the same list as the base actor's 'startUrls' input - either key works and both can be combined with discoveryQueries in the same run.",
            "items": {
              "type": "string"
            }
          },
          "industryIncludeKeywords": {
            "title": "🏭 Industry Filter (Include)",
            "type": "array",
            "description": "Post-discovery filter: keep only scraped companies whose Industry field contains ANY of these keywords (case-insensitive substring match), e.g. 'Software', 'Automotive'. Leave empty to keep all industries. Applies to both discovered and directly-scraped companies.",
            "items": {
              "type": "string"
            }
          },
          "industryExcludeKeywords": {
            "title": "🚫 Industry Filter (Exclude)",
            "type": "array",
            "description": "Post-discovery filter: drop scraped companies whose Industry field contains ANY of these keywords. Leave empty to exclude nothing.",
            "items": {
              "type": "string"
            }
          },
          "locationIncludeKeywords": {
            "title": "📍 Location Filter (Include)",
            "type": "array",
            "description": "Post-discovery filter: keep only scraped companies whose Headquarters/Location text contains ANY of these keywords, e.g. 'California', 'United States', 'London'. Leave empty to keep all locations.",
            "items": {
              "type": "string"
            }
          },
          "minEmployeeCount": {
            "title": "👥 Minimum Employee Count",
            "minimum": 0,
            "type": "integer",
            "description": "Post-discovery filter: keep only companies whose parsed employee-count range overlaps at least this number. Uses the same 'Company size' text LinkedIn already shows, parsed into a numeric range. Leave blank for no minimum. Note: a company whose employee count could not be parsed is excluded when this filter is set (never faked)."
          },
          "maxEmployeeCount": {
            "title": "👥 Maximum Employee Count",
            "minimum": 0,
            "type": "integer",
            "description": "Post-discovery filter: keep only companies whose parsed employee-count range overlaps at most this number. Leave blank for no maximum."
          },
          "maxFetchRetries": {
            "title": "🔁 Max Fetch Retries",
            "minimum": 0,
            "maximum": 10,
            "type": "integer",
            "description": "How many times to retry fetching a company's About page on a block/timeout before giving up (same as the base actor's 'maxRetries'). Default is 3."
          },
          "requestDelaySecs": {
            "title": "⏱️ Delay Between Company Requests (seconds)",
            "minimum": 0,
            "maximum": 30,
            "type": "integer",
            "description": "Seconds to wait before fetching each company's About page (same as the base actor's 'requestDelay'). Default is 2."
          },
          "proxyConfiguration": {
            "title": "🌐 Proxy Configuration",
            "type": "object",
            "description": "Choose which proxies to use for both discovery searches and company-page scraping. If LinkedIn or the search engine rejects the proxy, a residential proxy is used as a fallback."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}