// Phone checks

A phone validation API for knowing whether a number is real before you text it.

One GET request tells you whether a number is active and reachable, what kind of line it is, and whether it carries recent abuse or spam history — so you can stop SMS-verification abuse and stop paying to text numbers that will never answer.

Try the Free phone checker — no signup →

What a phone validation check returns

Validity & score

valid, fraud_score

Whether the number is a real, correctly formatted number for its country, plus a 0–100 fraud score for the number overall.

Active & line type

active, active_status, line_type

Whether the number is currently in service, and whether it's a mobile, landline or VOIP line.

VOIP & prepaid

VOIP, prepaid

Whether it's an internet-routed VOIP number — the line type behind most disposable SMS-verification numbers — or a prepaid line, a weaker identity signal than a long-standing postpaid account.

Risk & abuse

risky, recent_abuse, spammer, do_not_call

Whether the number is flagged as generally risky, has been tied to recent abuse, is a known spam caller, or is registered on a do-not-call list.

Carrier & location

carrier, country, region, city, timezone

The carrier behind the number, plus the country, region, city and timezone it's registered to.

Leak history & formatting

leaked, formatted, local_format

Whether the number appears in known data leaks, plus the number normalised into international and local formats.

GET /api/v1/check/phone?phone=18176791808&country=US

request.sh

curl -H "Authorization: Bearer fn_your_key" \
  "https://fraudnova.com/api/v1/check/phone?phone=18176791808&country=US"

response.json

{
  "success": true,
  "data": {
    "valid": true,
    "fraud_score": 10,
    "active": true,
    "recent_abuse": false,
    "VOIP": false,
    "prepaid": false,
    "risky": false,
    "carrier": "AT&T Wireless",
    "line_type": "Wireless",
    "country": "US",
    "region": "Texas",
    "city": "Fort Worth",
    "timezone": "America/Chicago",
    "do_not_call": false,
    "leaked": false,
    "spammer": false,
    "formatted": "+1 817-679-1808",
    "local_format": "8176791808"
  },
  "credits_remaining": 4984
}

Where teams use it

Stop VOIP-number signup abuse

SMS-verified signups are only as strong as the phone number behind them. VOIP numbers are cheap to mint in bulk and are the backbone of most SMS-verification abuse — flag VOIP: true at registration and route it to a stricter check.

Check a number is reachable before spending on SMS

Every SMS you send to a dead or invalid number is a wasted message fee. Confirm valid and active before your verification or notification flow spends a credit sending to a number that will never receive it.

Score a lead list before you dial

Purchased or scraped call lists mix real numbers with disconnected and VOIP-only ones. Run the list through in bulk and prioritise outreach toward the numbers most likely to actually pick up.

Questions, answered.

Does this call or text the number? +
No. The check never places a call or sends a message to the number — it looks up carrier, line-type and risk data without contacting the number at all.
What do line_type and VOIP mean for fraud? +
A landline or long-standing mobile number is harder and more expensive to mint in bulk than a VOIP number, which is why VOIP lines are disproportionately behind SMS-verification abuse and disposable signups. line_type and VOIP together are usually the strongest early signal on a phone check.
Why does a country hint help? +
Numbers submitted without a leading country code or "+" are ambiguous — the same digits can be a valid number in more than one country. Passing an ISO country hint resolves that ambiguity instead of guessing.
What number formats are accepted? +
Spacing, dashes, parentheses and a leading "+" are all normalised automatically, so +1 (817) 679-1808 and 18176791808 are treated as the same number.
Do you return the phone owner's name? +
No. We do not return or store the subscriber's name associated with a number, even where the upstream data source offers it — only the carrier, line-type and risk fields listed above.
What does a check cost? +
One credit per check, whatever the type. Credit packs are prepaid, there is no subscription, and credits do not expire. You start with 25 free credits after verifying your email.
Can I check many numbers at once? +
Yes — POST /api/v1/check/phone/batch scores up to 100 numbers per request, with an optional country hint applying to the whole batch, billing one credit per successful check.

Also available

IP fraud detection

Score any IPv4 or IPv6 address for fraud risk in one request.

Proxy & VPN detection

Spot proxies, VPNs and Tor exits hiding a connection's real origin.

Email validation

Catch disposable, undeliverable and leaked addresses before they cost you.

Start scoring in minutes.

25 free credits after you verify your email. No card, no subscription.

Create a free account