Phone Validator, Carrier & TCPA Litigator Lookup (US, Canada) avatar

Phone Validator, Carrier & TCPA Litigator Lookup (US, Canada)

Pricing

from $12.00 / 1,000 phone credits

Go to Apify Store
Phone Validator, Carrier & TCPA Litigator Lookup (US, Canada)

Phone Validator, Carrier & TCPA Litigator Lookup (US, Canada)

Live US & Canada carrier lookup — not just a format check, and no API key to bring. Get the carrier a number uses today (not when it was issued), line type, deliverability, ported status, TCPA litigator scrub, free state-DNC scrub, landline-SMS routing, IP↔phone geo. No start fee.

Pricing

from $12.00 / 1,000 phone credits

Rating

5.0

(3)

Developer

CheckThatPhone

CheckThatPhone

Maintained by Community

Actor stats

3

Bookmarked

721

Total users

69

Monthly active users

14 days ago

Last modified

Share

Phone Validator, Carrier & TCPA Litigator Lookup — US & Canada

Bulk-verify US & Canada phone numbers with real, live carrier data — not offline format checks. Paste a list of numbers and get back validity, line type, current carrier, deliverability, ported status, geolocation, and optional TCPA litigator scrub, landline-SMS routing, and free state-DNC and DNC-complainer checks. Optionally add an IP to any number for IP↔phone geolocation matching, included with the lookup.

Built for lead validation, CRM hygiene, fraud screening, SMS/voice campaign prep, and TCPA compliance.

⚡ Backed by a validation network that has served 600M+ requests.

Why this actor

Most phone actors only run an offline format check (Google's libphonenumber) — which returns blank carrier for US/Canada, because numbers get ported between carriers and the offline data never sees it. This actor hits live carrier databases, so you get the current carrier (portability-aware), real line type, and deliverability that offline tools can't provide.

  • ✅ Real US/CA carrier & line type (mobile / landline / VoIP) — current, not carrier-at-issuance
  • ✅ Deliverability — knows deactivated, ported, and undeliverable numbers
  • 📍 Built-in geo-IP — add an IP and get IP↔phone geo match (country, state, city, metro, timezone), included with every lookup (not a separate add-on)
  • 🛡️ TCPA litigator scrub — flag known TCPA litigators & serial plaintiffs from industry-leading data
  • 📵 State DNC & complainers checks — free: state do-not-call registries (38 states plus DC) and a national complainer list, each reporting whether it ran
  • 📩 Landline-SMS lookup — detect text-enabled landlines and their messaging provider
  • 🔁 Auto-dedup — one lookup per unique number (or phone+IP pair)
  • 📦 Bulk-native — one run handles a handful or hundreds of thousands of numbers

Geo-IP enrichment 📍

Add an IP after any number — phone,ip — and the result includes the IP validation (ipResult) plus full IP-derived geolocation (geoCountry, geoState, geoCity, geoMetro, timezone, tzOffset, with geoSource: ip). It works for IPv4 and IPv6, and it's included with the base lookup — not a separate add-on. Perfect for fraud screening — compare where the phone is registered against where the IP resolves to catch mismatches at signup.

TCPA litigator scrub 🛡️

Turn on litigator scrub and every number is checked against a daily-refreshed database of known TCPA litigators and serial plaintiffs — the professional filers who seed their numbers into lead lists and turn a single call or text into a $500–$1,500 statutory claim (and a class action from there). Flagged rows come back with litigator, litigator_type, and litigator_name, so you can suppress them before you dial or send — while keeping every clean number you can legitimately contact.

This isn't some bolted-on freebie: 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. At one extra credit per number, it's protection that costs a rounding error next to a single claim.

Pair it with line type + deliverability for a complete pre-send pass: drop litigators, skip deactivated/undeliverable numbers, and route landlines correctly — in one run.

State DNC & complainers checks 📵

Two separate checks, both on by default and free — they never add a credit. The state DNC check screens each number against state do-not-call registries (38 states plus DC, refreshed weekly). The complainers check screens it against a national list of roughly 700,000 people who have lodged complaints against telemarketers but haven't sent a demand letter or filed suit. Each check reports whether it ran (dncStateChecked, dncComplainerChecked) and its match (dncStateResult, dncComplainerResult).

The honest part: 12 states (Colorado, Florida, Indiana, Louisiana, Massachusetts, Mississippi, Missouri, Oklahoma, Pennsylvania, Tennessee, Texas, and Wyoming) only distribute their registries to directly registered organizations, so they aren't in the data. Numbers there come back with dncStateChecked: "false" — "not checked", never "clear". The federal DNC registry is not included — scrub it separately.

Pricing & plan limits 💳

Billed per credit, never per run — there is no start fee. One number = 1 credit, +1 if the TCPA litigator scrub is on (every number is screened), +1 if landline-SMS is on and the number is a landline (mobiles are never surcharged). The state-DNC and complainers checks are free. So a number costs 1–3 credits, and you're billed the exact per-row credits the lookup returns — never an estimate.

Your unit price drops with your Apify subscription tier:

FreeStarter / Scale / Business
Price per 1,000 credits$15.00$14.00 / $13.00 / $12.00
Credits per month500Unlimited
Concurrent runs1 at a timeUnlimited
Numbers per runCapped by your Apify prepaid balance (~$5/mo on the free plan)Capped only by the max cost per run you set
Live carrier dataFullFull
Add-ons (litigator, DNC, landline-SMS, geo-IP)All includedAll included
Output fieldsIdenticalIdentical
Start / subscription feeNoneNone

A free account is a full-featured trial — same live carrier data, same add-ons, same output. Only the three caps differ, and none of them fail your run:

  • 500 credits/month, resetting on the 1st (UTC). A run that would exceed the cap finishes successfully with a notice explaining the limit — you are not charged for skipped work.
  • One run at a time. Start a second while the first is still going and it exits with a notice, not an error. Wait for the first to finish.
  • Prepaid balance. When your Apify spending limit can't cover the whole list, the actor trims the run to what fits and logs exactly how many numbers it processed and how many credits remain.

Input

  • Phone numbers — one per line, any format (E.164, national, dashes, parentheses). Most lines are just a number; the IP is optional. To also geo-locate a row, append ,ip to that line only (phone,ip) — without it, geolocation falls back to the number's area code. Duplicates are removed automatically.
  • TCPA litigator scrub — flag professional plaintiffs / serial litigators.
  • Landline SMS lookup — detect text-enabled landlines: messaging provider, country, and whether the landline can receive texts. Off by default (adds 1 credit per landline; mobiles are never surcharged) — turn it on when you plan to text landlines.
  • State DNC & complainers checks — free; state do-not-call registry and complainer-list results, each with a per-number "did it run" flag.
{
"phoneNumbers": [
"6108095225",
"(704) 712-2446",
"515-494-5996",
"+1 212-987-6543",
"6473351234, 99.240.60.100",
"4157012311, 71.76.83.173"
],
"litigatorFilter": true,
"landlineSmsLookup": false,
"dncState": true,
"dncComplainer": true
}

Output

One row per number written to the run's dataset (export as JSON, CSV, or Excel). Fields use the same native names as the CheckThatPhone API docs, so single-call and bulk results are identical.

FieldDescription
subscriberThe number looked up
actionsend / unsubscribe / error — the contact verdict
deliverableWhether it's safe/possible to contact
reasonExplanation when not deliverable (e.g. deactivated)
deactivationDateWhen the carrier deactivated it, if applicable
nanpTypemobile / landline / not-mobile
dipCarrierCurrent carrier (portability-aware)
dipCarrierType / dipCarrierSubTypee.g. mobile / PCS, landline / RBOC
dipPorted / dipLrn / dipOcnPortability + routing details
blackListKnown-bad flag
litigatorLookupWhether the litigator scrub ran for this number (true/false — reflects the TCPA litigator scrub toggle)
litigator / litigator_type / litigator_nameTCPA litigator scrub result — flag, classification, and source list (add-on)
dipMessagingLookupWhether the landline-SMS lookup ran for this number (true/false — reflects the Landline SMS lookup toggle)
dipMessagingEnabled / dipMessagingProvider / dipMessagingCountryCodeLandline-SMS routing (add-on)
dncStateChecked / dncComplainerCheckedWhether that check ran for this number (true/false, or error when it couldn't complete — treat as unavailable, not clear). The state check reads false in the 12 uncovered states.
dncStateResult / dncComplainerResultSTATE DNC / DNC COMPLAINER on a match; empty otherwise. Only meaningful when the matching *Checked field is true.
dncOtherCheckedLegacy: true when either check ran. Use the per-check fields above.
dncStateCoveredDeprecated: same answer as dncStateChecked. Kept for existing integrations.
smsEligible / doNotSmsSMS-eligibility flags (present only when true, inverses of each other): can receive SMS vs. should not be texted (undeliverable or a known TCPA litigator)
ipResultIP validation (valid-v4 / valid-v6) — when an IP is supplied
geoCountry / geoState / geoCity / geoMetroGeolocation (IP-derived when an IP is supplied, else area-code)
geoSourceip or area-code
timezone / tzOffsetIANA timezone + UTC offset

Disclaimer

The litigator and do-not-call signals are informational screening data, not legal advice. A flag (or its absence) is not a determination that contacting a number is lawful, and it does not guarantee compliance with the TCPA, federal or state do-not-call rules, or any other law. Data is refreshed on the schedules described above and can be incomplete. You remain responsible for your own outbound compliance — consent records, internal opt-outs, the federal Do-Not-Call registry, registries in states not covered by our data, and legal review where appropriate.

Notes

  • Coverage: United States & Canada (NANP). Non-NANP numbers are skipped.
  • Scale: one run handles up to ~1M numbers; large lists may take a while — the run polls to completion on its own.
  • Dedup: the same number with two different IPs is two distinct lookups (each is a separate geo check); the same number+IP twice is one.
  • Billing: see Pricing & plan limits above — 1–3 credits per number depending on which paid add-ons engage, billed on the exact per-row credits returned.