---
updatedAt: 2026-08-21T18:37:58.000Z
agentTools:
  projectIndex: https://docs.apollo.io/llms.txt
---

# Retrieve LinkedIn Profiles for Prospects

## Overview

Use Apollo API to find prospects who match your search criteria, then enrich those people to retrieve their LinkedIn profile URLs.

This tutorial shows how to:

1. Find sales leaders at a specific company with the [people API search](https://docs.apollo.io/reference/people-api-search) endpoint.
2. Pass the returned Apollo person IDs to the [bulk people enrichment](https://docs.apollo.io/reference/bulk-people-enrichment) endpoint.
3. Retrieve the `linkedin_url` for each matched person.

> 🚧 Credits
>
> While people API search doesn't consume credits, bulk people enrichment may use credits based on the data returned and the enrichment options enabled. Check out [Apollo API pricing and credits](https://docs.apollo.io/docs/api-pricing) for details.

## 1: Find Sales Leaders at a Company

To find people in sales leadership roles at Northstar Labs:

1. Call the people API search endpoint:

```http
POST https://api.apollo.io/api/v1/mixed_people/api_search
```

2. Add the following query parameters:

| Parameter                     | Value for this Example                       | Notes                                                                         |
| :---------------------------- | :------------------------------------------- | :---------------------------------------------------------------------------- |
| `person_titles`               | `["sales", "revenue"]`                       | Add each title keyword as a separate string in the array.                     |
| `include_similar_titles`      | `true`                                       | Includes people with related job titles.                                      |
| `person_seniorities`          | `["c_suite", "head", "director", "manager"]` | Filters people by the seniority of their current role.                        |
| `q_organization_domains_list` | `["northstarlabs.example"]`                  | Filters people by the domain of their current employer.                       |
| `per_page`                    | `5`                                          | Sets the number of results returned per page. Enter an integer from 1 to 100. |

3. Add the following keys and values to the header of your request:
   1. **Content-Type**: `application/json`
   2. **Cache-Control**: `no-cache`
   3. **x-api-key**: Enter your Apollo API key.

### cURL Request

The following shows the example as a cURL request:

```curl
curl --request POST \
     --url 'https://api.apollo.io/api/v1/mixed_people/api_search?person_titles[]=sales&person_titles[]=revenue&include_similar_titles=true&person_seniorities[]=c_suite&person_seniorities[]=head&person_seniorities[]=director&person_seniorities[]=manager&q_organization_domains_list[]=northstarlabs.example&per_page=5' \
     --header 'Cache-Control: no-cache' \
     --header 'Content-Type: application/json' \
     --header 'accept: application/json' \
     --header 'x-api-key: YOUR_API_KEY'
```

### Postman Request

As an example, here's how the request can be formatted in Postman. If you prefer to pass parameters via the body of the request, use the `raw` option instead of `form-data`.

![Postman request example.](https://storage.googleapis.com/apollo-public-assets/kb_images/api_tutorials/i0.png)

### Response Details

A successful request returns a `200` response status and JSON data similar to the following response:

```json
{
  "total_entries": 5,
  "people": [
    {
      "id": "690b88979047af00018964d6",
      "first_name": "Leona",
      "last_name_obfuscated": "Va***z",
      "title": "Chief Revenue Officer",
      "last_refreshed_at": "2026-01-27T15:32:57.645+00:00",
      "has_email": true,
      "has_city": true,
      "has_state": true,
      "has_country": true,
      "has_direct_phone": "Yes",
      "organization": {
        "name": "Northstar Labs",
        "has_industry": true,
        "has_phone": true,
        "has_city": true,
        "has_state": true,
        "has_country": true,
        "has_zip_code": true,
        "has_revenue": true,
        "has_employee_count": true
      }
    },
    {
      "id": "61a511f96d769100019865b3",
      "first_name": "Owen",
      "last_name_obfuscated": "Be***t",
      "title": "Head of Sales",
      "last_refreshed_at": "2026-01-22T14:56:15.000+00:00",
      "has_email": true,
      "has_city": true,
      "has_state": true,
      "has_country": true,
      "has_direct_phone": "Maybe: please request direct dial via people/bulk_match",
      "organization": {
        "name": "Northstar Labs",
        "has_industry": true,
        "has_phone": true,
        "has_city": true,
        "has_state": true,
        "has_country": true,
        "has_zip_code": true,
        "has_revenue": true,
        "has_employee_count": true
      }
    },
    {
      "id": "67fd9513c9c77600013a8e0d",
      "first_name": "Imani",
      "last_name_obfuscated": "Ro***s",
      "title": "Director of Sales",
      "last_refreshed_at": "2026-01-15T17:46:16.444+00:00",
      "has_email": true,
      "has_city": true,
      "has_state": true,
      "has_country": true,
      "has_direct_phone": "Yes",
      "organization": {
        "name": "Northstar Labs",
        "has_industry": true,
        "has_phone": true,
        "has_city": true,
        "has_state": true,
        "has_country": true,
        "has_zip_code": true,
        "has_revenue": true,
        "has_employee_count": true
      }
    },
    {
      "id": "60f1b124338c3000015197a5",
      "first_name": "Theo",
      "last_name_obfuscated": "Ma***n",
      "title": "Revenue Operations Director",
      "last_refreshed_at": "2026-01-16T14:49:42.627+00:00",
      "has_email": true,
      "has_city": true,
      "has_state": true,
      "has_country": true,
      "has_direct_phone": "Maybe: please request direct dial via people/bulk_match",
      "organization": {
        "name": "Northstar Labs",
        "has_industry": true,
        "has_phone": true,
        "has_city": true,
        "has_state": true,
        "has_country": true,
        "has_zip_code": true,
        "has_revenue": true,
        "has_employee_count": true
      }
    },
    {
      "id": "65a91ce35b3e6e00016a6b9a",
      "first_name": "Nadia",
      "last_name_obfuscated": "Ha***n",
      "title": "Sales Manager",
      "last_refreshed_at": "2026-01-17T03:20:18.000+00:00",
      "has_email": false,
      "has_city": true,
      "has_state": true,
      "has_country": true,
      "has_direct_phone": "Yes",
      "organization": {
        "name": "Northstar Labs",
        "has_industry": true,
        "has_phone": true,
        "has_city": true,
        "has_state": true,
        "has_country": true,
        "has_zip_code": true,
        "has_revenue": true,
        "has_employee_count": true
      }
    }
  ]
}
```

The following table details some key elements of the API response:

| Element                | Description                                                                                        |
| :--------------------- | :------------------------------------------------------------------------------------------------- |
| `total_entries`        | The total number of people who match the search criteria.                                          |
| `id`                   | The Apollo person ID. Use this value to enrich the person and retrieve their LinkedIn profile URL. |
| `first_name`           | The person's first name.                                                                           |
| `last_name_obfuscated` | An obfuscated version of the person's last name.                                                   |
| `title`                | The person's current job title.                                                                    |
| `organization`         | Availability indicators for data about the person's current employer.                              |

People API search returns limited person and organization data. It doesn't return the LinkedIn profile URL in the search response.

## 2: Retrieve the LinkedIn Profile URLs

Use the Apollo person IDs returned by people API search to retrieve complete person profiles.

To enrich the five people returned in the previous example:

1. Call the bulk people enrichment endpoint:

```http
POST https://api.apollo.io/api/v1/people/bulk_match
```

2. Add a `details` array to the request body. Include one `id` for each person you want to enrich.

```json
{
  "details": [
    {
      "id": "690b88979047af00018964d6"
    },
    {
      "id": "61a511f96d769100019865b3"
    },
    {
      "id": "67fd9513c9c77600013a8e0d"
    },
    {
      "id": "60f1b124338c3000015197a5"
    },
    {
      "id": "65a91ce35b3e6e00016a6b9a"
    }
  ]
}
```

3. Add the following keys and values to the header of your request:
   1. **Content-Type**: `application/json`
   2. **Cache-Control**: `no-cache`
   3. **x-api-key**: Enter your Apollo API key.

### cURL Request

The following shows the example as a cURL request:

```curl
curl --request POST \
     --url 'https://api.apollo.io/api/v1/people/bulk_match?reveal_personal_emails=false&reveal_phone_number=false' \
     --header 'Cache-Control: no-cache' \
     --header 'Content-Type: application/json' \
     --header 'accept: application/json' \
     --header 'x-api-key: YOUR_API_KEY' \
     --data '{
       "details": [
         {
           "id": "690b88979047af00018964d6"
         },
         {
           "id": "61a511f96d769100019865b3"
         },
         {
           "id": "67fd9513c9c77600013a8e0d"
         },
         {
           "id": "60f1b124338c3000015197a5"
         },
         {
           "id": "65a91ce35b3e6e00016a6b9a"
         }
       ]
     }'
```

### Response Details

A successful request returns a `200` response status and a `matches` array containing the enriched person profiles:

```json
{
  "status": "success",
  "error_code": null,
  "error_message": null,
  "total_requested_enrichments": 5,
  "unique_enriched_records": 5,
  "missing_records": 0,
  "matches": [
    {
      "id": "690b88979047af00018964d6",
      "first_name": "Leona",
      "last_name": "Valdez",
      "name": "Leona Valdez",
      "linkedin_url": "https://www.linkedin.com/in/leona-valdez",
      "title": "Chief Revenue Officer",
      "organization": {
        "name": "Northstar Labs",
        "primary_domain": "northstarlabs.example"
      }
    },
    {
      "id": "61a511f96d769100019865b3",
      "first_name": "Owen",
      "last_name": "Bennett",
      "name": "Owen Bennett",
      "linkedin_url": "https://www.linkedin.com/in/owen-bennett",
      "title": "Head of Sales",
      "organization": {
        "name": "Northstar Labs",
        "primary_domain": "northstarlabs.example"
      }
    },
    {
      "id": "67fd9513c9c77600013a8e0d",
      "first_name": "Imani",
      "last_name": "Roberts",
      "name": "Imani Roberts",
      "linkedin_url": "https://www.linkedin.com/in/imani-roberts",
      "title": "Director of Sales",
      "organization": {
        "name": "Northstar Labs",
        "primary_domain": "northstarlabs.example"
      }
    },
    {
      "id": "60f1b124338c3000015197a5",
      "first_name": "Theo",
      "last_name": "Martin",
      "name": "Theo Martin",
      "linkedin_url": "https://www.linkedin.com/in/theo-martin",
      "title": "Revenue Operations Director",
      "organization": {
        "name": "Northstar Labs",
        "primary_domain": "northstarlabs.example"
      }
    },
    {
      "id": "65a91ce35b3e6e00016a6b9a",
      "first_name": "Nadia",
      "last_name": "Hassan",
      "name": "Nadia Hassan",
      "linkedin_url": "https://www.linkedin.com/in/nadia-hassan",
      "title": "Sales Manager",
      "organization": {
        "name": "Northstar Labs",
        "primary_domain": "northstarlabs.example"
      }
    }
  ]
}
```

Use the `linkedin_url` value from each object in the `matches` array to access the person's LinkedIn profile.

| Element        | Description                                               |
| :------------- | :-------------------------------------------------------- |
| `id`           | The Apollo person ID submitted in the enrichment request. |
| `name`         | The person's complete name.                               |
| `linkedin_url` | The URL for the person's LinkedIn profile.                |
| `title`        | The person's current job title.                           |
| `organization` | Details about the person's current employer.              |