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)

Rising star

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

483

Total users

97

Monthly active users

5 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 a free state-DNC & complainers scrub. 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 scrub — free: state do-not-call registries (40 states) + a national complainer list, with an explicit coverage flag
  • 📩 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 scrub 📵

On by default and free — it never adds a credit. Every number is screened against state do-not-call registries (40 states, refreshed weekly) and a national list of ~700k numbers with documented DNC/TCPA complaint history. Matches come back in dncStateResult and dncComplainerResult.

The honest part: 11 states (Florida, Colorado, Indiana, Massachusetts, Missouri, Pennsylvania, Texas, Wyoming, Louisiana, Oklahoma, and Tennessee) only distribute their registries to directly-registered organizations, so they aren't in the data. dncStateCovered says explicitly, per number, whether its state was checked — a blank result in an uncovered state means "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 & complainers scrub is 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 scrub — free; state do-not-call registry + complainer-list results with a per-number coverage 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,
"dncOther": 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)
dncOtherCheckedWhether the DNC scrub ran for this number (true/false, or error when the check couldn't complete — treat as unavailable, not clear)
dncStateResult / dncComplainerResultSTATE DNC / DNC COMPLAINER on a match; empty otherwise (free add-on)
dncStateCoveredWhether the number's state registry is in our data (true/false) — empty state result only means clear when this is true
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.