> ## Documentation Index
> Fetch the complete documentation index at: https://docs.linkedcamp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Leads

> Returns leads for a specific campaign, optionally filtered by status.

## Headers

<ParamField header="token" type="string" required>
  Your LinkedCamp API token.
</ParamField>

## Query Parameters

<ParamField query="campaignId" type="string" required>
  The campaign ID to retrieve leads for.
</ParamField>

<ParamField query="status" type="string">
  Filter leads by status.

  Available values: `FOUND`, `VIEWED`, `CONNECT_SENT`, `CONNECTED`, `REPLIED`, `MESSAGE_SENT`, `INMAILS`, `INMAIL_SENT`, `INMAIL_CREDIT`, `WITHDRAWN`
</ParamField>

## Response

<ResponseField name="success" type="boolean">
  Whether the request was successful.
</ResponseField>

<ResponseField name="message" type="string">
  A human-readable result message.
</ResponseField>

<ResponseField name="total" type="number">
  Total number of leads returned.
</ResponseField>

<ResponseField name="data" type="array">
  Array of lead objects.

  <Expandable title="Lead Properties">
    <ResponseField name="profileLink" type="string">
      LinkedIn profile URL.
    </ResponseField>

    <ResponseField name="salesNavLink" type="string">
      Sales Navigator profile URL.
    </ResponseField>

    <ResponseField name="recruiterLink" type="string">
      Recruiter profile URL.
    </ResponseField>

    <ResponseField name="fullName" type="string">
      Lead's full name.
    </ResponseField>

    <ResponseField name="firstName" type="string">
      Lead's first name.
    </ResponseField>

    <ResponseField name="lastName" type="string">
      Lead's last name.
    </ResponseField>

    <ResponseField name="isPremium" type="boolean">
      Whether the lead has a LinkedIn Premium account.
    </ResponseField>

    <ResponseField name="connectionLevel" type="string">
      LinkedIn connection level (1st, 2nd, 3rd).
    </ResponseField>

    <ResponseField name="status" type="string">
      Current lead status in the campaign.
    </ResponseField>

    <ResponseField name="headline" type="string">
      LinkedIn headline.
    </ResponseField>

    <ResponseField name="designation" type="string">
      Job title/designation.
    </ResponseField>

    <ResponseField name="location" type="string">
      Lead's location.
    </ResponseField>

    <ResponseField name="bio" type="string">
      LinkedIn bio/about section.
    </ResponseField>

    <ResponseField name="contact" type="object">
      Contact information.
    </ResponseField>

    <ResponseField name="profileUrn" type="string">
      LinkedIn profile URN.
    </ResponseField>

    <ResponseField name="conversationId" type="string">
      Associated conversation ID.
    </ResponseField>

    <ResponseField name="conversations" type="array">
      List of associated conversations with type and ID.
    </ResponseField>

    <ResponseField name="campaignId" type="string">
      Campaign this lead belongs to.
    </ResponseField>

    <ResponseField name="companyId" type="string">
      Associated company ID.
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.linkedcamp.com/leads?campaignId=60f7a1b2c3d4e5f6a7b8c9d0&status=CONNECTED" \
    -H "token: YOUR_API_TOKEN"
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      "https://api.linkedcamp.com/leads",
      headers={"token": "YOUR_API_TOKEN"},
      params={
          "campaignId": "60f7a1b2c3d4e5f6a7b8c9d0",
          "status": "CONNECTED",
      },
  )
  print(response.json())
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch(
    "https://api.linkedcamp.com/leads?campaignId=60f7a1b2c3d4e5f6a7b8c9d0&status=CONNECTED",
    {
      headers: { "token": "YOUR_API_TOKEN" },
    }
  );
  const data = await response.json();
  console.log(data);
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "message": "Leads found successfully!",
    "total": 25,
    "data": [
      {
        "profileLink": "https://www.linkedin.com/in/johndoe",
        "fullName": "John Doe",
        "firstName": "John",
        "lastName": "Doe",
        "status": "CONNECTED",
        "headline": "CEO at Acme Corp",
        "location": "San Francisco, CA",
        "conversations": [
          {
            "type": "LINKEDIN",
            "conversationId": "60f7a1b2c3d4e5f6a7b8c9d1",
            "url": "https://www.linkedin.com/messaging/thread/..."
          }
        ]
      }
    ]
  }
  ```
</ResponseExample>
