Whitepages Leads Scraper avatar

Whitepages Leads Scraper

Pricing

from $15.00 / 1,000 results

Go to Apify Store
Whitepages Leads Scraper

Whitepages Leads Scraper

Find and collect qualified leads from public records by name, phone number, or address. Extract phone numbers, addresses, relatives, contact details, and match confidence into clean, structured data for lead generation and research.

Pricing

from $15.00 / 1,000 results

Rating

0.0

(0)

Developer

SearchShark Tools

SearchShark Tools

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 hours ago

Last modified

Categories

Share

๐Ÿ”Ž Skip Trace & Reverse Lookup

Skip Trace & Reverse Lookup searches U.S. and Canadian public-record data by name, phone number, or address and returns clean, structured results for research, lead enrichment, and automation.

  • ๐Ÿ‘ค Search people by name + location
  • ๐Ÿ“ž Reverse lookup phone numbers
  • ๐Ÿ  Reverse lookup street addresses
  • ๐Ÿ“ฆ Process multiple records in one run
  • ๐Ÿงญ Automatically choose the lookup mode
  • ๐Ÿ“Š Get match confidence and match evidence
  • ๐Ÿ†” Keep every result connected to your original row
  • โš ๏ธ Separate real no-matches from provider failures

This Actor returns possible public-record matches. It does not verify identity and is not intended for FCRA-regulated decisions.


๐ŸŒ Supported Regions

US โœ…

  • People search
  • Reverse phone
  • Reverse address

Canada โœ…

  • People search
  • Reverse phone
  • Reverse address

Set country on each record to US or CA. If omitted, it defaults to US. For Canada, province and postalCode are supported aliases for state and zip.

UK, Australia, and other regions are not supported in the current version.

๐Ÿ“ฆ What data can it return?

๐Ÿ†” Input row ID๐Ÿ”— External lead ID
๐Ÿ” Lookup mode๐Ÿšฆ Resolution status
๐Ÿ† Candidate rank๐Ÿ“Š Match confidence
๐Ÿงพ Match evidenceโš ๏ธ Ambiguity reason
๐Ÿ‘ค Full name๐Ÿชช Aliases
๐ŸŽ‚ Age when available๐Ÿ  Current address
๐Ÿ—‚ Past addressesโ˜Ž๏ธ Phone numbers
๐Ÿ“ฑ Best phone๐Ÿ“ž Phone type when available
๐Ÿ“ก Carrier when available๐Ÿ‘ช Relatives
๐Ÿ‘ฅ Possible associates๐Ÿ”— Source URL when available
๐Ÿ•’ Scrape timestampโœ… Success / error metadata

Missing fields are returned as null or empty arrays. The Actor does not invent missing data.


๐Ÿš€ Features

  • 3 lookup modes: people, reverse phone, reverse address
  • Automatic lookup detection from the fields in each record
  • Bulk input through records[]
  • Row traceability with inputRowId and externalLeadId
  • Deterministic match scoring
  • Explainable evidence through matchEvidence
  • Configurable confidence threshold
  • Ambiguous-match handling
  • Candidate deduplication
  • Retryable provider-failure states
  • Structured Apify Dataset output
  • JSON, CSV, API, and integration friendly

โฌ‡๏ธ Input

The main input is:

records[]

Each object in records is one lookup.

๐Ÿ‘ค People lookup

Provide a name plus location context.

{
"inputRowId": "lead-001",
"fullName": "Jane Example",
"city": "Austin",
"state": "TX"
}

You can also use firstName and lastName.


๐Ÿ“ž Reverse phone lookup

Provide a phone number.

{
"inputRowId": "lead-002",
"phone": "2025550104"
}

The Actor normalizes phone data before matching.


๐Ÿ  Reverse address lookup

Provide a street address and location.

{
"inputRowId": "lead-003",
"address": "100 Example Ave",
"city": "Austin",
"state": "TX",
"zip": "78701"
}

๐Ÿงญ Automatic lookup selection

lookupMode is optional.

If omitted, the Actor chooses from the available data:

Phone
โ†’ reverse_phone
Address
โ†’ reverse_address
Name + location
โ†’ people
Not enough usable data
โ†’ INVALID_INPUT

You can also explicitly set:

people
reverse_phone
reverse_address

โš™๏ธ Main options

OptionPurpose
maxCandidatesPerRecordLimit candidate rows retained per input record
minimumMatchConfidenceSet the minimum deterministic match score
includeAmbiguousKeep strong near-tie candidates
deduplicatePeopleRemove duplicate person candidates
maxConcurrencyControl parallel processing
maxRetriesControl retry attempts

๐Ÿงช Example bulk input

{
"records": [
{
"inputRowId": "lead-001",
"externalLeadId": "crm-1001",
"fullName": "Jane Example",
"city": "Austin",
"state": "TX"
},
{
"inputRowId": "lead-002",
"externalLeadId": "crm-1002",
"phone": "2025550104"
},
{
"inputRowId": "lead-003",
"externalLeadId": "crm-1003",
"address": "100 Example Ave",
"city": "Austin",
"state": "TX",
"zip": "78701"
}
],
"minimumMatchConfidence": 0.6,
"includeAmbiguous": true,
"deduplicatePeople": true
}

Each record is processed independently.


โฌ†๏ธ Output

Results are stored in the Actor's default Apify Dataset.

Each output row stays linked to the source record through inputRowId and, when supplied, externalLeadId.

๐Ÿ“Š Example result

{
"inputRowId": "lead-001",
"externalLeadId": "crm-1001",
"lookupModeUsed": "people",
"resolutionStatus": "MATCHED",
"candidateRank": 1,
"matchConfidence": 0.8,
"matchEvidence": ["name_match", "city_state_match"],
"fullName": "Jane Example",
"currentAddress": "100 Example Ave, Austin, TX 78701",
"phoneNumbers": ["(202) 555-0104"],
"bestPhone": "(202) 555-0104",
"relatives": [],
"possibleAssociates": [],
"success": true,
"errorCode": null,
"errorMessage": null,
"retryable": false
}

Example values are fictional and only demonstrate the output structure.


๐Ÿšฆ Resolution statuses

StatusMeaning
MATCHEDA candidate met the matching threshold
AMBIGUOUSMultiple strong candidates are too close to safely choose one
NO_MATCHThe lookup completed, but no candidate met the matching rules
PARTIALThe lookup could not complete normally, such as an upstream provider failure
INVALID_INPUTThe input row did not contain enough valid lookup data

โš ๏ธ No-match vs provider failure

These are intentionally different:

Lookup completed with no acceptable candidate
โ†’ NO_MATCH
Provider blocked, skipped, or failed
โ†’ PARTIAL + PROVIDER_FAILED

This helps automated workflows decide whether a row should be retried.


๐Ÿ“Š Match confidence

matchConfidence is a deterministic score based on available evidence.

Matching can use signals such as:

Name
Phone
Address
City
State
ZIP

matchEvidence shows which evidence contributed to the result.

Match confidence is a ranking aid, not proof of identity.


๐Ÿงน Candidate handling

When multiple public-record candidates are returned, the Actor can:

  1. Normalize the input
  2. Deduplicate candidates
  3. Score candidates against the original row
  4. Rank the strongest candidates
  5. Apply minimumMatchConfidence
  6. Return MATCHED, AMBIGUOUS, or NO_MATCH

The Actor prefers an honest ambiguous or no-match result over promoting weak evidence into a confident match.


๐Ÿ”Œ API & integrations

Run the Actor through the Apify API or connect its Dataset to workflows such as:

  • Google Sheets
  • Make
  • Zapier
  • CRMs
  • Internal APIs
  • Data warehouses
  • Lead-processing pipelines
  • AI agents
  • MCP workflows

Use the Actor's API tab in Apify Console for ready-made request examples.


๐Ÿ’ก Example use cases

๐ŸŽฏ Lead enrichment

Start with a name and location and attempt to resolve structured public-record contact data while preserving your lead ID.

๐Ÿ“ž Reverse phone research

Search a phone number and review possible public-record matches with structured match evidence.

๐Ÿ  Address research

Search an address for supported public-record resident or contact information.

๐Ÿงน CRM cleanup

Use inputRowId, externalLeadId, resolutionStatus, and matchConfidence to review results before syncing them downstream.


๐Ÿ“ค Export results

Apify Dataset results can be exported in formats such as:

JSON
CSV
Excel
XML
HTML

โš ๏ธ Current limitations

The current version supports U.S. and Canadian public-record lookups through region-specific providers.

It does not guarantee:

  • A result for every person, phone, or address
  • That public-record information is current or complete
  • Verified identity
  • Phone ownership without supporting returned evidence
  • Email enrichment
  • Consumer-report accuracy
  • Continuous availability of every upstream source

Provider coverage can change between runs.


โš–๏ธ Responsible use

Use this Actor only for lawful public-record research and data workflows.

Do not use it for:

  • Credit eligibility
  • Employment screening
  • Housing or tenant decisions
  • Insurance eligibility or underwriting
  • Stalking or harassment
  • Fraud
  • Discrimination
  • Other unlawful purposes

This Actor is not a consumer report and is not designed for FCRA-regulated decisions.

You are responsible for complying with applicable privacy, public-record, telecommunications, and data-protection laws.


โ“ FAQ

People by name + location
Phone numbers
Street addresses

Can I process multiple records?

Yes. Add multiple objects to records[].

Do I need to select a lookup mode?

No. The Actor can automatically select the mode from the available fields.

What does NO_MATCH mean?

The lookup completed, but no candidate satisfied the Actor's matching rules.

It does not mean that every possible public record was searched.

What does PARTIAL mean?

The lookup could not complete normally. Check:

errorCode
errorMessage
retryable

Is matchConfidence proof of identity?

No. It is a deterministic matching score.

Why are some fields null?

Not every source exposes every field. Missing values are preserved instead of fabricated.

Can I use it through an API?

Yes. Open the Actor's API tab for examples.


๐Ÿ’ฌ Feedback & support

Found a bug or unexpected result?

Use the Actor's Issues tab and include:

lookupModeUsed
resolutionStatus
errorCode
errorMessage

Avoid posting sensitive personal data publicly in issue reports.


๐Ÿš€ Structured skip tracing for automation

Submit a name, phone number, or address and get structured public-record results with traceable row IDs, match confidence, clear no-match handling, and retryable provider-failure states.