Skip to content

Sales Intelligence · Beta

People Data Labs
API integration

Ship Sales Intelligence features without building the integration. Full People Data Labs API access via Proxy and 10+ MCP-ready tools for AI agents — extend models and mappings to fit your product.

Built for specific customer use cases. Issues are resolved quickly.

Talk to us
People Data Labs

Use Cases

Why integrate with People Data Labs

Common scenarios for SaaS companies building People Data Labs integrations for their customers.

01

Embed native lead enrichment in your SalesTech product

Give your end users instant lead and account enrichment inside your CRM or sales platform. When a new lead lands, automatically fetch job titles, LinkedIn URLs, company headcount, and industry so your users skip long forms and manual research.

02

Power an in-app prospecting engine for your users

Let your customers build targeted lists without leaving your product. Translate your UI filters into PDL's Elasticsearch or SQL syntax and run people, company, or job posting searches natively, with pagination handled by Truto.

03

Offer CRM hygiene and job-change tracking in your RevOps SaaS

Help your users prevent CRM decay by detecting when contacts change roles or employers. Poll the person changelogs endpoint on their behalf and surface champion-tracking alerts the moment a past buyer moves.

04

Standardize messy user-imported data in your platform

When your users import CSVs or free-text form data, run it through PDL's clean and enrich endpoints to normalize job titles, locations, companies, and schools into consistent taxonomy — no more duplicate or malformed records in your database.

05

Deanonymize website visitors inside your MarTech platform

Let your ABM or marketing customers see which companies are visiting their sites. Pass captured IPs through PDL's IP enrichment and automatically build retargeting audiences of decision-makers at the identified accounts.

What You Can Build

Ship these features with Truto + People Data Labs

Concrete product features your team can ship faster by leveraging Truto’s People Data Labs integration instead of building from scratch.

01

One-click email-to-profile enrichment

Trigger people_enrich on form submissions or new CRM records to append job title, seniority, company, and social profiles with a confidence score your app can threshold on.

02

Bulk enrichment pipelines for CRM backfills

Use people_bulk_enrich and companies_bulk_enrich to let your users refresh thousands of stale records in a single workflow, with Truto handling batching and retries.

03

Embedded candidate or prospect search

Build a native search UI backed by people_search and companies_search, with autocomplete suggestions for schools, titles, and companies powered by PDL's autocomplete endpoint.

04

Fuzzy identity resolution for record merging

Call people_identify when your users have partial data (phone, address, name fragments) to surface ranked candidate matches for merge-or-update workflows.

05

Champion-tracking job change alerts

Periodically query person_changelogs_search for followed contacts and push Slack, email, or in-app notifications when a tracked buyer changes companies or titles.

06

Data normalization service for imports

Pipe user-provided job titles, locations, companies, and schools through job_titles_enrich, locations_clean, companies_clean, and schools_clean to produce clean, structured records.

07

GDPR/CCPA opt-out automation

Use subject_requests_download to pull PDL's opt-out list on a schedule and automatically purge matching records from your users' databases.

08

Visitor-to-account deanonymization

Combine ips_enrich with people_search to turn anonymous web traffic into named accounts and buying committees inside your marketing product.

SuperAI

People Data Labs AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

people_data_labs_people_search

Search People Data Labs person records with an Elasticsearch query or SQL; 1 credit per returned record, 1-100 per page. Returns: status, data, total, scroll_token. Pass exactly one of query or sql. Paginate by passing the previous scroll_token; a null scroll_token means the last page; no-match queries return an empty result.

people_data_labs_people_enrich

Enrich a single person in People Data Labs. Returns: status, likelihood, data, matched. Required: profile, email, phone, email_hash, lid or pdl_id alone, or name (or first_name + last_name) plus a locator such as company, school, location or postal_code. No-match requests return 404 and are not charged.

people_data_labs_people_bulk_enrich

Bulk enrich up to 100 people in one People Data Labs request; 1 credit per 200 results. Returns a JSON array of per-request objects: data, status, likelihood, and optional metadata. Requires requests (1-100 objects, each with params); set required, include_if_matched, titlecase, data_include, min_likelihood globally.

people_data_labs_people_identify

Identify a person in People Data Labs, returning up to 20 candidate profiles sorted by match score. Returns: status, matches (data, match_score, matched_on). Send at least one of profile, email, phone, email_hash, lid, street_address, locality, region, company, school, location, postal_code, name, or first_name + last_name. Each call consumes 1 credit, billed on 200 and 404; 404 when no match. Rate limit: 10 calls/min.

people_data_labs_people_preview_enrich

Preview a Person Enrichment result in People Data Labs using the same inputs as the Person Enrichment API. Returns: status, likelihood, data. Enterprise purchase only; 404 means no match.

people_data_labs_companies_search

Search People Data Labs company records with an Elasticsearch query (query) or SQL (sql) filter. Returns: status, data, total, scroll_token. Page with scroll_token; size 1-100 (default 1); a 404 not_found (no records matched) is returned as an empty result {status:404, data:[], total:0}.

people_data_labs_companies_enrich

Enrich a single People Data Labs company with a one-to-one match. Returns the matched company record including status, id, name, and likelihood. Requires one of pdl_id, name, ticker, website, or profile. A 404 is returned when no match exists.

people_data_labs_companies_bulk_enrich

Bulk enrich up to 100 People Data Labs companies in one request. Returns a JSON array of per-company results, each with data, status, and likelihood. Credits are deducted per 200-status result. Required: requests (an array of 1-100 objects, each with a params object).

people_data_labs_companies_clean

Clean a company in People Data Labs using its name, website or LinkedIn profile and return the cleaned company record. Returns: status, id, name, website, size, founded, industry, location, linkedin_url, linkedin_id, facebook_url, twitter_url, ticker, type, raw, score, fuzzy_match. Requires at least one of name, website or profile; a 404 means no match was found. Free; 10 requests/min and 10,000/month by default.

list_all_people_data_labs_autocomplete_suggestions

Get People Data Labs autocomplete suggestions (name, count, meta) for one field, such as school or company. Required: field. Free; 60 requests/min and 1,000/day. The vendor's top-level fields array is not returned.

people_data_labs_ips_enrich

Enrich an IPv4/IPv6 address in People Data Labs with matching company data and optional person, location and metadata details. Returns: status, data. Required: ip. Consumes 1 credit per match; unmatched IPs return 404 unbilled; hosting, proxy, tor or relay IPs return 400. Rate limit: 100/min free, 1,000/min paid. IP metadata is a premium add-on (extra price).

people_data_labs_job_postings_search

Search People Data Labs job postings (beta; access must be requested from PDL) using exactly one search mode: field filters (AND-combined) or an Elasticsearch v7.7 query. Consumes 1 credit per record returned; pages via scroll_token. Returns: status, data, total, scroll_token, dataset_version. Required: one field filter or query in the body.

people_data_labs_job_titles_enrich

Clean a raw job title with People Data Labs. Returns: status, data (cleaned_job_title, similar_job_titles, relevant_skills); the reference page shows these three keys at the top level instead, so read both. Required: job_title. A 404 is returned when no matching job title is found; charged per match.

people_data_labs_locations_clean

Clean a free-form location string into a structured location record in People Data Labs. Returns: name, locality, region, subregion, country, continent, type, geo. Required: location. A 404 means the location could not be parsed. Free; 10 requests/min and 10,000/month by default.

people_data_labs_person_changelogs_search

Track person record changes between two People Data Labs dataset versions. Returns: status, data. Required: origin_version and current_version (valid and consecutive). Supply type unless submitting ids instead; each records array holds up to 1000 entries; paginate with the returned scroll_token. Paging is complete when scroll_token is null or PDL answers 404 (returned here as {status:404, data:{}}).

people_data_labs_schools_clean

Clean a school name, website, or LinkedIn profile in People Data Labs and return the cleaned school record. Returns: name, type, id, location, linkedin_url, facebook_url, twitter_url, linkedin_id, website, domain. Requires at least one of name, website, or profile; a 404 means no match was found. Free; 10 requests/min and 10,000/month by default.

people_data_labs_subject_requests_download

Download the list of person IDs that have opted out of People Data Labs data. Takes no input parameters. Returns a plain-text response (not JSON): a first line of pdl_id followed by one PDL ID per line for each opted-out person. Through MCP the list is not returned inline; download it through the Proxy API.

Why Truto

Why use Truto’s MCP server for People Data Labs

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 850+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

How It Works

From zero to integrated

Go live with People Data Labs in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s People Data Labs account

Use Truto’s frontend SDK to connect your customer’s People Data Labs account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call People Data Labs

Truto’s Proxy API is a 1-to-1 mapping of the People Data Labs API. You call us, we call People Data Labs, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate People Data Labs’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about People Data Labs on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

How do end users authenticate their People Data Labs account?

PDL uses API key authentication. Through Truto, your end users paste their PDL API key into a connection UI (or you can proxy a shared key depending on your model), and Truto securely stores and injects it on every request.

Does Truto handle PDL's rate limits and pagination?

Yes. Truto manages PDL's per-minute and per-day rate limits with built-in retries and backoff, and normalizes cursor/scroll pagination across search endpoints so you can stream large result sets without custom logic.

Can I run Elasticsearch and SQL queries through Truto?

Yes. The people_search, companies_search, and job_postings_search tools accept PDL's native Elasticsearch and SQL query syntax, so you can pass through complex boolean logic from your product directly to PDL.

How fresh is the data returned from PDL?

PDL refreshes its datasets on a rolling basis, and each person record includes a dataset version and last-updated timestamp. For change tracking, use person_changelogs_search to compare origin and current versions and detect updates between refreshes.

Can I enrich records in bulk instead of one at a time?

Yes. people_bulk_enrich and companies_bulk_enrich let you submit batches in a single call, which Truto proxies directly to PDL — ideal for CRM backfills or scheduled enrichment jobs.

How do I handle compliance and opt-outs for end users?

Truto exposes subject_requests_download, which returns PDL's opt-out list so you can automate deletion of opted-out records from your users' databases to support GDPR and CCPA obligations.

Can I preview enrichment results before being billed for a match?

Yes. people_preview_enrich lets you check whether PDL has a match for a given input without consuming a full enrichment credit, which is useful for showing availability indicators in your UI.

People Data Labs

Get People Data Labs integrated into your app

Our team understands what it takes to make a People Data Labs integration successful. A short, crisp 30 minute call with folks who understand the problem.