Bundled by default
Six signals from one endpoint. No second vendor for scrubs or SMS reachability.
US + Canada · Phone Validation API
Validation, carrier DIP, geoIP, TCPA litigator scrub, landline-SMS reachability, and a free state-DNC scrub. 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",
"dncOtherChecked": "true",
"dncStateResult": "STATE DNC",
"dncComplainerResult": "",
"dncStateCovered": "true",
"geoCountry": "US",
"geoState": "UT",
"geoCity": "Salt Lake City",
"geoMetro": 770,
"geoSource": "ip",
"timezone": "America/Denver",
"tzOffset": 7,
"error": "false"
}
} Built for teams in
Try It Free
Validation, carrier DIP, geoIP, TCPA litigator scrub, landline-SMS reachability, and a free state-DNC scrub. Three optional add-ons when you need them.
01 / 06
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 / 06
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 / 06
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 / 06
One serial plaintiff can turn a single text into a $500 to $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 / 06
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.
dipMessagingEnableddipMessagingCarrierdipMessagingLookup06 / 06
Screens against state do-not-call registries (40 states + DC, refreshed weekly) and our national list of ~700k documented DNC/TCPA complainers. dncStateCovered flags the 11 states we don't hold data for, so "no match" never quietly means "not checked".
dncStateResultdncComplainerResultdncStateCoveredMore
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
Six signals from one endpoint. No second vendor for scrubs 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.
Yes — set dncOther: true (free) and we scrub against state do-not-call registries and our national list of ~700k documented DNC/TCPA complainers. We hold registry data for 40 states plus DC, refreshed weekly; for the 11 states we don't cover, dncStateCovered: "false" says so explicitly instead of letting a blank read as clear. The federal DNC registry is not included — scrub it separately.
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. We verify it with your bank without charging it, so no payment is ever taken. The Free plan is hard-capped at 500 lookups/month with no overage, so we never bill you for usage 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.