US + Canada · Phone Validation API

Phone intelligence
in one API call

Validation, carrier DIP, geoIP, TCPA litigator scrub and landline-SMS reachability. No demos to book, no sales calls to attend.

  • No credit card
  • API key in seconds
POST /v1/lookup 28 fields
{
  "success": true,
  "credits_used": 2,
  "data": {
    "subscriber": "2627834719",
    "optDate": "2026-05-23T21:56:03.699Z",
    "action": "unsubscribe",
    "deliverable": "false",
    "reason": "Associated with TCPA Litigator DO NOT CONTACT",
    "nanpType": "mobile",
    "blackList": "true",
    "ipResult": "valid-v4",
    "dip": "success",
    "dipLrn": "2627834719",
    "dipPorted": "false",
    "dipOcn": "9327",
    "dipCarrier": "AT&T Wisconsin",
    "dipCarrierSubType": "RBOC",
    "dipCarrierType": "landline",
    "dipMessagingLookup": "false",
    "dipMessagingEnabled": "false",
    "litigator": "true",
    "litigator_type": "litigator",
    "litigator_name": "Jean Zoulek",
    "geoCountry": "US",
    "geoState": "UT",
    "geoCity": "Salt Lake City",
    "geoMetro": 770,
    "geoSource": "ip",
    "timezone": "America/Denver",
    "tzOffset": 7,
    "error": "false"
  }
}
0M+
Requests served by our validation network
~0%
Non-mobile (landline or VoIP) across all lookups
~0%
Flagged as TCPA litigators when scrub is enabled
~0%
Landlines that are SMS-capable when checked

Test a phone number

Enter a US or Canada phone number — limited free lookups per visitor

Five signals. One API call.

Validation, carrier DIP, geoIP, TCPA litigator scrub, and landline-SMS reachability. Two optional add-ons when you need them.

01 / 05

Phone validation

Is the number real? Is it active? Is it deliverable? Returns line type, deactivation date, deliverability flag, and a summary recommendation your code can branch on.

  • nanpType
  • deliverable
  • action

02 / 05

Carrier DIP

A live query against the carrier's mobile network switch (HLR), not a cached lookup table. Returns the current carrier, line type, OCN, LRN, and porting status, even on numbers that ported last night.

  • dipCarrier
  • dipCarrierType
  • dipOcn
  • dipLrn
  • dipPorted

03 / 05

GeoIP location

State, city, metro, timezone (and IANA tz string). Always included, never an add-on. Route the lead to the right rep before anyone picks up the phone.

  • geoState
  • geoCity
  • geoMetro
  • timezone

04 / 05

TCPA litigator scrub

Optional +1 credit

Three fields, litigator, litigator_type, litigator_name, and the summary recommendation flips to unsubscribe on a match. Database refreshed daily from federal and state court filings. Set litigatorFilter: true and we'll handle the rest.

  • litigator
  • litigator_type
  • litigator_name

05 / 05

Landline-SMS reachability

Optional +1 credit on landlines

About 7% of US landlines can text. Five dipMessaging* fields surface the messaging carrier when one exists. Skipped automatically on mobile so you only pay when it actually applies.

  • dipMessagingEnabled
  • dipMessagingCarrier
  • dipMessagingLookup

More

See all features →

Every field returned by the API, every opt-in flag, every error code, every edge case.

500 free lookups every month. No credit card to start.

Get API key

Built for outbound teams that can't afford a wrong number.

Bundled by default

Five signals from one endpoint. No second vendor for scrub or SMS reachability.

Real-time, not list-based

Every lookup is a live HLR query, not a cached list. Current carrier, even on freshly ported numbers.

Priced for developers

As low as $0.001 per call at volume. Free tier: 500 lookups a month, no credit card.

See pricing →

We don't keep your numbers

Phone numbers pass to the lookup and are discarded. Never stored, cached, or logged.

Common questions

What does the TCPA litigator flag actually do?

Set litigatorFilter: true and we return three litigator fields plus an automatic unsubscribe recommendation on a match. You skip outreach on the strength of one boolean, no separate API call, no separate vendor.

Where does the litigator data come from?

Federal and state TCPA court filings, demand-letter activity, and known TCPA-agitator phone numbers, refreshed daily. We never repackage stale lists.

How fresh is the carrier data?

Every lookup hits the live mobile network — a real-time DIP against the carrier's switch (HLR), not a cached NANP table or a quarterly OCN snapshot. That's why we can return the current carrier, line type, and porting status even on a number that's just been ported. No stale offline lists.

Do you store the numbers I look up?

No. Phone numbers are passed to the carrier-data layer for the lookup and discarded. Not stored, not cached, not logged. Our usage analytics record metadata only, never the phone number itself.

What about international numbers?

US and Canada (NANP) only, a deliberate scope choice, not a limitation we'll fix. For EU or APAC numbers, use libphonenumber plus a regional vendor.

What happens if my lookup fails?

credits_used: 0. Your dashboard counter doesn't move. We bill for successful work.

Do I need a credit card to start?

No. The Free plan is 500 lookups a month, hard-capped, no card required. Upgrade only when you outgrow it.

Try it on your real numbers.

500 free lookups a month. No credit card. Production key in 60 seconds.

Get my API key