Is that number a business? One call tells you.

Scrub any US phone number against a continuously refreshed database of verified business lines — doctor offices, law firms, government offices, restaurants and more. Hit the API, get back the business behind the number (or a clean "unknown").

Get your API key API docs

Map of business phone numbers connecting across the USA
208,508business numbers
22verticals
40states
99uptime %

One call away

curl -H "Authorization: Bearer <your key>" \
  "https://listscrub.ai/v1/phone/512-717-3147"
{
  "phone": "+15127313147",
  "found": true,
  "isBusiness": true,
  "name": "ATX Family Dental",
  "vertical": "dentists",
  "city": "Austin", "state": "TX",
  "rating": 4.9, "lastSeenAt": "2026-08-06T...", ...
}

Unlisted numbers come back { "found": false, "isBusiness": null } — a clean "unknown", never an error. Bad input gets a 400.

Why teams use listscrub

Verified & fresh

Every number is E.164-normalized and re-confirmed on each collection run. Stale listings are flagged in the response, never silently served as current.

Any format in

Send the number however you have it — (512) 555-0100, 5125550100, +1 512 555 0100. We normalize and match.

Fair quotas

Clear monthly quotas with X-Quota-* headers on every response. Track your usage live on the dashboard.

Contribute & earn

Send us numbers we've missed via POST /v1/contribute. Net-new, verified submissions earn payout credits.

Pricing

Free Trial

$0

100 API calls/mo

Try the API — no card required

Start free

Entry

$29/mo

5,000 API calls/mo

For small teams and side projects

Start with Entry

Unlimited

$299/mo

Unlimited API calls

No monthly cap, priority support

Start with Unlimited

Subscriptions are handled securely by Stripe. Cancel anytime — you keep access until the end of the billing period.

Endpoints

GET  /v1/phone/{phone}             scrub a number — any US format
GET  /v1/stats                     free — database counts per vertical/state
GET  /v1/health                    free — last collection-run status
POST /v1/contribute                { "submissions": [{ name, phone, vertical, ... }] }
GET  /v1/contribute/balance        your contributor credit balance
GET  /v1/usage                     your plan, quota, and monthly usage

Authenticated endpoints need your API key either as Authorization: Bearer <key> or as a query parameter — ?apikey=<key> (handy for browser testing). Responses include X-Quota-Limit, X-Quota-Used, and X-Quota-Remaining headers; over-quota requests return 429. Matches flagged stale were not re-confirmed in the latest collection run (isBusiness: false).

Terms of use