On this page

GET/campaigns/:campaignId/leads/:leadId

Credits: 0
LinkedIn risk: None
Rate limit: Global only


Purpose

Return one stored campaign lead (profile + pipeline state). This is not a live LinkedIn refresh — use POST /linkedin/profiles/lookup for that.


Request

GET /campaigns/search_abc/leads/lead_xyz
X-API-Key: sk_live_...

Response 200

{
  "id": "lead_xyz",
  "fullName": "Jane Doe",
  "firstName": "Jane",
  "lastName": "Doe",
  "linkedinUrl": "https://www.linkedin.com/in/jane-doe/",
  "headline": "...",
  "jobTitle": "VP Sales",
  "location": "London, United Kingdom",
  "companyName": "Acme",
  "companyLinkedin": "https://www.linkedin.com/company/acme/",
  "website": "https://acme.com",
  "email": "jane@acme.com",
  "workExperience": [
    {
      "company": "Acme",
      "position": "VP Sales",
      "location": "London, UK",
      "description": "Ran the EMEA team.",
      "start": "2021-01",
      "end": null
    }
  ],
  "tag": "Interested",
  "replied": true,
  "needsReply": false,
  "stage": "tagged",
  "repliedAt": "2026-03-01T12:00:00.000Z",
  "lastInboundMessageAt": "2026-03-02T15:30:00.000Z",
  "taggedAt": "2026-03-02T15:31:00.000Z",
  "connectionRequestAccepted": true,
  "messageSent": true
}

Includes everything on list leads (including repliedAt, lastInboundMessageAt, taggedAt) plus headline, workExperience (max 10), connectionRequestAccepted, and messageSent.

For last inbound reply time prefer lastInboundMessageAt or GET /activity?type=reply_received — message logs are never returned.

Never returned

Provider / member ids, drafts, inbound message logs, chat ids, or account internals.


Errors

error.codeWhen
unauthorizedMissing/invalid API key
not_foundUnknown campaign or lead
rate_limitedGlobal RPM exceeded

MCP

Tool: get_lead.

See also