On this page

Calls & numbers

Phone number formats

API · Pro

Coverage: Areas come from the official numbering plan of each edition’s country. Spain lists a province for every landline range; many other countries list their area codes and cities. Mobile numbers have no area in any country, and a few countries do not publish a plan we can read yet: there we only show the type of line.

Open tool
On this page

Purpose

Check whether a phone number is valid, whether it is a mobile, landline, freephone or premium number, and see it in E.164, national and international format.

Requirements

Anyone can read these guides, no account needed. Some tools require Pro, as indicated in each guide.

Enter the full number with its international code. For a national number, first check the edition country or country selector.

How to use it

  1. Phone number formats

  2. Enter the full number with its international code. For a national number, first check the edition country or country selector.

  3. Check

  4. E.164 · Without calling code · International format

Synthetic example

Note

Invented example, not a real lookup. Do not call or open its links.

Synthetic example
+44 1632 960123

Interpret the result

It is the international standard for writing a number: a plus sign, the country calling code and the national number, with no spaces or leading zero. Apps and phone systems use it to store numbers.

Limitations

Warning

Formats and supported calling codes only. They do not prove a number’s location, owner or active status. Some codes are shared.

Troubleshooting

If the input is invalid, check its format and country. Retry connection errors; respect the waiting period when a limit is reached.

Invalid phone number

The security check or API connection did not respond in time. Try again in a few seconds.

Use with the API

Warning

Needs an API key and credits. Each completed call costs 1 credit, even when there is no data. An active Pro account includes 20 credits per UTC calendar month, shared by every API route and spent first; unused monthly credits do not roll over. Credits bought on your account page work without Pro and never expire.

Note

Errors are never charged: 401 invalid_api_key (missing or invalid key), 403 pro_required (no Pro credits and no purchased credits), 422 invalid input, 429 quota_exceeded (no credits left), rate_limit_exceeded or ai_busy (the AI of sms-check is at capacity), 503 tool_warming (the data is still being prepared) or tool or provider unavailable. After a 429 or 503, retry once the seconds in the Retry-After header have passed.

E.164, national and international formats, calling code, country and validity from the numbering plan. A possible but unallocated number returns valid=false.

Send the JSON body to the tool's own route, or to POST /v2/tools with the tool field added. Both routes return the same result.

Endpoint
POST https://api.nocall.io/v2/phone-formats
POST https://api.nocall.io/v2/tools  {"tool":"phone-formats","phone":"+34912345678","country":"ES"}

Parameters

NameTypeRequiredDescription
phonestring (1–40)YesPhone number in E.164 (+34…) or national format.
countrystring (enum, 56)No (default: "ES")Two-letter country code, for example ES or US, used for national input and for the country's data.
bash
REQUEST_ID="$(uuidgen)" && [ -n "$REQUEST_ID" ] &&
curl --request POST 'https://api.nocall.io/v2/phone-formats' \
  --header "Authorization: Bearer $NOCALL_API_KEY" \
  --header 'Content-Type: application/json' \
  --header "Idempotency-Key: $REQUEST_ID" \
  --data '{"phone":"+34912345678","country":"ES"}'

Example response (200)

This is the documented example from the API reference. Lookups use a fictional number, and aggregates and AI answers show the shape of the result, not live data.

JSON
{
  "data": {
    "tool": "phone-formats",
    "result": {
      "e164": "+34912345678",
      "national": "912 34 56 78",
      "international": "+34 912 34 56 78",
      "callingCode": "34",
      "country": "ES",
      "valid": true
    }
  },
  "meta": {
    "requestId": "req_example",
    "unitsCharged": 1,
    "usage": {
      "periodStart": "2026-10-01",
      "unitLimit": 20,
      "unitsUsed": 3,
      "unitsRemaining": 17
    }
  }
}

Result fields (data.result)

FieldTypeDescription
e164stringThe number in E.164 format, or null when it cannot be formatted.
nationalstringThe number in its country's national format.
internationalstringThe number in international format.
callingCodestringCalling code of the number's country, or null when it is unknown.
countrystring | nullCountry of the number (ISO code), or null when it cannot be determined.
validbooleanWhether the number is valid in the numbering plan. false is still a completed result.