# LinkedIn Profile Scraper

> LinkedIn Profile Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.08/call, status unknown (last checked 2026-10-03).

Fetches structured public LinkedIn profile data (name, headline, photo, about, URL) for one or more given profile URLs or identifiers.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/linkedin-profiles?utm_source=zero.xyz
- Price: $0.08/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-03
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/linkedin-profile-scraper-e570635e
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_tX8GNjo4tR1tAhGg_8IwG

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability linkedin-profile-scraper-e570635e -d '<json body>'
```

Example prompt: Pull the structured LinkedIn profile data for https://www.linkedin.com/in/satyanadella/ — I need their full name, headline, and about section.

## When to prefer this

Choose this endpoint when you need structured, machine-readable LinkedIn profile data from known profile URLs without manual browsing. It handles batch lookups across multiple profiles in a single call and only charges for successful, non-empty results, making it suitable for lead enrichment, recruiting pipelines, or journalist/contact research workflows. Prefer this over general web scrapers when the input is specifically LinkedIn /in/ profile URLs and you need normalized fields like headline, about, and photo.

## Known failure modes

- Profile is private or restricted — fields return null
- Invalid or malformed LinkedIn URL — empty or error response
- Profile does not exist or has been removed — empty items array
- Rate limiting or access restrictions from LinkedIn — failed run (not charged)
- Network timeout or scraping block — failed run (not charged)

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

Returns a JSON object with a count of matched profiles and an array of profile records, each containing: fullName, firstName, lastName, headline, about, photo URL, linkedinUrl, and publicIdentifier. Fields may be null if not publicly visible.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "queries": {
   "type": "array",
   "description": "Public /in/ profile URLs or identifiers. One profile is returned for each accessible URL."
  },
  "maxItems": {
   "type": "integer",
   "default": 0,
   "minimum": 0,
   "description": "Maximum number of profile records to save. Use 0 for no cap."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "about": null,
    "photo": null,
    "fullName": null,
    "headline": null,
    "lastName": null,
    "firstName": null,
    "linkedinUrl": null,
    "publicIdentifier": null
   }
  ],
  "product": "linkedin-profiles"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/linkedin-profile-scraper-e570635e/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
