API reference
Prospect research
Written and maintained by The ProspectAPIs team
The prospect research API returns a structured brief on one prospect from a single identifier, such as a domain, an email or a LinkedIn URL, for account research, a sales call or outreach. Every field carries the sources that state it and a confidence score. A field the sources do not support is null, never a guess.
$0.15
per completed brief
20 to 90 s
to a finished brief
10
cited sections
POST /v1/research
Send exactly one identifier (or person_name with company_name). URLs must be http(s) on a public host. Unknown fields are a 400.
| Field | Meaning |
|---|---|
| domain | acme.com |
| website_url | Any http(s) URL on the company's site. |
| company_name | Acme Robotics. Resolved to a domain. |
| company_linkedin_url | linkedin.com/company/... Used as a name hint only, never scraped. |
| A work email; its domain identifies the company. Free-mail addresses are refused. | |
| linkedin_url | A person's linkedin.com/in/... URL. Used as a name hint only, never scraped. |
| person_name + company_name | A person at a company, looked up on public pages only. |
| context | Optional, up to 1,000 characters: your own product. Turns on the fit section. |
| purpose | Optional: account_research (default), pre_call or outreach. Shapes the fit section. |
curl -X POST https://api.prospectapis.com/v1/research \
-H "Authorization: Bearer $PROSPECTAPIS_KEY" \
-H "Content-Type: application/json" \
-d '{
"email": "jane@acme.com",
"purpose": "pre_call",
"context": "We sell route planning software for mid-size 3PLs"
}'{ "research_id": "7f3c2a90-...", "status": "queued", "estimated_seconds": 60 }Keep the research_id. If you lose the response and submit again you pay for two jobs, so poll rather than resubmit.
GET /v1/research/:id
Free, and only your own account's jobs are visible (any other id is a 404). Status moves from queued to running to completed or failed. Poll every 10 to 15 seconds.
{
"research_id": "7f3c2a90-...",
"status": "completed",
"input": { "email": "jane@acme.com", "purpose": "pre_call" },
"result": {
"company": {
"description": {
"value": "Warehouse robots for mid-size 3PLs",
"sources": [{
"url": "https://acme.com/about",
"title": "About Acme",
"kind": "site",
"retrieved_at": "2026-10-01T09:14:02Z"
}],
"confidence": 0.9
}
},
"funding": { ... },
"fit": {
"discovery_questions": [ ... ],
"likely_objections": [ ... ]
}
},
"error": null,
"created_at": "2026-10-01T09:13:20Z",
"completed_at": "2026-10-01T09:14:05Z"
}The example is abridged and the company is fictional.
What a brief contains
| Section | What it holds |
|---|---|
| company | What they sell, HQ, size signals, their own social profiles |
| funding | Every round we hold for the domain, lead investors, total raised |
| traction | Named customers, pricing and hiring signals |
| competitors | Three to five, each with how it differs |
| news | Dated items with URLs, at most 12 months old |
| social | Their X account (followers, posting cadence, recent topics, notable posts) and Reddit mentions (90-day count, top threads, communities, tone). Only what we found |
| people | Founders and leaders named on public pages |
| risks | What could go wrong, each tied to a source |
| fit | Only with your context: angles, objections, hooks |
| regions | Where they sell, marked stated or inferred |
The fit section and purpose
fit appears only when you send context. It keeps three kinds of statement apart: FACT (what a source states, always cited), INTERPRETATION (what the facts suggest) and ANGLE (a suggestion for you), so a sales suggestion never reads as a fact.
| purpose | fit holds |
|---|---|
| account_research | Why they would care and the strongest angle. |
| pre_call | Why they would care, likely objections, discovery questions and what to lead with. |
| outreach | What changed (cited launches, funding, hires, priorities) and three to five hooks: each a dated, cited fact, its interpretation, the angle and a draft first line. |
The social section
social covers two platforms. social.x reads the X account the company's own homepage links to, never one found by search: handle, followers, bio, posting cadence in posts per week, recent topics and notable posts. social.reddit reads Reddit threads that are evidently about the company: mention_count_90d, top threads with their subreddit and a one-line summary, the communities they sit in, and a tone (positive, mixed or negative) with the basis it rests on.
Counts, followers, cadence, titles and subreddits are computed from the platform data, not written by the model. A platform we found nothing on is left out of the section, and with neither the section is absent. mention_count_90d counts the matching threads we read, so treat it as a floor. It is part of the same brief at the same price.
How citations are enforced
The brief is written only from the pages we read for it: the company's homepage and up to five linked pages, news and competitor searches, our funding table, the company's X account and Reddit threads that mention it. A value that cites no source, an unknown source or a source that was not read is dropped before the brief is saved. News, risks and people may not rest on a search snippet, a Reddit thread or someone else's X post alone. Confidence follows the strongest source kind: the company's own site and our funding table rank highest, a search snippet or another person's post lowest.
A search result or a Reddit thread counts only when it is on or links to the company's domain, names the domain, or names the company as whole words. Less information beats information about the wrong company.
Billing and failures
Submitting holds $0.15. The hold is charged when the brief completes and refunded in full if it fails or does not finish within five minutes. Free funding records do not apply to research. A failed job's error is a fixed message per cause, such as company_not_identified or company_site_unreadable.
Not in this version
Webhooks on completion, batch submit, an idempotency key on submit, platforms beyond X and Reddit, and paid people data.
Next steps
Create a free account to get a key. The quickstart covers authentication and errors, and pricing lists every price. A brief's funding section reads the same table as the funding signals API. To see the same research done by hand, read our guide to sales prospect research.