LinkedIn leads API: read qualified leads, signals and engagements from traxy with REST
Read LinkedIn-sourced qualified leads, signals and engagements from traxy's REST API: keys and scopes, filters, pagination, errors, and when to use MCP.

If you want LinkedIn-sourced leads in your own app, dashboard or data warehouse, traxy's REST API lets you read the qualified leads in your workspace, the signals behind them and each lead's engagement history. Create an API key under Integrations > API with the scopes you need, then call https://api.traxy.ai/api/v1/customer/leads with the key as a bearer token. You can filter by ICP match, engagement type (like, comment, repost or post author), date, company, tracked profile or post, and page through results with a cursor. The REST API is for reads; use the MCP connection or integrations when you need actions or delivery. traxy itself can also run the LinkedIn and email outreach to these leads from your own connected accounts after you approve the launch.
Last checked: November 10, 2026, against traxy's API overview, REST quickstart, authentication and scopes and pagination and errors docs.
Is there a LinkedIn API to run my outreach from?
Not from traxy's REST API: it reads your workspace data and doesn't send messages. The API reference lists endpoints that read your leads, their signals, tracked profiles, analytics and attributed meetings, and none that send a LinkedIn message or an email. For what LinkedIn's own APIs allow, see is there a LinkedIn API or MCP for outreach?
The outreach runs in traxy itself. traxy runs your entire LinkedIn GTM end to end, from finding high intent leads from social intent to enriching and researching each one, to running relevant, personalized LinkedIn and email outreach to them on autopilot. You run campaigns in the app, through trax (the traxy agent), or from the traxy MCP in Claude or ChatGPT, where the AI shows what it will do and waits for your yes in chat before anything launches or sends. Messages go out from your own connected LinkedIn and email accounts. Autopilot means the campaign runs on its own once you approve it, or you approve every message. More on LinkedIn and email outreach with traxy.
What the API gives you
traxy finds people engaging on LinkedIn with topics related to your offer and checks them against your lead criteria. The API exposes the results of that work for your workspace:
Endpoint | What it returns |
|---|---|
| API-visible leads, with filters |
| One lead |
| Lead signals with lead, post and tracked-profile context |
| Engagement summaries for one lead |
| Lead counts and aggregate statistics |
| Account-level summaries built from visible active leads |
| Qualified leads for one post |
| Tracked profiles |
| Attributed meetings |
The base URL is https://api.traxy.ai/api/v1. Endpoint pages in the API reference describe the public contract for each one.
Step 1: Create a key with the right scopes
As a workspace admin, open Integrations > API.
Choose Create key and give it a recognizable name, such as "warehouse sync."
Review the scopes. Include
leads:readfor lead reads. Addleads:contact_readonly if you need saved contact details or LinkedIn profile URLs.Create the key, copy it once and store it securely.
API access must be available to your workspace. If key creation is unavailable, review the role or access requirement shown in the app (REST quickstart).
Without contact permission, contact fields and profile URLs are redacted. traxy's docs advise against assuming a key can read contact data because it can read leads (authentication).
Common scopes for read integrations:
Scope | Use it for |
|---|---|
| Leads, signals, engagements and supported meeting records |
| Saved contact details and profile URLs |
| Aggregate performance and meeting analytics, and the qualified leads list for one post |
| Tracked profiles and summaries |
| Active targeting and its history |
A key belongs to one workspace. To read another workspace, create a key there. Don't add workspaceId to REST requests to switch.
Step 2: Make your first request
curl --fail-with-body \
'https://api.traxy.ai/api/v1/customer/leads?limit=1' \
--header "Authorization: Bearer $TRAXY_API_KEY"
Records come back in data, with continuation details in page. An empty result means no API-visible lead matched the request, so check the workspace, filters and lead disposition (REST quickstart).
Keep keys out of browser code and source control. Revoke a key from Integrations > API when you no longer need it.
Step 3: Filter for the leads you want
GET /customer/leads accepts filters including:
minIcpMatchPercentandmaxIcpMatchPercent(0 to 100)engagementTypeorengagementTypes:LIKE,COMMENT,REPOST,POST_AUTHORdateFromanddateTo(date-time)companyNamesandquerymonitoredProfileIdormonitoredProfileIds, andpostId, to scope leads to a tracked profile or postownerIdorownerIds, for leads assigned to specific membersdisposition:ACTIVE,CLIENTorBAD_LEAD(lead listing defaults to active leads)origin:agent,watchlistorall
For example, commenters with an ICP match of 70 or more since November 1:
curl --fail-with-body \
'https://api.traxy.ai/api/v1/customer/leads?engagementType=COMMENT&minIcpMatchPercent=70&dateFrom=2026-11-01T00:00:00Z' \
--header "Authorization: Bearer $TRAXY_API_KEY"
A score filter narrows API-visible leads. It doesn't bypass qualification, deletion, blocklist or workspace access rules (pagination and errors).
Step 4: Get the evidence behind a lead
A lead record tells you who. For why, read the signals and engagements:
GET /customer/leads/signalslists signals with their lead, post and tracked-profile context. It accepts filters such asleadId,postId,relationshipLabelandprofileType.GET /customer/leads/{leadId}/engagementslists engagement summaries for one lead.
Store the source and date with each signal. When someone on your team writes to the lead, they should reference what the person did, at the level the evidence supports. See from a LinkedIn signal to a message you can back up.
Step 5: Page through everything
Lists default to 50 results and accept up to 100 unless an endpoint says otherwise:
Make the first request without a cursor.
Read
page.nextCursor.Pass that exact value as
cursoron the next request.Keep the workspace, filters and sort unchanged.
Stop when
page.nextCursorisnull.
Treat cursors as opaque strings. Invalid or incompatible cursors return validation_failed.
Handle errors
REST errors use one envelope with code, message, status and request_id. What to check for each status:
Status | Check |
|---|---|
| Input validation and supported arguments |
| Missing, expired, revoked or wrong credentials |
| Workspace access or required capability |
| Scope, role, consent or allowed origin |
| Whether the resource exists and is visible in this workspace |
| Rate limiting; follow retry guidance |
| Temporary unavailability; follow |
REST, MCP, or an integration?
You want to | Use |
|---|---|
Read leads into your app, warehouse or dashboard | REST API with an API key |
Work with leads and run campaigns from Claude, ChatGPT, Codex or another AI client | MCP with OAuth (MCP tools) |
Push each new qualified lead to another tool as it arrives | A route to Webhook, Zapier, n8n or Clay (routes) |
REST keys don't authenticate MCP, and MCP uses OAuth rather than a key. The MCP also runs campaigns: from Claude or ChatGPT you can draft one, test it on sample leads, launch it, manage sequences and senders and answer replies, and the AI waits for your yes before anything launches or sends (LinkedIn GTM MCP). For what MCP can do, see what the traxy MCP server can do. For a push setup, see the n8n LinkedIn lead workflow.
Example uses
A nightly warehouse sync that pulls new leads and signals with
dateFromset to the last runA team dashboard that combines lead counts with attributed meetings from
/customer/meetingsAn account view in your BI tool from
/customer/account-reports, sorted by the most recent signalA post report that lists qualified leads for each tracked post
FAQ
Is there an official LinkedIn API for post engagers?
This article covers traxy's API, which returns leads traxy has found and qualified in your workspace. For what LinkedIn's own APIs allow, see is there a LinkedIn API or MCP for outreach?, and for its advertising APIs, our note on the LinkedIn Marketing API 202511 sunset.
Can the traxy REST API send LinkedIn messages or emails?
No. The REST API reads leads, signals, tracked profiles, analytics and meetings. Outreach runs from campaigns in the app, through trax or from the traxy MCP after your yes in chat, and sends from your own connected LinkedIn and email accounts (LinkedIn outbound).
Can I create or update leads through the REST API?
The REST API is described as the public option for application reads. Actions go through the MCP instead: lead actions and webhook delivery with the matching scopes, and campaigns, which launch or send only after your yes in chat.
Why are emails and profile URLs missing from my results?
Your key probably lacks leads:contact_read. Without contact permission, contact fields and profile URLs are redacted.
Does reading leads through the API use lead capacity?
No. A person uses lead capacity once, when first delivered as a qualified lead in your workspace. Reading or exporting them doesn't count them again (plan and capacity).
Next step
Create a read-only key with leads:read in traxy, run the one-lead request above, then add the signals endpoint so every lead in your system carries the reason it was found.


