Scrapes
Download leads
Download a scrape's delivered leads as one CSV file.
api.leadity.io/v1/scrapes/{id}/leads.csvreadMCP tool download_leadsServes every delivered lead of a scrape as one CSV file, with exactly the columns the order bought. On the HTTP API the answer is the file itself. On MCP it is a short-lived link to the file, never the file: open it within its expiry, or call again for a new one. On a live scrape the file holds what is delivered so far.
Headers
Bearer, a space, then an API key: Bearer lk_api_... An MCP key is refused here with wrong_key_kind.
Path parameters
The scrape's id, as create_scrape and list_scrapes answer it.
1 to 64 characters, matches ^[A-Za-z0-9]{1,64}$.
Response
On the HTTP API the answer is the CSV file itself (text/csv), served as leads-<id>.csv. The MCP tool answers a short-lived download link instead, with url, expiresAt and filename: fetch the url before expiresAt. It needs no key.
Errors
Every refusal answers { error, message } with the status below. The full list is on the Errors page.
| Code | Status | Meaning | Extra fields |
|---|---|---|---|
| unauthorized | 401 | The API key is missing, malformed, revoked or expired. | - |
| wrong_key_kind | 401 | This key opens the other surface: an API key works on the HTTP API, an MCP key on the MCP server. | - |
| account_suspended | 403 | The account is suspended. | - |
| email_not_verified | 403 | The account's email address is not verified yet. | - |
| invalid_body | 400 | The request does not match the operation's schema. | issues: The problems found, each with path (the field as a dotted path, led by the part of the request it travels in: path, query or body, such as body.items.1) and message (what is wrong there). |
| not_found | 404 | No such resource on this account. | id: On export_scrapes: the first id that is not one of the account's scrapes. |
| rate_limited | 429 | Too many requests. Wait for the Retry-After seconds and try again. | retryAfterSeconds: The seconds to wait, the same number as the Retry-After header. |
| try_again | 503 | Leadity could not answer just now. Retry in a moment, with the same Idempotency-Key on a spending call. | retryAfterSeconds: When a request with this Idempotency-Key is still being processed: the seconds to wait before retrying with the same key, as the Retry-After header says. |
| internal_error | 500 | Something failed on our side. Nothing was charged twice. | body: On the MCP server, when Leadity answered in a shape the tool does not publish: that answer as it came. |