Reverse Contact API review
Unlimited profile lookups for a team that starts from LinkedIn URLs
POST https://api.reversecontact.com/v2/fetch/persons Authorization: Bearer rc_... # unlimited on Go, 1 credit from a pack, 0 on a 404 # from an email instead: /v2/enrich/persons, 2 credits
The Reverse Contact API returns structured people and company profiles: work history, education, skills, company size and industry, plus work emails and phone numbers on separate endpoints. You can start from a social profile URL, from an email, from a name and a company domain, or from search filters, and every response carries an updatedAt timestamp.
What sets it apart is how it is sold. There are credit packs from $100 for 5,000 credits, and there are unlimited monthly plans, but unlimited does not mean every call. Each plan unlocks one more endpoint family, and the family is decided by what you start from: a social URL, a search, or an email, a name or a domain.
Reverse Contact returns null rather than a best guess when a match is uncertain, and it charges nothing when nothing is found on most endpoints. That makes the per-credit price closer to a per-result price than it is with providers that bill the attempt.
The rest of the category is in the Enrichment APIs listing. Nothing here is paired against Reverse Contact yet, so the compare hub is the place to start.
What each Reverse Contact call costs
Every endpoint has a published credit cost, and the docs carry the same figures in an endpoint catalog. Read the input column first, because the same person costs 1 credit from a profile URL and 2 from an email.
| Call | Starts from | Credits |
|---|---|---|
| /v2/fetch/persons, /companies | A social profile or company URL, from the database | 1, 0 on a 404 |
| /v2/fetch/*/live | The same URL, re-sourced in real time | 2, charged even when no profile is found |
| /v2/search/people, /organizations | Filters, full profiles returned | 1 per result, 0 for an empty page |
| /v2/search/*/prompt | A sentence in plain language | 1 per page plus 1 per result |
| /v2/enrich/persons, /companies | An email, a name and domain, or a domain | 2, 0 on a 404 |
| /v2/contact/email | A profile URL or a name and domain | 3 for a work email, 5 for a personal one, 0 if none |
| /v2/contact/phone | A profile URL or a name and domain | 20 when a number is found, 0 if none |
| Check, count and usage | Anything | Free |
At the smallest pack, a profile fetch is $0.02, an enrichment from an email $0.04, a work email $0.06 and a phone number $0.40. At the 1,000,000 credit pack each of those falls to a quarter of that. The free count endpoints are the useful habit: size a search before you pay for it.
The check endpoints that tell you whether a profile exists and when it was last updated cost nothing, but once a workspace has fewer than 2 credits left they return 402 NO_CREDITS too, because the fetch that follows a check can cost 2. Usage, polling and the available-fields endpoints keep working.
Reverse Contact API pricing, plan by plan
Reverse Contact API pricing is either a credit pack, from $100 for 5,000 credits, or an unlimited monthly plan from $249 that removes credits from one or more endpoint families.
Credit packs
- Fourteen sizes, up to $5,000 for 1,000,000
- $0.02 a credit falling to $0.005
- Valid for 3 months, no subscription
Go
- Unlimited fetches from a social URL
- Search at 1 credit, enrichment at 2
- MCP and CLI included
Plus
- Everything in Go
- Unlimited people, company, agentic and lookalike search
- Enrichment still 2 credits
Max
- Everything in Plus
- Unlimited enrichment from an email, a name or a domain
- Emails, phones and live refreshes on credits
Reverse Contact puts the break-even on the page: running more than 15,000 lookups a month, an unlimited plan costs less. That matches the ladder, where 15,000 credits are $250 and Go is $249. The pack sizes between are $500 for 40,000, $1,000 for 100,000 and $1,800 for 200,000.
Go, Plus and Max cover a team's own use. You can build and test a product on them, but once your customers see the data, inside software you sell or resold, Reverse Contact requires a Platform contract, which is custom priced and carries the reselling and embedding agreement.
Per minute, per workspace
Reverse Contact API rate limits are a per-minute limit on each workspace, listed as 100+ requests a minute on every self-serve option and upgradable on the payment page, with 1,000+ on Platform. A daily limit exists only on Enterprise and is off by default. Going over returns a 429 with the number of seconds to wait in error.details.retryAfter.
| What | Counts toward the limit | Note |
|---|---|---|
| REST and MCP calls | Yes | Same credits and the same rules on both |
| Creating an async job | Yes, as one request | Live fetch, email and phone lookups |
| Polling a job result | No | GET /v2/webhooks/:webhookId is free |
| Webhook callbacks to you | No | Delivery failures are not refunded |
| Usage endpoint | No | Returns the balance and minuteRateLimit |
Reading your headroom
Every successful response says where you stand.
- The quotas object carries minuteRateLimit with limit, used, left and nextReset.
- A per-key RPM or daily cap can sit below the workspace limit, never above it.
- A per-key cap returns the same 429 as the workspace one.
- Agent LLM turns spend credits but do not count toward the gateway limit.
What is refunded and what is not
Async calls are charged at creation.
- A Find Email or Find Phone that finds nothing is refunded automatically.
- A job that ends in an error without data is refunded.
- A live fetch that finds no profile is billed.
- A webhook that fails to deliver keeps the credit, because the data was fetched.
Put together, the limit is generous for a team and the accounting is precise. The two lines to design around are the live fetch, which is the one call billed on a miss, and the webhook receiver, because a broken one costs credits without losing data: poll the job and the result is still there.
How to create a Reverse Contact API key
A Reverse Contact API key is created under Workspace, API Keys, and starts with rc_. It goes in the Authorization header as a Bearer token on every request, and the usage endpoint is the free way to confirm it works.
Scoping a key
Full access by default; narrow it when it matters.
- Scopes: Person Enrichment, Company Enrichment, Search, and Contact for email and phone.
- A call outside a key's scopes returns 403 INSUFFICIENT_PERMISSIONS.
- Each key can carry its own RPM and daily limit.
- An expiration date turns a contractor or demo key off on its own.
When a key stops working
The error code says which case you are in.
- API_KEY_MISSING, API_KEY_INVALID or a malformed header returns 401.
- API_KEY_EXPIRED is a 401 after the expiration date.
- A revoked key stops at once and cannot be reactivated.
- WORKSPACE_DISABLED is a 403 that does not come from the key.
One key per environment, scoped to the families it calls, is the setup the docs recommend. Contact scope is the one worth withholding by default, because a phone lookup is 20 credits and the easiest way to spend a pack by accident.
What a Reverse Contact API call looks like
Every endpoint lives under api.reversecontact.com/v2 and takes JSON. Two old paths were retired on October 13, 2026: /v2/search/persons and the /v2/resolve family now return 410 Gone with ENDPOINT_GONE, cost nothing, and name the replacement in error.details.alternative.
# 1. free: does the profile exist, and how fresh is it POST https://api.reversecontact.com/v2/fetch/persons/check # 2. 2 credits: a person from a work email POST https://api.reversecontact.com/v2/enrich/persons # 3. free: size a search before paying for it POST https://api.reversecontact.com/v2/search/people/count
Where the Reverse Contact API documentation lives
The Reverse Contact API documentation is at docs.reversecontact.com, and every page is also served as Markdown, indexed in an llms.txt with a single-file llms-full.txt. An OpenAPI 3.1 spec carries the credit cost of each operation, and an endpoint catalog lists retired endpoints with their replacements.
| Surface | Where | What it answers |
|---|---|---|
| Getting started | docs.reversecontact.com/getting-started | The first request, from a profile URL. |
| Rate limits and credits | docs.reversecontact.com/guides/rate-limits-credits | What is free, what is refunded, and the 429. |
| OpenAPI spec | docs.reversecontact.com/openapi.json | Every operation with its credit cost and status. |
| MCP guide | docs.reversecontact.com/guides/mcp | Connecting Claude, ChatGPT, Cursor and others. |
| Status | status.reversecontact.com | Whether a slow response is you or them. |
There are no official language SDKs; the docs give JavaScript and Python examples and suggest generating a typed client from the OpenAPI spec. The MCP server exposes 16 tools on the same credits and rate limits as the REST API, connects through OAuth or a Bearer key, and is listed in the Claude connector directory. A separate documentation MCP server needs no key.
The MCP page lists Reverse Contact's MCP access alongside the others in this directory.
Reverse Contact on video
The section is here either way, because the absence is worth knowing: a vendor with no walkthrough of its own API is a vendor whose docs are the only way in.
We have not found a walkthrough of the API on Reverse Contact's own channel yet. Reverse Contact's own pages link LinkedIn and no YouTube channel. A channel at youtube.com/@reversecontact does link reversecontact.com back, but its last upload is from May 2024. Its one product walkthrough, from June 2023, shows the app as it was before the V2 rebuild, so there is no current vendor video of the API to show. When Reverse Contact publishes one, or sends us one, it goes here.
A vendor video is the vendor's claim about itself, which is why it sits in its own section.
Strengths and limits
Reverse Contact is built for a buyer who knows the input they start from and wants to stop counting credits on it.
What it does well
- Unlimited plans at a published price, from $249 a month.
- Nothing charged on a miss on most endpoints, including emails and phones.
- Free check and count endpoints to decide before you spend.
- A hosted MCP server with OAuth, a CLI and an agent skill.
- Every credit cost published per endpoint, in the docs and the spec.
- Keys scoped by endpoint family, with their own limits and expiry.
Where it falls short
- Unlimited covers one endpoint family per plan; enrichment from an email is Max only.
- Emails, phones and live refreshes stay on credits on every plan.
- Packs expire after 3 months.
- Showing the data to your own customers needs a custom Platform contract.
- A live fetch that finds nothing is billed, unlike the rest.
The pattern is a vendor that is precise about what it charges and generous on misses, with an unlimited offer that is real but narrower than the word suggests. It suits a team with a steady flow of one kind of input far better than one that needs a little of everything.
Who should actually buy this
Buy Reverse Contact when most of your volume is one kind of call and it runs past about 15,000 a month. A team enriching profiles from social URLs is the clearest case: Go makes that unlimited for $249.
Price the plan by what you start from. If your CRM holds emails rather than profile URLs, the unlimited call you need is enrichment, and that is Max at $699. Below the break-even, a pack is cheaper and every endpoint is open.
Do not plan on unlimited contact data. Work emails at 3 credits and phones at 20 are on credits whatever you subscribe to, so budget for them as packs on top of the plan.
Below about 15,000 calls a month the flat plans are hard to justify, and Wiza sells lookups from a LinkedIn URL out of a $50 credit balance with no plan at all; the Wiza alternatives page sets out that trade. Reverse Contact is itself a pick on the Crustdata alternatives page, for teams that want flat monthly profile fetches rather than per-record credits.
Before you build against it
Five things to settle first, each one read off Reverse Contact's own pages. The ticks are remembered in this browser, so you can come back to a half-finished integration.
Where the data comes from, and what you may do with it
The question that arrives late and expensively is who is allowed to hold the data. These are the fields it returns, the coverage it claims and the compliance it publishes.
| Provider | Fields returned | Coverage | Compliance | Redistribution |
|---|---|---|---|---|
| Reverse Contact | Work email, Personal email, Mobile phone, Firmographics, LinkedIn profile | Global | GDPR DPA CCPA | Not stated |
Reverse Contact states no redistribution position on its pricing or docs pages. Internally that never matters. Put the rows in something your customers can see and it becomes the question your legal team asks first.
Two practical notes. A compliance badge describes the vendor rather than your use of it, so a GDPR DPA does not give you a lawful basis for the outreach you send. And the vendor runs its own opt-out, which means a person who asks you to delete their record has to be removed from your copy as well as from theirs.
Calling these APIs one by one? Run them from one Clay table.
Clay runs a waterfall across 150+ data providers from one table, without a separate contract with each. A lookup that finds nothing costs no data credit, and the free plan includes 500 actions a month.
Frontal is a Clay Elite Studio Partner.
Nothing worth quoting yet
We searched Reddit for threads about the Reverse Contact API and have found none worth quoting yet. When one turns up, it goes here, and nothing on this page leans on an unquoted paraphrase.
Reverse Contact API, answered
Is the Reverse Contact API free?
500 credits free to try, no credit card required. Paid use starts at $100 one-time.
How much does the Reverse Contact API cost?
Reverse Contact starts at $100 one-time. Its unit rate is $0.02 per credit. It bills by subscription or by credit pack, with a free tier. Read from Reverse Contact's own pricing page on 24 October 2026.
What are the Reverse Contact API rate limits?
100+ requests a minute per workspace on every self-serve option, 1,000+ on Platform; a 429 carries retryAfter, and per-key caps can sit below the workspace limit.
How do I get a Reverse Contact API key?
A Reverse Contact API key is created under Workspace, API Keys, and starts with rc_. Requests authenticate with bearer token in the Authorization header, a workspace key starting rc_, scopable by endpoint family. The current steps are in Reverse Contact's own documentation, which is authoritative on anything that has changed since 24 October 2026.
Does Reverse Contact have an MCP server?
Yes. Hosted at api.reversecontact.com/mcp, 16 tools, OAuth 2.1 or a Bearer API key. It is listed with the others on the MCP page.