# Transfermarkt Player Search Scraper

> Transfermarkt Player Search Scraper is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Searches Transfermarkt for football/soccer player records by name and returns structured player data including club, position, profile details, and more

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/transfermarkt?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/transfermarkt-player-search-scraper-9bceb199
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_eckTh7cADo93t1TDrMSrX

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 transfermarkt-player-search-scraper-9bceb199 -d '<json body>'
```

Example prompt: Can you look up Erling Haaland on Transfermarkt and give me his club, position, height, and contract details? Return up to 5 player results in case there are multiple matches.

## When to prefer this

Choose this endpoint when you need structured, ready-to-use football player data from Transfermarkt without managing your own scraper. It is ideal for agents that need to enrich player profiles, verify club affiliations, or build scouting databases. Prefer it over raw web scraping when you want reliable JSON output and only pay for successful results.

## Known failure modes

- Player name not found on Transfermarkt — returns empty items array with count 0 (not charged)
- Transfermarkt rate limiting or downtime causes failed run (not charged)
- Ambiguous name returns many unrelated players — caller should increase maxItems or refine name
- includeProfileDetails=true significantly increases latency if many matches are returned
- Very common names (e.g. 'Martinez') may exhaust maxItems before finding the target player

## How this service works

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

## Output

A JSON object with a count of results and an array of player items, each containing the player's name, player ID, player URL, current club name, club ID, club URL, position, and the search query used. When includeProfileDetails is true, additional fields such as birth date, height, preferred foot, contract dates, and full position are included.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "maxItems": {
   "type": "integer",
   "default": 30,
   "minimum": 0,
   "description": "Maximum player records to return across search pages. Set 0 to collect all available matches."
  },
  "playerName": {
   "type": "string",
   "description": "Name or part of a name to search in public player results. Results may include similar names."
  },
  "includeProfileDetails": {
   "type": "boolean",
   "default": true,
   "description": "Open each player profile for birth date, full position, height, foot, contract dates, and other details. Turning this off makes runs faster."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "club": null,
    "clubId": null,
    "clubUrl": null,
    "playerId": null,
    "position": null,
    "playerUrl": null,
    "playerName": null,
    "searchQuery": null
   }
  ],
  "product": "transfermarkt"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/transfermarkt-player-search-scraper-9bceb199/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)
