Bundled by default
Five signals from one endpoint. No second vendor for scrub or SMS reachability.
US + Canada · Phone Validation API
Validation, carrier DIP, geoIP, TCPA litigator scrub and landline-SMS reachability. No demos to book, no sales calls to attend.
/v1/lookup {
"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"
}
} Try It Free
Validation, carrier DIP, geoIP, TCPA litigator scrub, and landline-SMS reachability. Two optional add-ons when you need them.
01 / 05
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.
nanpTypedeliverableaction02 / 05
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.
dipCarrierdipCarrierTypedipOcndipLrndipPorted03 / 05
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.
geoStategeoCitygeoMetrotimezone04 / 05
One serial plaintiff can turn a single text into a $500–$1,500 claim. We screen against industry-leading litigation data — the same caliber the largest TCPA-compliance platforms rely on — built from federal and state court records and demand-letter activity, refreshed daily. A match flips the recommendation to unsubscribe.
litigatorlitigator_typelitigator_name05 / 05
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.
dipMessagingEnableddipMessagingCarrierdipMessagingLookupMore
Every field returned by the API, every opt-in flag, every error code, every edge case.
500 free lookups every month. Production key in seconds.
Get API keyWhy CheckThatPhone
Five signals from one endpoint. No second vendor for scrub or SMS reachability.
Every lookup is a live HLR query, not a cached list. Current carrier, even on freshly ported numbers.
As low as $0.001 per call at volume. Free tier: 500 lookups a month, hard-capped (no overage surprises).
See pricing →Phone numbers pass to the lookup and are discarded. Never stored, cached, or logged.
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.
From industry-leading litigation-data systems — the same caliber of data the largest TCPA-compliance platforms run on — built from federal and state court records, demand-letter activity, and known professional-filer numbers, and refreshed daily. We never repackage stale lists.
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.
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.
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.
credits_used: 0. Your dashboard counter doesn't move. We bill for successful work.
Yes, we ask for a card to verify your account and stop sign-up farming — but the Free plan is hard-capped at 500 lookups/month with no overage, so the card is never charged unless you upgrade to a paid plan.
Upload a CSV from your dashboard — up to 1M rows per file. We deduplicate before billing, return the same fields as the live API, and price it per unique number, same as the live API.