Leads
List and find leads
/leadsThe workspace’s leads, newest first, a page at a time. Filters combine: a list, a campaign (and each person’s status in it), the lead’s Stage or status, a tag, the app’s search (name, job title, company or LinkedIn link), or what changed since a time. linkedinUrl or email finds one person: everyone saved for them.
Try itSend a real request with your API key
Query
searchstringThe app’s search: matches first and last name, job title, company and LinkedIn link. Up to 200 characters. Example:
acme.listIdstringOnly people in this list.
campaignIdstringOnly people in this campaign.
campaignStatusstringWith campaignId: only people at this point in it. One of
active,waiting_for_acceptance,retrying,paused,needs_review,replied,suppressed,finished,stopped.stagestringOnly leads at this Stage, as the Leads table’s Stage filter. One of
new,queued,contacted,connected,replied,interested,qualified,booked,attended,won,not_interested,no_show,lost,suppressed,blacklisted.statusstringOnly leads with this status. One of
new,queued,contacted,connected,replied,suppressed.tagstringOnly people with this tag (name or ID).
updatedSincestring · date-timeOnly leads that changed at or after this time (see updatedAt). To sync, keep the time you started and send it next time.
linkedinUrlstringFind one person by their LinkedIn link. Example:
https://www.linkedin.com/in/jamie-lee-example.emailstring · emailFind one person by email: the one Salesteam found or was sent. Example:
jamie@example.co.limitintegerLeads per page. Defaults to
100.cursorstringnextCursor from the previous page.
Answer
200 OK Leads.
dataarray of LeadRequiredEach item
idstringRequiredfirstNamestringRequiredlastNamestringRequiredfullNamestringRequiredtitlestringRequiredcompanystringRequiredcompanyShortstringRequiredWhat {{company_short}} (and {{company_name}}) say for this lead in messages: the short name set for them, or the company name cleaned up (no Inc., no tagline).
companyShortSetbooleanRequiredA short company name was set for this lead; false means the automatic one.
locationstringRequiredindustrystringRequiredlinkedinUrlstringRequiredemailstring or nullRequiredA found email, when it is usable.
emailStatusstring or nullRequiredOne of
deliverable,catch_all,unknown.statusstringRequiredOne of
new,queued,contacted,connected,replied,suppressed.stagestringRequiredWhere the person is, as the Leads table’s Stage column says it: Blacklisted or Do not contact (suppressed) first, then an outcome you recorded (interested, qualified, booked, attended, won, no_show, lost), then Interested or Not interested from tags and AI reply tags, else the automatic status (new, queued, contacted, connected, replied). One of
new,queued,contacted,connected,replied,interested,qualified,booked,attended,won,not_interested,no_show,lost,suppressed,blacklisted.tagsarray of stringRequiredcustomFieldsobjectRequiredThe lead's custom field values by field key: text, numbers, dates as YYYY-MM-DD, web addresses, and lists for Multi-select fields.
listsarray of objectRequiredEach item
idstringRequiredThe list's ID.
namestringRequiredThe list's name.
fromPostobject or nullRequiredThe LinkedIn post this person liked or commented on when they were saved from it (Posts › Engagers), kept beside how they were first added. Null when they weren't saved from a post.
Inside it
postUrlstringRequiredtopicstring or nullRequiredWhat the post was about, in the workspace's words: what {{post_topic}} says in messages.
interactionstringRequiredOne of
like,comment.commentstring or nullRequiredTheir comment, up to 300 characters.
yourPostbooleanRequiredThe post is one of the workspace's own.
engagedAtstring · date-timeRequiredsavedAtstring · date-timeRequired
createdAtstring · date-timeRequiredupdatedAtstring · date-timeRequiredThe last time anything about this person changed: their details, lists or tags, an email found, outreach or a reply. What updatedSince filters on.
campaignsarray of LeadCampaignRequiredEach item
campaignobjectRequiredInside it
idstringRequirednamestringRequiredstatusstringRequireddraft: not launched. active: running. paused: stopped by the owner. completed: finished. One of
draft,active,paused,completed.
statusstringRequiredWhere the person is in a campaign. One of
active,waiting_for_acceptance,retrying,paused,needs_review,replied,suppressed,finished,stopped.stepintegerRequiredThe step they are on, from 1.
stepsintegerRequiredsenderobject or nullRequiredThe LinkedIn account reaching out.
Inside it
idstringnamestring
connectionRequestSentAtstring · date-time or nullRequiredacceptedAtstring · date-time or nullRequiredlastContactedAtstring · date-time or nullRequiredmessagesSentintegerRequiredrepliedAtstring · date-time or nullRequiredfinishedAtstring · date-time or nullRequirednextStepAtstring · date-time or nullRequiredWhen the next step is due, while active.
pausedReasonstring or nullRequired
nextCursorstring or nullRequiredPass as
cursorfor the next page; null on the last page.
Errors
- 400 Bad request
invalid_requestinvalid_jsonduplicate_in_request - 401 Unauthorized
unauthorized - 404 Not found
not_foundnot_in_campaign - 429 Too many requests
rate_limited - 500 Server error
server_error
Every error has the same shape. See Errors.