Dedup
Search
Dedup
Cross-list cold-outbound dedup. Classify identifiers as net_new / engaged / bounced / unsubscribed BEFORE you spend.
POST
Dedup
The “pre-flight before you pay” check. You’re about to scrape 10k leads on Apollo for $300 — paste in the LinkedIn URLs (visible for free in Apollo’s preview), get back which ones you already have. Buy only the difference.
You can also pass
At least one of the two is required. The API chunks internally, so there’s no URL-length cap to worry about.
Request
emails, or both:
Body
Up to 50,000 emails per call.
Up to 50,000 LinkedIn URLs per call.
Response
Status values
| Status | Meaning | What to do |
|---|---|---|
net_new | No prior record. | Safe to send / safe to buy. |
engaged | In an active conversation. | Don’t cold-send. |
recent | Contacted in the last 30 days. | Defer. |
bounced | Last delivery bounced (email-only). | Skip. |
unsubscribed | Opted out or marked do-not-contact. | Skip. |
suppressed | Workspace-level suppression policy. | Skip. |
Authentication note
Unlike the other v2 endpoints,/v2/dedup also accepts the workspace JWT — so the in-app Lists page can call it without going through the API key. External integrations use the API key as normal.
When to call it
- Before paying Apollo / Lemlist for a list reveal — classify the LinkedIn URLs first
- As a CSV pre-flight in your own workflow — drop a 5k-row list, send only the
net_newrows - In a workspace audit — how much of last quarter’s $X list spend was already in our pipeline?