> For the complete documentation index, see [llms.txt](https://docs.stackai.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.stackai.com/integrations/catalog/apollo.md).

# Apollo

Apollo.io sales intelligence and engagement platform. Search and enrich people and organizations, manage contacts and accounts, create deals and tasks, and enroll contacts into sequences.

### Connectors

Choose the connector that matches your authentication method. The options below use the names shown in StackAI.

| Connector        | Authentication |
| ---------------- | -------------- |
| Apollo (API Key) | API Key        |

#### Apollo (API Key)

Connect to Apollo.io with an API key. A master API key is required for most write operations (contacts, accounts, deals, tasks, sequences).

**Set up in Apollo**

1. Sign in to Apollo.io as an admin (or a user with the required permission profile).
2. Open **Settings → Integrations → API Keys** and click **Create new key**.
3. Toggle **Set as master key** so the key can access all endpoints; a master key is required for most write operations, such as creating contacts and accounts.
4. Copy the key and store it securely (you may not be able to view it again).

**Set up in StackAI**

1. Open **Settings → Connections**, add a connection, and select **Apollo (API Key)**.
2. Enter the credentials and connection details in the fields below.
3. Save the connection and check its connection status. Select this saved connection when configuring an action or feature that uses it.

**Connection fields**

| StackAI field | Required | What to enter                                                                                                                                                           |
| ------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| API Key       | Yes      | Apollo.io API key. Most write endpoints (contacts, accounts, tasks, deals, sequences) require a master API key. Generate one from Apollo Settings > Integrations > API. |

**Provider documentation:** [Setup reference](https://docs.apollo.io/docs/create-api-key).

#### Verify the connection

Check that the connection is healthy. Then run a read operation against a resource the connected account can access. A successful connection check confirms authentication; it does not guarantee permission for every action.

If access is denied, check the credential or OAuth permissions, the selected account or environment, and access to the specific resource. Update expired credentials or reconnect after permissions change.

### Use an action

1. Add the required **Apollo** action to the workflow.
2. Select a connection when the action requests one.
3. Complete the required fields. Use the reference picker when a value comes from another workflow step.
4. Run the workflow and inspect the action’s output. Check the result before using it in a later step.

### Actions

#### Search People

Search Apollo's people database by keywords, titles, location, and more.

**Inputs**

| Field                | Type    | Required | Description                                                                  |
| -------------------- | ------- | -------- | ---------------------------------------------------------------------------- |
| Keywords             | string  | No       | Keyword string matched against people records.                               |
| Person Titles        | array   | No       | Job titles to match. Default: \[].                                           |
| Person Locations     | array   | No       | Locations (city, state, country) to match. Default: \[].                     |
| Organization Domains | array   | No       | Limit to people at companies with these domains. Default: \[].               |
| Organization IDs     | array   | No       | Limit to people at organizations with these Apollo IDs. Default: \[].        |
| Seniorities          | array   | No       | Apollo seniority buckets to include. Default: \[].                           |
| Page                 | integer | No       | 1-indexed page number. Minimum: 1. Default: 1.                               |
| Results per page     | integer | No       | Number of results per page (max 100). Minimum: 1. Maximum: 100. Default: 25. |

**Outputs**

| Field         | Type          | Description                                 |
| ------------- | ------------- | ------------------------------------------- |
| People        | object\_array | People matching the search criteria.        |
| Total Entries | number        | Total number of people matching the search. |
| Page          | number        | Current page number.                        |
| Total Pages   | number        | Total number of available pages.            |

#### Enrich Person

Enrich a single person by email, name + domain, or LinkedIn URL.

**Inputs**

| Field                  | Type    | Required | Description                                                         |
| ---------------------- | ------- | -------- | ------------------------------------------------------------------- |
| Email                  | string  | No       | Email address of the person to enrich.                              |
| First Name             | string  | No       | Person's first name (use with last\_name and domain).               |
| Last Name              | string  | No       | Person's last name.                                                 |
| Company Domain         | string  | No       | Employer domain.                                                    |
| LinkedIn URL           | string  | No       | LinkedIn profile URL.                                               |
| Reveal Personal Emails | boolean | No       | Consumes an email credit to reveal personal emails. Default: false. |
| Reveal Phone Number    | boolean | No       | Consumes a credit to reveal phone numbers. Default: false.          |

**Outputs**

| Field   | Type    | Description                             |
| ------- | ------- | --------------------------------------- |
| Person  | object  | Enriched person record.                 |
| Matched | boolean | True if Apollo found a matching person. |

#### Bulk Enrich People

Enrich up to 10 people in a single API call.

**Inputs**

| Field                  | Type    | Required | Description                                                                                                       |
| ---------------------- | ------- | -------- | ----------------------------------------------------------------------------------------------------------------- |
| Details                | array   | Yes      | List of up to 10 people to enrich. Each entry needs an email, or first\_name+last\_name+domain, or linkedin\_url. |
| Reveal Personal Emails | boolean | No       | Consumes credits to reveal personal emails. Default: false.                                                       |
| Reveal Phone Number    | boolean | No       | Consumes credits to reveal phone numbers. Default: false.                                                         |

**Outputs**

| Field         | Type          | Description                                            |
| ------------- | ------------- | ------------------------------------------------------ |
| Matches       | object\_array | List of enriched person records (null where no match). |
| Matched Count | number        | Number of people successfully matched.                 |

#### Search Organizations

Search Apollo's organization database by name, domain, location, size, or industry.

**Inputs**

| Field            | Type    | Required | Description                                                                  |
| ---------------- | ------- | -------- | ---------------------------------------------------------------------------- |
| Name Contains    | string  | No       | Substring match against organization name.                                   |
| Domains          | array   | No       | Filter to specific domains. Default: \[].                                    |
| Locations        | array   | No       | Headquarters locations. Default: \[].                                        |
| Employee Ranges  | array   | No       | Employee-count bucket strings like '11,50'. Default: \[].                    |
| Industries       | array   | No       | Industry strings to match. Default: \[].                                     |
| Page             | integer | No       | 1-indexed page number. Minimum: 1. Default: 1.                               |
| Results per page | integer | No       | Number of results per page (max 100). Minimum: 1. Maximum: 100. Default: 25. |

**Outputs**

| Field         | Type          | Description                                        |
| ------------- | ------------- | -------------------------------------------------- |
| Organizations | object\_array | Matching organizations.                            |
| Total Entries | number        | Total number of organizations matching the search. |
| Page          | number        | Current page.                                      |
| Total Pages   | number        | Total available pages.                             |

#### Enrich Organization

Enrich an organization using its domain.

**Inputs**

| Field  | Type   | Required | Description                                |
| ------ | ------ | -------- | ------------------------------------------ |
| Domain | string | Yes      | Bare domain of the organization to enrich. |

**Outputs**

| Field        | Type    | Description                                             |
| ------------ | ------- | ------------------------------------------------------- |
| Organization | object  | Enriched organization record.                           |
| Matched      | boolean | True if Apollo matched an organization for this domain. |

#### Create Contact

Create a new contact in your Apollo workspace.

**Inputs**

| Field             | Type            | Required | Description                                                                  |
| ----------------- | --------------- | -------- | ---------------------------------------------------------------------------- |
| First Name        | string          | Yes      | Contact's first name.                                                        |
| Last Name         | string          | Yes      | Contact's last name.                                                         |
| Organization Name | string          | No       | Employer name.                                                               |
| Title             | string          | No       | Job title.                                                                   |
| Email             | string          | No       | Primary email address.                                                       |
| Website URL       | string          | No       | Company website URL.                                                         |
| Direct Phone      | string          | No       | Direct phone number.                                                         |
| Mobile Phone      | string          | No       | Mobile phone number.                                                         |
| LinkedIn URL      | string          | No       | LinkedIn profile URL.                                                        |
| Labels            | array           | No       | List labels to apply to the contact. Default: \[].                           |
| Contact Stage     | select (string) | No       | Contact stage to assign. Options load from the selected connection.          |
| Owner             | select (string) | No       | Apollo user who owns the contact. Options load from the selected connection. |
| Run Dedupe        | boolean         | No       | If true, Apollo dedupes against existing contacts. Default: true.            |

**Outputs**

| Field       | Type   | Description                     |
| ----------- | ------ | ------------------------------- |
| Contact     | object | The created contact record.     |
| Contact ID  | string | Apollo contact ID.              |
| Contact URL | string | Apollo app URL for the contact. |

#### Update Contact

Update an existing Apollo contact.

**Inputs**

| Field             | Type            | Required | Description                                                                           |
| ----------------- | --------------- | -------- | ------------------------------------------------------------------------------------- |
| Contact ID        | string          | Yes      | Apollo contact ID to update.                                                          |
| First Name        | string          | No       | New first name.                                                                       |
| Last Name         | string          | No       | New last name.                                                                        |
| Organization Name | string          | No       | New employer name.                                                                    |
| Title             | string          | No       | New job title.                                                                        |
| Email             | string          | No       | New primary email.                                                                    |
| LinkedIn URL      | string          | No       | New LinkedIn URL.                                                                     |
| Labels            | array           | No       | Replace the contact's labels with this list.                                          |
| Contact Stage     | select (string) | No       | New contact stage. Options load from the selected connection.                         |
| Owner             | select (string) | No       | Reassign the contact to a different owner. Options load from the selected connection. |

**Outputs**

| Field       | Type   | Description                     |
| ----------- | ------ | ------------------------------- |
| Contact     | object | Updated contact record.         |
| Contact ID  | string | Apollo contact ID.              |
| Contact URL | string | Apollo app URL for the contact. |

#### Search Contacts

Search contacts in your Apollo workspace by keywords and contact stage.

**Inputs**

| Field            | Type                      | Required | Description                                                                   |
| ---------------- | ------------------------- | -------- | ----------------------------------------------------------------------------- |
| Keywords         | string                    | No       | Free-text keywords matched against contact records.                           |
| Contact Stages   | multiple\_select (string) | No       | Limit to contacts in these stages. Options load from the selected connection. |
| Page             | integer                   | No       | 1-indexed page number. Minimum: 1. Default: 1.                                |
| Results per page | integer                   | No       | Number of results per page (max 100). Minimum: 1. Maximum: 100. Default: 25.  |

**Outputs**

| Field         | Type          | Description                          |
| ------------- | ------------- | ------------------------------------ |
| Contacts      | object\_array | Matching contacts.                   |
| Total Entries | number        | Total contacts matching the filters. |
| Page          | number        | Current page.                        |
| Total Pages   | number        | Total available pages.               |

#### Create Account

Create a new account (company) in Apollo.

**Inputs**

| Field         | Type            | Required | Description                                                                  |
| ------------- | --------------- | -------- | ---------------------------------------------------------------------------- |
| Account Name  | string          | Yes      | Company name.                                                                |
| Domain        | string          | No       | Company primary domain.                                                      |
| Owner         | select (string) | No       | Apollo user who owns the account. Options load from the selected connection. |
| Account Stage | select (string) | No       | Account stage. Options load from the selected connection.                    |
| Phone         | string          | No       | Main company phone.                                                          |
| Address       | string          | No       | Free-form company address.                                                   |
| Labels        | array           | No       | Labels to tag the account with. Default: \[].                                |

**Outputs**

| Field       | Type   | Description                     |
| ----------- | ------ | ------------------------------- |
| Account     | object | The created account record.     |
| Account ID  | string | Apollo account ID.              |
| Account URL | string | Apollo app URL for the account. |

#### Create Deal

Create a new deal (opportunity) in Apollo.

**Inputs**

| Field       | Type            | Required | Description                                                |
| ----------- | --------------- | -------- | ---------------------------------------------------------- |
| Deal Name   | string          | Yes      | Deal name.                                                 |
| Owner       | select (string) | No       | Deal owner. Options load from the selected connection.     |
| Account ID  | string          | No       | Apollo account (company) ID.                               |
| Amount      | number          | No       | Deal amount.                                               |
| Stage       | select (string) | No       | Deal stage. Options load from the selected connection.     |
| Close Date  | date            | No       | Expected close date.                                       |
| Description | textarea        | No       | Free-text description.                                     |
| Is Closed   | boolean         | No       | Whether the deal is closed.                                |
| Is Won      | boolean         | No       | Whether the deal is won.                                   |
| Source      | string          | No       | Deal source.                                               |
| Contact IDs | array           | No       | Apollo contact IDs associated with the deal. Default: \[]. |

**Outputs**

| Field           | Type   | Description                         |
| --------------- | ------ | ----------------------------------- |
| Opportunity     | object | Created opportunity record.         |
| Opportunity ID  | string | Apollo opportunity ID.              |
| Opportunity URL | string | Apollo app URL for the opportunity. |

#### List Deals

List opportunities (deals) in Apollo with optional sorting.

**Inputs**

| Field            | Type    | Required | Description                                                        |
| ---------------- | ------- | -------- | ------------------------------------------------------------------ |
| Sort By          | string  | No       | Field to sort by (e.g. 'amount', 'close\_date').                   |
| Sort Ascending   | boolean | No       | True for ascending order, false for descending.                    |
| Page             | integer | No       | 1-indexed page number. Minimum: 1. Default: 1.                     |
| Results per page | integer | No       | Results per page (max 100). Minimum: 1. Maximum: 100. Default: 25. |

**Outputs**

| Field         | Type          | Description                       |
| ------------- | ------------- | --------------------------------- |
| Opportunities | object\_array | Opportunities on this page.       |
| Total Entries | number        | Total deals matching the filters. |
| Page          | number        | Current page.                     |
| Total Pages   | number        | Total available pages.            |

#### List Sequences

List Apollo sequences (emailer campaigns).

**Inputs**

| Field            | Type    | Required | Description                                                        |
| ---------------- | ------- | -------- | ------------------------------------------------------------------ |
| Name Contains    | string  | No       | Substring match against sequence name.                             |
| Page             | integer | No       | 1-indexed page number. Minimum: 1. Default: 1.                     |
| Results per page | integer | No       | Results per page (max 100). Minimum: 1. Maximum: 100. Default: 25. |

**Outputs**

| Field         | Type          | Description                           |
| ------------- | ------------- | ------------------------------------- |
| Sequences     | object\_array | Sequences on this page.               |
| Total Entries | number        | Total sequences matching the filters. |
| Page          | number        | Current page.                         |
| Total Pages   | number        | Total available pages.                |

#### Add Contacts to Sequence

Enroll Apollo contacts into a sequence, sending from the given mailbox.

**Inputs**

| Field                     | Type            | Required | Description                                                                                         |
| ------------------------- | --------------- | -------- | --------------------------------------------------------------------------------------------------- |
| Sequence                  | select (string) | Yes      | Apollo sequence to enroll contacts into. Options load from the selected connection.                 |
| Contact IDs               | array           | Yes      | Apollo contact IDs to enroll.                                                                       |
| Send From (Email Account) | select (string) | Yes      | Linked Apollo mailbox that will send the emails. Options load from the selected connection.         |
| Start Immediately         | boolean         | No       | If true, contacts are enrolled in the active state and will receive sequence emails. Default: true. |

**Outputs**

| Field               | Type   | Description                                                       |
| ------------------- | ------ | ----------------------------------------------------------------- |
| Sequence ID         | string | Apollo sequence ID contacts were added to.                        |
| Sequence URL        | string | Apollo app URL for the sequence.                                  |
| Added Contact IDs   | array  | Contact IDs successfully enrolled.                                |
| Added Count         | number | Number of contacts added to the sequence.                         |
| Skipped Contact IDs | array  | Contact IDs Apollo did not enroll (e.g. already in the sequence). |
| Skipped Count       | number | Number of contacts skipped by Apollo.                             |

#### Create Task

Create a new task in Apollo.

**Inputs**

| Field       | Type            | Required | Description                                                                  |
| ----------- | --------------- | -------- | ---------------------------------------------------------------------------- |
| Assignee    | select (string) | Yes      | Apollo user assigned to the task. Options load from the selected connection. |
| Contact IDs | array           | Yes      | Apollo contact IDs the task targets.                                         |
| Priority    | select (string) | Yes      | Task priority. Options load from the selected connection.                    |
| Due At      | datetime        | Yes      | Task due date and time.                                                      |
| Type        | select (string) | Yes      | Apollo task type. Options load from the selected connection.                 |
| Status      | select (string) | Yes      | Task status. Options load from the selected connection.                      |
| Note        | textarea        | No       | Free-text note for the task.                                                 |

**Outputs**

| Field   | Type   | Description          |
| ------- | ------ | -------------------- |
| Task    | object | Created task record. |
| Task ID | string | Apollo task ID.      |

### Important behavior

Actions that create, update, send, or delete data can change the connected service. Review their inputs before running them. A retry can repeat an operation; consider this when configuring retries for actions that change data.

The catalog lists the fields and capabilities available in the supplied provider definition. Availability can also depend on your deployment and organization’s Feature Access settings.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.stackai.com/integrations/catalog/apollo.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
