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

# Get Leads

> Retrieve all enriched leads from a completed enrich job

## Path Parameters

<ParamField path="jobId" type="string" required>
  The job ID from `POST /api/enrich`. Starts with `run_`
</ParamField>

<Warning>
  This endpoint only works for jobs with status `COMPLETED`. If the job is still running, you'll receive an error.
</Warning>

## Request

<CodeGroup>
  ```bash cURL theme={null}
  curl https://api.cheetah-sales.dev/api/enrich/run_cm5x8k9j0000108l4g2h5h3k2/leads \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const jobId = 'run_cm5x8k9j0000108l4g2h5h3k2';

  const response = await fetch(
    `https://api.cheetah-sales.dev/api/enrich/${jobId}/leads`,
    { headers: { 'Authorization': 'Bearer YOUR_API_KEY' } }
  );

  const data = await response.json();

  for (const lead of data.leads) {
    console.log(`${lead.name} - ${lead.email}`);
  }
  ```

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

  job_id = 'run_cm5x8k9j0000108l4g2h5h3k2'

  response = requests.get(
      f'https://api.cheetah-sales.dev/api/enrich/{job_id}/leads',
      headers={'Authorization': 'Bearer YOUR_API_KEY'}
  )

  for lead in response.json()['leads']:
      print(f"{lead['name']} - {lead['email']}")
  ```
</CodeGroup>

## Response

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

<ResponseField name="totalLeads" type="number">
  Total number of leads
</ResponseField>

<ResponseField name="leads" type="array">
  Array of enriched lead objects

  <Expandable title="lead properties">
    <ResponseField name="leads[].id" type="string">
      Unique lead ID
    </ResponseField>

    <ResponseField name="leads[].name" type="string">
      Full name
    </ResponseField>

    <ResponseField name="leads[].title" type="string">
      Job title
    </ResponseField>

    <ResponseField name="leads[].company" type="string">
      Company name
    </ResponseField>

    <ResponseField name="leads[].location" type="string">
      Geographic location
    </ResponseField>

    <ResponseField name="leads[].linkedinUrl" type="string">
      LinkedIn profile URL
    </ResponseField>

    <ResponseField name="leads[].email" type="string">
      Work email (70-85% coverage)
    </ResponseField>

    <ResponseField name="leads[].phone" type="string">
      Phone number (40-60% coverage)
    </ResponseField>

    <ResponseField name="leads[].address" type="string">
      Company address
    </ResponseField>

    <ResponseField name="leads[].enrichmentStatus" type="string">
      Status: `enriched`, `pending`, or `failed`
    </ResponseField>
  </Expandable>
</ResponseField>

```json Response theme={null}
{
  "success": true,
  "jobId": "run_cm5x8k9j0000108l4g2h5h3k2",
  "listId": "550e8400-e29b-41d4-a716-446655440000",
  "totalLeads": 25,
  "leads": [
    {
      "id": "lead-uuid-1",
      "name": "Jane Doe",
      "title": "VP of Engineering",
      "company": "TechCorp",
      "location": "San Francisco Bay Area",
      "linkedinUrl": "https://www.linkedin.com/in/janedoe",
      "email": "jane.doe@techcorp.com",
      "phone": "+1-555-123-4567",
      "address": "123 Tech Street, San Francisco, CA 94105",
      "enrichmentStatus": "enriched"
    },
    {
      "id": "lead-uuid-2",
      "name": "John Smith",
      "title": "Director of Engineering",
      "company": "StartupXYZ",
      "location": "New York City",
      "linkedinUrl": "https://www.linkedin.com/in/johnsmith",
      "email": "john@startupxyz.com",
      "phone": null,
      "address": "456 Startup Ave, New York, NY 10001",
      "enrichmentStatus": "enriched"
    }
  ]
}
```

## Data Coverage

| Data Point | Coverage |
| ---------- | -------- |
| Email      | 70-85%   |
| Phone      | 40-60%   |
| Address    | 80-90%   |

<Tip>
  Leads with `failed` enrichmentStatus will still have basic info (name, title, company, LinkedIn URL) but may be missing email/phone.
</Tip>
