Identify the carrier, line type (mobile / landline / VoIP), validity, and formatting for any phone number worldwide. Clean JSON, one fast request per number.
Phone Lookup API tells you who carries a phone number and what kind of line it is. Send a number in E.164 format and get back clean JSON — whether it's valid, the carrier name, the line type (mobile, landline, or VoIP), the country, and both E.164 and national formatting — in a single fast request.
Use it to validate and clean phone lists, route SMS to mobile numbers only, flag VoIP numbers for fraud checks, and enrich CRM records with carrier and country. Works for numbers worldwide — pass any country's number in E.164 and get consistent, structured data back.
- Rated Excellent — 4.6 based on 25 reviews on Trustpilot. Our open source work is sponsored by 1000+ devs on GitHub.
The same lookup is also available on Apify and RapidAPI:
One request to the lookup API:
GET https://carrier-lookup-api.omkar.cloud/lookup?phone=+12128148373
{
"is_valid_number": true,
"line_type": "mobile",
"carrier": "Verizon Wireless",
"phone_number": "+12128148373",
"national_format": "(212) 814-8373",
"country_code": "US",
"calling_country_code": "1",
"mobile_country_code": "310",
"mobile_network_code": "012"
}The + in a query string must be URL-encoded as %2B, so phone=+12128148373 becomes phone=%2B12128148373.
Run this exact request in the Playground — no signup, no key →
The playground comes prefilled with this request and runs it against the live API in your browser. The JSON it returns is identical to what the API returns.
Python and Node.js integration examples are available in the playground, so you can start looking up numbers in minutes.
importrequestsresponse=requests.get(
"https://carrier-lookup-api.omkar.cloud/lookup",
params={"phone": "+12128148373"}, # requests encodes the + for youheaders={"API-Key": "YOUR_API_KEY"},
)
print(response.json())curl -X GET "https://carrier-lookup-api.omkar.cloud/lookup?phone=%2B12128148373" \
-H "API-Key: YOUR_API_KEY"One GET request against https://carrier-lookup-api.omkar.cloud, authenticated with the API-Key header, returning JSON.
▶ Try it live in the Playground →
GET https://carrier-lookup-api.omkar.cloud/lookup?phone=+12128148373
Identify the carrier and line type for any phone number worldwide.
| Parameter | Required | Description |
|---|---|---|
phone | Yes | The phone number in E.164 format — a +, the country code, then the number (e.g. +12128148373, +447911123456). URL-encode the + as %2B. |
Response fields
| Field | Description |
|---|---|
is_valid_number | Whether the number is a valid, dialable number. |
line_type | mobile, landline, or voip. |
carrier | The carrier / network name (e.g. Verizon Wireless). |
phone_number | The number in E.164 format. |
national_format | The number formatted for its country (e.g. (212) 814-8373). |
country_code | ISO 3166 alpha-2 country code (e.g. US). |
calling_country_code | International dialing code (e.g. 1). |
mobile_country_code | MCC — mobile country code (mobile numbers). |
mobile_network_code | MNC — mobile network code (mobile numbers). |
Sample Response (click to expand)
{
"is_valid_number": true,
"line_type": "mobile",
"carrier": "Verizon Wireless",
"phone_number": "+12128148373",
"national_format": "(212) 814-8373",
"country_code": "US",
"calling_country_code": "1",
"mobile_country_code": "310",
"mobile_network_code": "012"
}| Plan | Price | Requests/Month |
|---|---|---|
| Free | $0 | 200 |
| Starter | $16 | 20,000 |
| Grow | $48 | 100,000 |
| Scale | $148 | 400,000 |
1 API call = 1 lookup
Free Plan Available — create your API key →. No credit card for the free tier.
Yes. The playground runs live requests in your browser — free, no account, no API key. Try it in the Playground →
Whether it's valid, the carrier/network name, the line type (mobile, landline, or VoIP), the country and dialing code, national and E.164 formatting, and — for mobile numbers — the MCC and MNC network codes.
The line_type field returns mobile, landline, or voip. Route SMS only to mobile, skip landlines, and flag voip numbers for extra fraud checks.
Yes. Pass any country's number in E.164 format (a +, the country code, then the number). The API returns the carrier, country, and formatting for numbers worldwide.
In a URL query string, + means a space — you must URL-encode it as %2B (so phone=%2B12128148373). Most HTTP libraries (like Python's requests) encode it for you when you pass the number as a parameter.
Every request is answered live against up-to-date carrier and numbering data — not a stale local file you have to download and maintain.
Email Verification API — the same clean JSON for email: check whether an address is valid, deliverable, disposable, or a role account, and catch typos before you send. Pair it with phone lookup to clean both columns of a lead list.
Google Maps Scraper (3,100+ GitHub Stars) — need tens of thousands of leads? Type a niche and a city ("dentists in New York") and get every matching business — name, address, phone, website, emails, rating, and reviews. The free tier alone pulls up to 100K leads a month.
Website Email Contact Scraper — Free and open source. Point it at any website and get every email, phone number, and social profile on it, each with source pages and an official/unofficial flag.
Built by developers, for developers — when you reach out, you talk to the engineers who built the API, not a support script. Message us anytime and we'll solve your query within 1 working day.
Email: happy.to.help@omkar.cloud
From one developer to another: If the Phone Lookup API saved you time, please star the repo.
Here's why it matters: most developers judge an API by its stars before trying it. Your star helps the next developer — someone deciding whether the phone data here is real and reliable — try it with confidence.
It takes only 1 second, and means the world to me.


