GET /phone/{number}

Phone validation API

Pass a phone number. Get it back valid, formatted, plus the line type.

Try it

Response/phone/%2B442071838750

Run a lookup to see the response.

1M requests · $20/mo. Get started

What comes back.

valid

Number is valid

type

mobile | landline | toll_free | unknown, what the numbering plan says. The network's word (voip) lives on /carrier

deep.state

State/province code from the area code (NANP), else null

deep.state_name

State/province name from the area code (NANP), else null

deep.timezone

IANA timezone id from the numbering plan, else null. Zone of the number, not the handset

country

ISO 3166-1 alpha-2 country

national

National formatting

international

International formatting

1

Pass a phone number

National or international. North American 10-digit is detected from the area code.

2

Get it back clean

Valid, national, and international, plus the numbering-plan line type. Add deep=true for area-code state and timezone on every plan.

3

A list when you have one

Drop a CSV or Excel file. Carrier, caller ID, and live status are toggles on the quote.

Coverage

Worldwide. Every numbering plan.

245
countries & regions
4
types from the plan
3
formats out
3
more endpoints

Validate a phone number before you store it. Pass +14155552671 and get it back valid, national, and international, with the numbering-plan line type. Add deep=true for area-code state and timezone, included on every plan. A 10-digit North American number is detected from the area code. Other national formats take ?country=.

Built for signup forms and CRM cleanup. Answers come from the numbering plan itself. When you need the network's word, the same number drops into /carrier, /caller, or /hlr.

SPEED

How long /phone takes.

Median time to first byte over the last seven days. Warm requests, measured every 30 minutes. Live verification and other request variants can take longer.

US

19ms

EU

26ms

APAC

44ms

LatAm

34ms

ME

90ms

See live status →

Make your first request.

One key works across the APIs. Copy a request in your language and get JSON back.

curl "https://api.parseapi.com/phone/+14155552671" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Parse-Version: 2.0.0"
// Example response · 200
{
  "phone": "+14155552671",
  "valid": true,
  "country": "US",
  "type": "unknown",
  "national": "(415) 555-2671",
  "international": "+1 415 555 2671"
}

API referenceSDKsKeys and authentication

Every response field

Response fields

phone
Normalized number (+ country code, no spaces), or null if invalid
valid
Number is valid
country
ISO 3166-1 alpha-2 country
type
mobile | landline | toll_free | unknown, what the numbering plan says. The network's word (voip) lives on /carrier
national
National formatting
international
International formatting

Deep fields

deep.state
State/province code from the area code (NANP), else null
deep.state_name
State/province name from the area code (NANP), else null
deep.timezone
IANA timezone id from the numbering plan, else null. Zone of the number, not the handset

Build with Phone

All tutorials →

QUESTIONS

What if it is not a number?
valid: false as a 200. phone is null. Same as a typo in a form field.
Why does type never say voip?
Landline, mobile, or toll-free from the number itself. VoIP is a /carrier lookup.
What is timezone?
deep.timezone is the IANA zone assigned by the numbering plan, when unambiguous. Add deep=true on every plan for it and the area-code state. It does not locate the handset.
Who serves the number?
GET /carrier returns the carrier, real line type, and burner flag. Optional deep adds issuing city and state in the same lookup.
Can I get the caller ID?
GET /caller returns the name a phone screen shows. North American numbers.
Is the number live?
GET /hlr asks the mobile network. live means assigned, connected means reachable at the last check.
Can I run a list?
Drop a CSV or Excel file on this page. Cleanup columns are cheap; carrier, caller ID, and live status are toggles on the quote.

Phone APIs

Phone

Valid, formatted, plus the line type. Optional numbering-plan detail.

Carrier

Who serves it. Real line type, including voip. Burner flag.

Caller ID

The name a phone screen shows.

Live status

Assignment and reachability at the last network check.

Have a list?

Drop a CSV or Excel file. Your quote includes the carrier check. Caller ID and live status are toggles on the quote.

Drop a CSV, Excel, or Numbers file

or choose a file

Bulk phone validation

Look up an area code, browse every area code, or format a list of numbers with the number validator.

Numbers, straightened out.

Phone validation, formatting, and numbering-plan type. Every plan.

Start includes 1M API requests a month for $20/mo.