{
  "info": {
    "name": "WebAutomation LinkedIn Data API",
    "description": "Credit-metered LinkedIn data API served from the WebAutomation dataset (read-only).\n\nSetup: set the `api_key` collection variable to your API key (create one under Account Settings → API Keys on the site the `base_url` points at). Every request authenticates with `Authorization: Bearer {{api_key}}`.\n\nBilling: `person/search` and `company/employees` bill per profile returned; `company/enrich` bills per matched company (a miss is a free 404); `person/count` and `account` are free. The standard rate is 1 credit per result, but pricing is per plan — your exact per-endpoint costs are in `GET /v1/account` under `costs`. Errors are never charged. Every response carries `credits_used` and `credits_remaining`, plus `X-RateLimit-*` headers.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      { "key": "token", "value": "{{api_key}}", "type": "string" }
    ]
  },
  "variable": [
    { "key": "base_url", "value": "https://webautomation.io", "type": "string" },
    { "key": "api_key", "value": "", "type": "string" }
  ],
  "item": [
    {
      "name": "Account — plan, limits & credits (free)",
      "request": {
        "method": "GET",
        "header": [],
        "url": {
          "raw": "{{base_url}}/v1/account",
          "host": ["{{base_url}}"],
          "path": ["v1", "account"]
        },
        "description": "Free. Returns your plan, remaining credits, today's usage, your rate limits and key metadata. A good first call to verify your key."
      }
    },
    {
      "name": "Person count — size a segment (free)",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"filters\": {\n    \"country\": \"united states\",\n    \"title\": \"director\"\n  }\n}"
        },
        "url": {
          "raw": "{{base_url}}/v1/person/count",
          "host": ["{{base_url}}"],
          "path": ["v1", "person", "count"]
        },
        "description": "Free. Total matching profiles for a filter set — size the segment before you spend credits. Cached ~5 minutes. Unknown filter keys return 422 with the full list of valid filters."
      }
    },
    {
      "name": "Person count — department filter (free)",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"filters\": {\n    \"country\": \"united states\",\n    \"department\": \"Sales\"\n  }\n}"
        },
        "url": {
          "raw": "{{base_url}}/v1/person/count",
          "host": ["{{base_url}}"],
          "path": ["v1", "person", "count"]
        },
        "description": "Free. `department` is case-insensitive and takes one of 20 canonical values (an invalid value returns 422 listing them all)."
      }
    },
    {
      "name": "Person search — billed per profile",
      "request": {
        "method": "POST",
        "header": [
          { "key": "Content-Type", "value": "application/json" }
        ],
        "body": {
          "mode": "raw",
          "raw": "{\n  \"filters\": {\n    \"country\": \"united states\",\n    \"department\": \"Sales\",\n    \"title_prefix\": \"director\"\n  },\n  \"page\": 1,\n  \"per_page\": 3,\n  \"sort\": \"recent\"\n}"
        },
        "url": {
          "raw": "{{base_url}}/v1/person/search",
          "host": ["{{base_url}}"],
          "path": ["v1", "person", "search"]
        },
        "description": "Billed per profile actually returned, at your plan's rate (pre-authorised at `per_page`, difference refunded). `per_page` max 100; this example uses 3 to keep the cost of a test run low. `sort` is `recent` (default) or `relevance`."
      }
    },
    {
      "name": "Company enrich — by domain (billed on match)",
      "request": {
        "method": "GET",
        "header": [],
        "url": {
          "raw": "{{base_url}}/v1/company/enrich?domain=stripe.com",
          "host": ["{{base_url}}"],
          "path": ["v1", "company", "enrich"],
          "query": [
            { "key": "domain", "value": "stripe.com" }
          ]
        },
        "description": "Billed per match at your plan's rate; a miss is a free 404. Identify the company by `linkedin_url`, `domain` or `name` — the response's `match_confidence` says which ladder rung matched (`exact_url`, `exact_domain`, `name_match`)."
      }
    },
    {
      "name": "Company enrich — by name (billed on match)",
      "request": {
        "method": "GET",
        "header": [],
        "url": {
          "raw": "{{base_url}}/v1/company/enrich?name=google",
          "host": ["{{base_url}}"],
          "path": ["v1", "company", "enrich"],
          "query": [
            { "key": "name", "value": "google" }
          ]
        },
        "description": "Name matching is the loosest rung of the ladder — prefer `linkedin_url` or `domain` when you have them."
      }
    },
    {
      "name": "Company employees — billed per profile",
      "request": {
        "method": "GET",
        "header": [],
        "url": {
          "raw": "{{base_url}}/v1/company/employees?name=microsoft&per_page=3",
          "host": ["{{base_url}}"],
          "path": ["v1", "company", "employees"],
          "query": [
            { "key": "name", "value": "microsoft" },
            { "key": "per_page", "value": "3" }
          ]
        },
        "description": "Paginated employees of a company, billed per profile returned at your plan's rate. Identify the company by `linkedin_url` (fastest), `domain` or `name`; narrow with `title`. `per_page` max 100."
      }
    }
  ]
}
