Scrapes
List scrape offers
List what a finished scrape can still sell, with prices. Free.
api.leadity.io/v1/scrapes/{id}/offersreadMCP tool list_scrape_offersAnswers, for free, every upgrade a finished scrape can still sell and what each costs in credits: its held-back businesses by cell, the phone line types of its leads, email addresses and their verification, and owner names. Each offer is null when there is nothing to sell, it was already bought, or the scrape is still running. Read it before any of the five purchase operations: the counts are recomputed on every call, so a business bought elsewhere since falls out before it can be sold twice.
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
The businesses the scrape found and did not deliver, bought by purchase_residuals. Null when there are none to sell.
Show child attributesHide child attributes
typed when the order bought a line type and its cells split by type; untyped when its numbers are one with_phone bucket.
One oftypeduntyped
Every cell holding at least one business. A cell not listed holds none.
Show child attributesHide child attributes
The phone bucket: a line type, with_phone, no_phone or any.
One ofanymobilelandlinevoiptoll_freewith_phoneno_phone
Whether the business has a website: has, none or any.
One ofanyhasnone
The email bucket: none, unverified, verified or any.
One ofanynoneunverifiedverified
The Google category class: match (its main category is an ordered niche), other, unknown, any, or category for one named category beside it.
One ofanymatchotherunknowncategory
The key of one named category from the offer's categories. Present exactly when niche is category.
1 to 200 characters.
Businesses the cell holds.
What buying the whole cell costs.
Up to ten named categories inside other, most businesses first, each buyable as niche category.
Show child attributesHide child attributes
The cell most like what was ordered, when there is one.
Show child attributesHide child attributes
The phone bucket: a line type, with_phone, no_phone or any.
One ofanymobilelandlinevoiptoll_freewith_phoneno_phone
Whether the business has a website: has, none or any.
One ofanyhasnone
The email bucket: none, unverified, verified or any.
One ofanynoneunverifiedverified
The Google category class: match (its main category is an ordered niche), other, unknown, any, or category for one named category beside it.
One ofanymatchotherunknowncategory
The key of one named category from the offer's categories. Present exactly when niche is category.
1 to 200 characters.
The phone line types of the delivered leads, bought by purchase_phone_reveal. Only on a scrape that ordered no phone filter.
Show child attributesHide child attributes
Delivered numbers the reveal covers.
What the reveal costs.
Email addresses for the delivered leads, bought by purchase_email_find.
Show child attributesHide child attributes
Delivered leads with a website nobody has read.
The smallest target purchase_email_find takes.
Credits per address found.
Verdicts for the addresses held, bought by purchase_email_verify.
Show child attributesHide child attributes
Addresses held that nobody has verified.
The smallest target purchase_email_verify takes.
Credits per billable verdict.
Owner names for the delivered leads, bought by purchase_owner_names.
Show child attributesHide child attributes
Delivered leads with a phone and no owner name that no run has tried.
The smallest targetNames purchase_owner_names takes.
Credits per confirmed name.
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. |