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

# apollo

> Prospecting and enrichment

**Server path:** `/apollo` | **Type:** Application | **PCID required:** Yes

## Tools

| Tool                                                            | Description                                                                                                                                                                                                                                                                                      |
| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [`apollo_enrich_person`](#apollo_enrich_person)                 | Enrich a person record using Apollo's data. Find detailed information about a person by email, name, or other identifiers.                                                                                                                                                                       |
| [`apollo_enrich_organization`](#apollo_enrich_organization)     | Enrich an organization/company record using Apollo's data. Get detailed company information by domain.                                                                                                                                                                                           |
| [`apollo_search_people`](#apollo_search_people)                 | Search for people/contacts in Apollo's database using various filters like job titles, company, location, etc. Does not return emails or phone numbers - use People Enrichment for that.                                                                                                         |
| [`apollo_search_organizations`](#apollo_search_organizations)   | Search for organizations/companies in Apollo's database using various filters. Consumes credits.                                                                                                                                                                                                 |
| [`apollo_get_organization_info`](#apollo_get_organization_info) | Get complete information about a specific organization by its Apollo ID. IMPORTANT: You MUST first call apollo\_search\_organizations to get an organization\_id. This tool does NOT accept domain names - only organization\_id from search results.                                            |
| [`apollo_create_account`](#apollo_create_account)               | Create a new account in Apollo CRM. An account is a company your team has explicitly added. Apollo does not deduplicate - if entry has same name/domain as existing account, a new account is created.                                                                                           |
| [`apollo_update_account`](#apollo_update_account)               | Update an existing account in Apollo CRM. To find account IDs, use apollo\_search\_accounts first.                                                                                                                                                                                               |
| [`apollo_search_accounts`](#apollo_search_accounts)             | Search for accounts that have been added to your Apollo CRM. Only returns accounts in your database - use apollo\_search\_organizations to search the full Apollo database.                                                                                                                      |
| [`apollo_get_account`](#apollo_get_account)                     | Retrieve details for an existing account in your Apollo database. To find account IDs, use apollo\_search\_accounts first.                                                                                                                                                                       |
| [`apollo_list_account_stages`](#apollo_list_account_stages)     | List all available account stages in Apollo.                                                                                                                                                                                                                                                     |
| [`apollo_create_contact`](#apollo_create_contact)               | Create a new contact in Apollo CRM. By default, Apollo does not deduplicate - set run\_dedupe to true to enable.                                                                                                                                                                                 |
| [`apollo_update_contact`](#apollo_update_contact)               | Update an existing contact in Apollo CRM. To find contact IDs, use apollo\_search\_contacts first.                                                                                                                                                                                               |
| [`apollo_search_contacts`](#apollo_search_contacts)             | Search for contacts in your Apollo CRM. This returns only contacts your team has added. Display limit: 50,000 records (100 per page, up to 500 pages).                                                                                                                                           |
| [`apollo_get_contact`](#apollo_get_contact)                     | Retrieve details for an existing contact in your Apollo database. Use apollo\_search\_contacts to find contact IDs.                                                                                                                                                                              |
| [`apollo_list_contact_stages`](#apollo_list_contact_stages)     | List all available contact stages in Apollo.                                                                                                                                                                                                                                                     |
| [`apollo_create_deal`](#apollo_create_deal)                     | Create new deals/opportunities in Apollo. Deals track account activity including monetary values, owners, and stages.                                                                                                                                                                            |
| [`apollo_update_deal`](#apollo_update_deal)                     | Update an existing deal/opportunity in Apollo CRM. To find deal IDs, use apollo\_list\_deals first.                                                                                                                                                                                              |
| [`apollo_list_deals`](#apollo_list_deals)                       | List all deals/opportunities in Apollo CRM.                                                                                                                                                                                                                                                      |
| [`apollo_get_deal`](#apollo_get_deal)                           | Get details of a specific deal by ID.                                                                                                                                                                                                                                                            |
| [`apollo_list_deal_stages`](#apollo_list_deal_stages)           | List all available deal/opportunity stages in Apollo.                                                                                                                                                                                                                                            |
| [`apollo_create_task`](#apollo_create_task)                     | Create tasks in Apollo for you and your team. Tasks track upcoming actions like emailing or calling a contact. REQUIRED: user\_id (from apollo\_list\_users) and contact\_ids (from apollo\_search\_contacts). If multiple contact\_ids provided, individual tasks are created for each contact. |
| [`apollo_search_tasks`](#apollo_search_tasks)                   | Search for tasks your team has created in Apollo. Display limit: 50,000 records (100 per page, up to 500 pages).                                                                                                                                                                                 |
| [`apollo_list_users`](#apollo_list_users)                       | Retrieve IDs for all users (teammates) in your Apollo account. User IDs are used in apollo\_create\_deal, apollo\_create\_account, and apollo\_create\_task tools.                                                                                                                               |

***

## apollo\_enrich\_person

Enrich a person record using Apollo's data. Find detailed information about a person by email, name, or other identifiers.

**Parameters:**

| Parameter                | Type    | Required | Default | Description                                                                                                               |
| ------------------------ | ------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------- |
| `first_name`             | string  | No       | —       | First name of the person. Typically used in combination with last\_name                                                   |
| `last_name`              | string  | No       | —       | Last name of the person. Typically used in combination with first\_name                                                   |
| `name`                   | string  | No       | —       | Full name of the person. If provided, you do not need to use first\_name and last\_name                                   |
| `email`                  | string  | No       | —       | Email address of the person to enrich                                                                                     |
| `hashed_email`           | string  | No       | —       | SHA256 hashed email. Use either this OR email, not both                                                                   |
| `organization_name`      | string  | No       | —       | Name of the person's employer. Can be current or previous employer                                                        |
| `domain`                 | string  | No       | —       | Domain name for the person's employer (e.g., "microsoft.com")                                                             |
| `apollo_person_id`       | string  | No       | —       | Apollo ID for the person. Each person in Apollo database is assigned a unique ID                                          |
| `linkedin_url`           | string  | No       | —       | LinkedIn URL for the person (e.g., "[https://www.linkedin.com/in/john-doe](https://www.linkedin.com/in/john-doe)")        |
| `reveal_personal_emails` | boolean | No       | `false` | Set to true to enrich the person's data with personal emails. Requires credits                                            |
| `reveal_phone_number`    | boolean | No       | `false` | Set to true to enrich the person's data with phone numbers. Requires credits                                              |
| `webhook_url`            | string  | No       | —       | Required if reveal\_phone\_number is true. URL where Apollo sends the phone number response. Use UTF-8 encoding if needed |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "first_name": {
        "type": "string",
        "description": "First name of the person. Typically used in combination with last_name"
      },
      "last_name": {
        "type": "string",
        "description": "Last name of the person. Typically used in combination with first_name"
      },
      "name": {
        "type": "string",
        "description": "Full name of the person. If provided, you do not need to use first_name and last_name"
      },
      "email": {
        "type": "string",
        "description": "Email address of the person to enrich"
      },
      "hashed_email": {
        "type": "string",
        "description": "SHA256 hashed email. Use either this OR email, not both"
      },
      "organization_name": {
        "type": "string",
        "description": "Name of the person's employer. Can be current or previous employer"
      },
      "domain": {
        "type": "string",
        "description": "Domain name for the person's employer (e.g., \"microsoft.com\")"
      },
      "apollo_person_id": {
        "type": "string",
        "description": "Apollo ID for the person. Each person in Apollo database is assigned a unique ID"
      },
      "linkedin_url": {
        "type": "string",
        "description": "LinkedIn URL for the person (e.g., \"https://www.linkedin.com/in/john-doe\")"
      },
      "reveal_personal_emails": {
        "type": "boolean",
        "default": false,
        "description": "Set to true to enrich the person's data with personal emails. Requires credits"
      },
      "reveal_phone_number": {
        "type": "boolean",
        "default": false,
        "description": "Set to true to enrich the person's data with phone numbers. Requires credits"
      },
      "webhook_url": {
        "type": "string",
        "description": "Required if reveal_phone_number is true. URL where Apollo sends the phone number response. Use UTF-8 encoding if needed"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_enrich\_organization

Enrich an organization/company record using Apollo's data. Get detailed company information by domain.

**Parameters:**

| Parameter | Type   | Required | Default | Description                                  |
| --------- | ------ | -------- | ------- | -------------------------------------------- |
| `domain`  | string | Yes      | —       | Company domain to enrich (e.g., "apollo.io") |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "domain": {
        "type": "string",
        "description": "Company domain to enrich (e.g., \"apollo.io\")"
      }
    },
    "required": [
      "PCID",
      "domain"
    ]
  }
  ```
</Expandable>

***

## apollo\_search\_people

Search for people/contacts in Apollo's database using various filters like job titles, company, location, etc. Does not return emails or phone numbers - use People Enrichment for that.

**Parameters:**

| Parameter                                    | Type      | Required | Default | Description                                                                                                                         |
| -------------------------------------------- | --------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| `q_keywords`                                 | string    | No       | —       | Keywords to filter the results                                                                                                      |
| `person_titles`                              | string\[] | No       | —       | Job titles to filter by. Results include similar titles. Examples: "sales development representative", "marketing manager"          |
| `include_similar_titles`                     | boolean   | No       | `true`  | Whether to include people with similar job titles. Set to false for exact matches only                                              |
| `person_seniorities`                         | string\[] | No       | —       | Seniority levels to filter by                                                                                                       |
| `person_locations`                           | string\[] | No       | —       | Personal locations (cities, states, countries). Examples: "california", "ireland", "chicago"                                        |
| `contact_email_status`                       | string\[] | No       | —       | Email statuses to filter by                                                                                                         |
| `organization_ids`                           | string\[] | No       | —       | Apollo organization IDs to filter by                                                                                                |
| `q_organization_domains_list`                | string\[] | No       | —       | Company domains to filter by. Up to 1,000 domains. Examples: "apollo.io", "microsoft.com"                                           |
| `organization_locations`                     | string\[] | No       | —       | Company HQ locations (cities, states, countries). Examples: "texas", "tokyo", "spain"                                               |
| `organization_num_employees_ranges`          | string\[] | No       | —       | Employee count ranges. Examples: "1,10", "11,50", "51,200", "201,500", "501,1000", "1001,2000", "2001,5000", "5001,10000", "10001+" |
| `revenue_range_min`                          | number    | No       | —       | Minimum company revenue (no currency symbols or commas)                                                                             |
| `revenue_range_max`                          | number    | No       | —       | Maximum company revenue (no currency symbols or commas)                                                                             |
| `currently_using_any_of_technology_uids`     | string\[] | No       | —       | Filter by companies using ANY of these technologies. Examples: "salesforce", "google\_analytics"                                    |
| `currently_using_all_of_technology_uids`     | string\[] | No       | —       | Filter by companies using ALL of these technologies. Examples: "salesforce", "google\_analytics"                                    |
| `currently_not_using_any_of_technology_uids` | string\[] | No       | —       | Exclude companies using any of these technologies. Examples: "salesforce", "google\_analytics"                                      |
| `q_organization_job_titles`                  | string\[] | No       | —       | Job titles from active job postings at the company. Examples: "sales manager", "research analyst"                                   |
| `organization_job_locations`                 | string\[] | No       | —       | Locations of job postings at the company. Examples: "atlanta", "rome"                                                               |
| `organization_num_jobs_range_min`            | number    | No       | —       | Minimum number of active job postings                                                                                               |
| `organization_num_jobs_range_max`            | number    | No       | —       | Maximum number of active job postings                                                                                               |
| `organization_job_posted_at_range_min`       | string    | No       | —       | Earliest job posting date (YYYY-MM-DD format)                                                                                       |
| `organization_job_posted_at_range_max`       | string    | No       | —       | Latest job posting date (YYYY-MM-DD format)                                                                                         |
| `page`                                       | number    | No       | `1`     | Page number for pagination                                                                                                          |
| `per_page`                                   | number    | No       | `25`    | Results per page (max 100)                                                                                                          |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "q_keywords": {
        "type": "string",
        "description": "Keywords to filter the results"
      },
      "person_titles": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Job titles to filter by. Results include similar titles. Examples: \"sales development representative\", \"marketing manager\""
      },
      "include_similar_titles": {
        "type": "boolean",
        "default": true,
        "description": "Whether to include people with similar job titles. Set to false for exact matches only"
      },
      "person_seniorities": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "owner",
            "founder",
            "c_suite",
            "partner",
            "vp",
            "head",
            "director",
            "manager",
            "senior",
            "entry",
            "intern"
          ]
        },
        "description": "Seniority levels to filter by"
      },
      "person_locations": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Personal locations (cities, states, countries). Examples: \"california\", \"ireland\", \"chicago\""
      },
      "contact_email_status": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "verified",
            "guessed",
            "likely_to_engage",
            "unavailable"
          ]
        },
        "description": "Email statuses to filter by"
      },
      "organization_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Apollo organization IDs to filter by"
      },
      "q_organization_domains_list": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Company domains to filter by. Up to 1,000 domains. Examples: \"apollo.io\", \"microsoft.com\""
      },
      "organization_locations": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Company HQ locations (cities, states, countries). Examples: \"texas\", \"tokyo\", \"spain\""
      },
      "organization_num_employees_ranges": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Employee count ranges. Examples: \"1,10\", \"11,50\", \"51,200\", \"201,500\", \"501,1000\", \"1001,2000\", \"2001,5000\", \"5001,10000\", \"10001+\""
      },
      "revenue_range_min": {
        "type": "number",
        "description": "Minimum company revenue (no currency symbols or commas)"
      },
      "revenue_range_max": {
        "type": "number",
        "description": "Maximum company revenue (no currency symbols or commas)"
      },
      "currently_using_any_of_technology_uids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by companies using ANY of these technologies. Examples: \"salesforce\", \"google_analytics\""
      },
      "currently_using_all_of_technology_uids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by companies using ALL of these technologies. Examples: \"salesforce\", \"google_analytics\""
      },
      "currently_not_using_any_of_technology_uids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Exclude companies using any of these technologies. Examples: \"salesforce\", \"google_analytics\""
      },
      "q_organization_job_titles": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Job titles from active job postings at the company. Examples: \"sales manager\", \"research analyst\""
      },
      "organization_job_locations": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Locations of job postings at the company. Examples: \"atlanta\", \"rome\""
      },
      "organization_num_jobs_range_min": {
        "type": "number",
        "description": "Minimum number of active job postings"
      },
      "organization_num_jobs_range_max": {
        "type": "number",
        "description": "Maximum number of active job postings"
      },
      "organization_job_posted_at_range_min": {
        "type": "string",
        "description": "Earliest job posting date (YYYY-MM-DD format)"
      },
      "organization_job_posted_at_range_max": {
        "type": "string",
        "description": "Latest job posting date (YYYY-MM-DD format)"
      },
      "page": {
        "type": "number",
        "default": 1,
        "description": "Page number for pagination"
      },
      "per_page": {
        "type": "number",
        "default": 25,
        "description": "Results per page (max 100)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_search\_organizations

Search for organizations/companies in Apollo's database using various filters. Consumes credits.

**Parameters:**

| Parameter                                | Type      | Required | Default | Description                                                                                                                                    |
| ---------------------------------------- | --------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `q_organization_domains_list`            | string\[] | No       | —       | Company domains to search. Up to 1,000 domains. Do not include [www](http://www). or @ symbol. Examples: "apollo.io", "microsoft.com"          |
| `organization_num_employees_ranges`      | string\[] | No       | —       | Employee count ranges. Examples: "1,10", "250,500", "10000,20000"                                                                              |
| `organization_locations`                 | string\[] | No       | —       | Company HQ locations (cities, states, countries). Examples: "texas", "tokyo", "spain"                                                          |
| `organization_not_locations`             | string\[] | No       | —       | Locations to exclude from results. Examples: "minnesota", "ireland", "seoul"                                                                   |
| `revenue_range_min`                      | number    | No       | —       | Minimum company revenue (no currency symbols or commas). Example: 300000                                                                       |
| `revenue_range_max`                      | number    | No       | —       | Maximum company revenue (no currency symbols or commas). Example: 50000000                                                                     |
| `currently_using_any_of_technology_uids` | string\[] | No       | —       | Filter by companies using any of these technologies. Use underscores for spaces. Examples: "salesforce", "google\_analytics", "wordpress\_org" |
| `q_organization_keyword_tags`            | string\[] | No       | —       | Keywords associated with companies. Examples: "mining", "sales strategy", "consulting"                                                         |
| `q_organization_name`                    | string    | No       | —       | Company name to search. Partial matches accepted. Examples: "apollo", "mining"                                                                 |
| `organization_ids`                       | string\[] | No       | —       | Apollo organization IDs to filter by. Example: "5e66b6381e05b4008c8331b8"                                                                      |
| `latest_funding_amount_range_min`        | number    | No       | —       | Minimum amount from most recent funding round. Example: 5000000                                                                                |
| `latest_funding_amount_range_max`        | number    | No       | —       | Maximum amount from most recent funding round. Example: 15000000                                                                               |
| `total_funding_range_min`                | number    | No       | —       | Minimum total funding across all rounds. Example: 50000000                                                                                     |
| `total_funding_range_max`                | number    | No       | —       | Maximum total funding across all rounds. Example: 350000000                                                                                    |
| `latest_funding_date_range_min`          | string    | No       | —       | Earliest date of most recent funding (YYYY-MM-DD). Example: "2025-07-25"                                                                       |
| `latest_funding_date_range_max`          | string    | No       | —       | Latest date of most recent funding (YYYY-MM-DD). Example: "2025-09-25"                                                                         |
| `q_organization_job_titles`              | string\[] | No       | —       | Job titles in active postings. Examples: "sales manager", "research analyst"                                                                   |
| `organization_job_locations`             | string\[] | No       | —       | Locations of job postings. Examples: "atlanta", "japan"                                                                                        |
| `organization_num_jobs_range_min`        | number    | No       | —       | Minimum number of active job postings. Examples: 50, 500                                                                                       |
| `organization_num_jobs_range_max`        | number    | No       | —       | Maximum number of active job postings. Examples: 50, 500                                                                                       |
| `organization_job_posted_at_range_min`   | string    | No       | —       | Earliest job posting date (YYYY-MM-DD). Example: "2025-07-25"                                                                                  |
| `organization_job_posted_at_range_max`   | string    | No       | —       | Latest job posting date (YYYY-MM-DD). Example: "2025-09-25"                                                                                    |
| `page`                                   | number    | No       | `1`     | Page number for pagination                                                                                                                     |
| `per_page`                               | number    | No       | `25`    | Results per page (max 100)                                                                                                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "q_organization_domains_list": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Company domains to search. Up to 1,000 domains. Do not include www. or @ symbol. Examples: \"apollo.io\", \"microsoft.com\""
      },
      "organization_num_employees_ranges": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Employee count ranges. Examples: \"1,10\", \"250,500\", \"10000,20000\""
      },
      "organization_locations": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Company HQ locations (cities, states, countries). Examples: \"texas\", \"tokyo\", \"spain\""
      },
      "organization_not_locations": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Locations to exclude from results. Examples: \"minnesota\", \"ireland\", \"seoul\""
      },
      "revenue_range_min": {
        "type": "number",
        "description": "Minimum company revenue (no currency symbols or commas). Example: 300000"
      },
      "revenue_range_max": {
        "type": "number",
        "description": "Maximum company revenue (no currency symbols or commas). Example: 50000000"
      },
      "currently_using_any_of_technology_uids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by companies using any of these technologies. Use underscores for spaces. Examples: \"salesforce\", \"google_analytics\", \"wordpress_org\""
      },
      "q_organization_keyword_tags": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Keywords associated with companies. Examples: \"mining\", \"sales strategy\", \"consulting\""
      },
      "q_organization_name": {
        "type": "string",
        "description": "Company name to search. Partial matches accepted. Examples: \"apollo\", \"mining\""
      },
      "organization_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Apollo organization IDs to filter by. Example: \"5e66b6381e05b4008c8331b8\""
      },
      "latest_funding_amount_range_min": {
        "type": "number",
        "description": "Minimum amount from most recent funding round. Example: 5000000"
      },
      "latest_funding_amount_range_max": {
        "type": "number",
        "description": "Maximum amount from most recent funding round. Example: 15000000"
      },
      "total_funding_range_min": {
        "type": "number",
        "description": "Minimum total funding across all rounds. Example: 50000000"
      },
      "total_funding_range_max": {
        "type": "number",
        "description": "Maximum total funding across all rounds. Example: 350000000"
      },
      "latest_funding_date_range_min": {
        "type": "string",
        "description": "Earliest date of most recent funding (YYYY-MM-DD). Example: \"2025-07-25\""
      },
      "latest_funding_date_range_max": {
        "type": "string",
        "description": "Latest date of most recent funding (YYYY-MM-DD). Example: \"2025-09-25\""
      },
      "q_organization_job_titles": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Job titles in active postings. Examples: \"sales manager\", \"research analyst\""
      },
      "organization_job_locations": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Locations of job postings. Examples: \"atlanta\", \"japan\""
      },
      "organization_num_jobs_range_min": {
        "type": "number",
        "description": "Minimum number of active job postings. Examples: 50, 500"
      },
      "organization_num_jobs_range_max": {
        "type": "number",
        "description": "Maximum number of active job postings. Examples: 50, 500"
      },
      "organization_job_posted_at_range_min": {
        "type": "string",
        "description": "Earliest job posting date (YYYY-MM-DD). Example: \"2025-07-25\""
      },
      "organization_job_posted_at_range_max": {
        "type": "string",
        "description": "Latest job posting date (YYYY-MM-DD). Example: \"2025-09-25\""
      },
      "page": {
        "type": "number",
        "default": 1,
        "description": "Page number for pagination"
      },
      "per_page": {
        "type": "number",
        "default": 25,
        "description": "Results per page (max 100)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_get\_organization\_info

Get complete information about a specific organization by its Apollo ID. IMPORTANT: You MUST first call apollo\_search\_organizations to get an organization\_id. This tool does NOT accept domain names - only organization\_id from search results.

**Parameters:**

| Parameter         | Type   | Required | Default | Description                                                                                                                                                     |
| ----------------- | ------ | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `organization_id` | string | Yes      | —       | Apollo organization ID (required). To find IDs, call apollo\_search\_organizations and identify the organization\_id value. Example: "5e66b6381e05b4008c8331b8" |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "organization_id": {
        "type": "string",
        "description": "Apollo organization ID (required). To find IDs, call apollo_search_organizations and identify the organization_id value. Example: \"5e66b6381e05b4008c8331b8\""
      }
    },
    "required": [
      "PCID",
      "organization_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_create\_account

Create a new account in Apollo CRM. An account is a company your team has explicitly added. Apollo does not deduplicate - if entry has same name/domain as existing account, a new account is created.

**Parameters:**

| Parameter             | Type   | Required | Default | Description                                                                                                                                                        |
| --------------------- | ------ | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `name`                | string | Yes      | —       | Human-readable account name. Example: "The Irish Copywriters"                                                                                                      |
| `domain`              | string | No       | —       | Domain name for the account. Do not include [www](http://www). Examples: "apollo.io", "microsoft.com"                                                              |
| `owner_id`            | string | No       | —       | ID of the account owner within your Apollo account. Use apollo\_list\_users tool to retrieve IDs. Example: "66302798d03b9601c7934ebf"                              |
| `account_stage_id`    | string | No       | —       | Apollo ID for the account stage. Call apollo\_list\_account\_stages to get IDs. If not specified, Apollo auto-assigns a stage. Example: "6095a710bd01d100a506d4b9" |
| `phone`               | string | No       | —       | Primary phone number. Can be HQ, branch, or direct dial. Any format accepted. Examples: "555-303-1234", "+44 7911 123456"                                          |
| `raw_address`         | string | No       | —       | Corporate location (city, state, country). Apollo matches to pre-defined locations. Examples: "Belfield, Dublin 4, Ireland", "Dallas, United States"               |
| `typed_custom_fields` | object | No       | —       | Custom fields as key-value pairs. Keys are custom field IDs from Apollo API. Example: \{"60c39ed82bd02f01154c470a": "2025-08-07"}                                  |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "name": {
        "type": "string",
        "description": "Human-readable account name. Example: \"The Irish Copywriters\""
      },
      "domain": {
        "type": "string",
        "description": "Domain name for the account. Do not include www. Examples: \"apollo.io\", \"microsoft.com\""
      },
      "owner_id": {
        "type": "string",
        "description": "ID of the account owner within your Apollo account. Use apollo_list_users tool to retrieve IDs. Example: \"66302798d03b9601c7934ebf\""
      },
      "account_stage_id": {
        "type": "string",
        "description": "Apollo ID for the account stage. Call apollo_list_account_stages to get IDs. If not specified, Apollo auto-assigns a stage. Example: \"6095a710bd01d100a506d4b9\""
      },
      "phone": {
        "type": "string",
        "description": "Primary phone number. Can be HQ, branch, or direct dial. Any format accepted. Examples: \"555-303-1234\", \"+44 7911 123456\""
      },
      "raw_address": {
        "type": "string",
        "description": "Corporate location (city, state, country). Apollo matches to pre-defined locations. Examples: \"Belfield, Dublin 4, Ireland\", \"Dallas, United States\""
      },
      "typed_custom_fields": {
        "type": "object",
        "additionalProperties": true,
        "description": "Custom fields as key-value pairs. Keys are custom field IDs from Apollo API. Example: {\"60c39ed82bd02f01154c470a\": \"2025-08-07\"}"
      }
    },
    "required": [
      "PCID",
      "name"
    ]
  }
  ```
</Expandable>

***

## apollo\_update\_account

Update an existing account in Apollo CRM. To find account IDs, use apollo\_search\_accounts first.

**Parameters:**

| Parameter             | Type   | Required | Default | Description                                                                                                         |
| --------------------- | ------ | -------- | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `account_id`          | string | Yes      | —       | Apollo ID of the account to update. Use apollo\_search\_accounts to find IDs. Example: "66e9abf95ac32901b20d1a0d"   |
| `name`                | string | No       | —       | Updated account name. Example: "The Fast Irish Copywriters"                                                         |
| `domain`              | string | No       | —       | Updated domain name. Do not include [www](http://www). Examples: "apollo.io", "microsoft.com"                       |
| `owner_id`            | string | No       | —       | Updated owner ID. Use apollo\_list\_users tool to retrieve IDs. Example: "66302798d03b9601c7934ebf"                 |
| `account_stage_id`    | string | No       | —       | Updated account stage ID. Call apollo\_list\_account\_stages to get IDs. Example: "61b8e913e0f4d2012e3af74e"        |
| `raw_address`         | string | No       | —       | Updated corporate location (city, state, country). Examples: "Belfield, Dublin 4, Ireland", "Dallas, United States" |
| `phone`               | string | No       | —       | Updated phone number. Any format accepted. Examples: "555-303-1234", "+44 7911 123456"                              |
| `typed_custom_fields` | object | No       | —       | Custom fields as key-value pairs. Example: \{"60c39ed82bd02f01154c470a": "2025-08-07"}                              |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "account_id": {
        "type": "string",
        "description": "Apollo ID of the account to update. Use apollo_search_accounts to find IDs. Example: \"66e9abf95ac32901b20d1a0d\""
      },
      "name": {
        "type": "string",
        "description": "Updated account name. Example: \"The Fast Irish Copywriters\""
      },
      "domain": {
        "type": "string",
        "description": "Updated domain name. Do not include www. Examples: \"apollo.io\", \"microsoft.com\""
      },
      "owner_id": {
        "type": "string",
        "description": "Updated owner ID. Use apollo_list_users tool to retrieve IDs. Example: \"66302798d03b9601c7934ebf\""
      },
      "account_stage_id": {
        "type": "string",
        "description": "Updated account stage ID. Call apollo_list_account_stages to get IDs. Example: \"61b8e913e0f4d2012e3af74e\""
      },
      "raw_address": {
        "type": "string",
        "description": "Updated corporate location (city, state, country). Examples: \"Belfield, Dublin 4, Ireland\", \"Dallas, United States\""
      },
      "phone": {
        "type": "string",
        "description": "Updated phone number. Any format accepted. Examples: \"555-303-1234\", \"+44 7911 123456\""
      },
      "typed_custom_fields": {
        "type": "object",
        "additionalProperties": true,
        "description": "Custom fields as key-value pairs. Example: {\"60c39ed82bd02f01154c470a\": \"2025-08-07\"}"
      }
    },
    "required": [
      "PCID",
      "account_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_search\_accounts

Search for accounts that have been added to your Apollo CRM. Only returns accounts in your database - use apollo\_search\_organizations to search the full Apollo database.

**Parameters:**

| Parameter             | Type      | Required | Default | Description                                                                                                     |
| --------------------- | --------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------- |
| `q_organization_name` | string    | No       | —       | Keywords to search account names. Must match part of name. Examples: "apollo", "microsoft", "marketing"         |
| `account_stage_ids`   | string\[] | No       | —       | Filter by account stage IDs. Call apollo\_list\_account\_stages to get IDs. Example: "61b8e913e0f4d2012e3af74e" |
| `account_label_ids`   | string\[] | No       | —       | Filter by label IDs. Example: \["6095a710bd01d100a506d4ae"]                                                     |
| `sort_by_field`       | string    | No       | —       | Sort field for results                                                                                          |
| `sort_ascending`      | boolean   | No       | `false` | Set to true for ascending order. Must be used with sort\_by\_field                                              |
| `page`                | number    | No       | `1`     | Page number for pagination                                                                                      |
| `per_page`            | number    | No       | `25`    | Results per page (max 100)                                                                                      |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "q_organization_name": {
        "type": "string",
        "description": "Keywords to search account names. Must match part of name. Examples: \"apollo\", \"microsoft\", \"marketing\""
      },
      "account_stage_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by account stage IDs. Call apollo_list_account_stages to get IDs. Example: \"61b8e913e0f4d2012e3af74e\""
      },
      "account_label_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by label IDs. Example: [\"6095a710bd01d100a506d4ae\"]"
      },
      "sort_by_field": {
        "type": "string",
        "enum": [
          "account_last_activity_date",
          "account_created_at",
          "account_updated_at"
        ],
        "description": "Sort field for results"
      },
      "sort_ascending": {
        "type": "boolean",
        "default": false,
        "description": "Set to true for ascending order. Must be used with sort_by_field"
      },
      "page": {
        "type": "number",
        "default": 1,
        "description": "Page number for pagination"
      },
      "per_page": {
        "type": "number",
        "default": 25,
        "description": "Results per page (max 100)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_get\_account

Retrieve details for an existing account in your Apollo database. To find account IDs, use apollo\_search\_accounts first.

**Parameters:**

| Parameter    | Type   | Required | Default | Description                                                                                                         |
| ------------ | ------ | -------- | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `account_id` | string | Yes      | —       | Apollo ID of the account to retrieve. Use apollo\_search\_accounts to find IDs. Example: "6518c6184f20350001a0b9c0" |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "account_id": {
        "type": "string",
        "description": "Apollo ID of the account to retrieve. Use apollo_search_accounts to find IDs. Example: \"6518c6184f20350001a0b9c0\""
      }
    },
    "required": [
      "PCID",
      "account_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_list\_account\_stages

List all available account stages in Apollo.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_create\_contact

Create a new contact in Apollo CRM. By default, Apollo does not deduplicate - set run\_dedupe to true to enable.

**Parameters:**

| Parameter             | Type      | Required | Default | Description                                                                                                                                                              |
| --------------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `first_name`          | string    | Yes      | —       | Contact first name. Example: "Tim"                                                                                                                                       |
| `last_name`           | string    | Yes      | —       | Contact last name. Example: "Zheng"                                                                                                                                      |
| `organization_name`   | string    | No       | —       | Contact's employer company name. Example: "apollo"                                                                                                                       |
| `title`               | string    | No       | —       | Job title. Example: "Software Engineer"                                                                                                                                  |
| `account_id`          | string    | No       | —       | Apollo account ID to link this contact to a CRM account. Use apollo\_search\_accounts or apollo\_create\_account to get account IDs. Example: "63f53afe4ceeca00016bdd2f" |
| `email`               | string    | No       | —       | Email address. Example: "[john.smith@example.com](mailto:john.smith@example.com)"                                                                                        |
| `website_url`         | string    | No       | —       | Corporate website URL. Example: "[https://www.apollo.io/](https://www.apollo.io/)"                                                                                       |
| `label_names`         | string\[] | No       | —       | Lists to which the contact belongs                                                                                                                                       |
| `contact_stage_id`    | string    | No       | —       | Apollo ID for the contact stage. Example: "6095a710bd01d100a506d4ae"                                                                                                     |
| `owner_id`            | string    | No       | —       | Contact owner ID. Use apollo\_list\_users tool to retrieve IDs.                                                                                                          |
| `present_raw_address` | string    | No       | —       | Personal location for the contact. Example: "Atlanta, United States"                                                                                                     |
| `direct_phone`        | string    | No       | —       | Primary phone number. Example: "555-303-1234"                                                                                                                            |
| `corporate_phone`     | string    | No       | —       | Work/office phone number. Example: "+44 7911 123456"                                                                                                                     |
| `mobile_phone`        | string    | No       | —       | Mobile phone number. Example: "555-303-1234"                                                                                                                             |
| `home_phone`          | string    | No       | —       | Home phone number. Example: "555-303-1234"                                                                                                                               |
| `other_phone`         | string    | No       | —       | Alternative phone number. Example: "555-303-1234"                                                                                                                        |
| `typed_custom_fields` | object    | No       | —       | Custom fields object. Keys are custom field IDs from Apollo API.                                                                                                         |
| `run_dedupe`          | boolean   | No       | `false` | Enable deduplication to prevent duplicate contacts. Default: false                                                                                                       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "first_name": {
        "type": "string",
        "description": "Contact first name. Example: \"Tim\""
      },
      "last_name": {
        "type": "string",
        "description": "Contact last name. Example: \"Zheng\""
      },
      "organization_name": {
        "type": "string",
        "description": "Contact's employer company name. Example: \"apollo\""
      },
      "title": {
        "type": "string",
        "description": "Job title. Example: \"Software Engineer\""
      },
      "account_id": {
        "type": "string",
        "description": "Apollo account ID to link this contact to a CRM account. Use apollo_search_accounts or apollo_create_account to get account IDs. Example: \"63f53afe4ceeca00016bdd2f\""
      },
      "email": {
        "type": "string",
        "description": "Email address. Example: \"john.smith@example.com\""
      },
      "website_url": {
        "type": "string",
        "description": "Corporate website URL. Example: \"https://www.apollo.io/\""
      },
      "label_names": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Lists to which the contact belongs"
      },
      "contact_stage_id": {
        "type": "string",
        "description": "Apollo ID for the contact stage. Example: \"6095a710bd01d100a506d4ae\""
      },
      "owner_id": {
        "type": "string",
        "description": "Contact owner ID. Use apollo_list_users tool to retrieve IDs."
      },
      "present_raw_address": {
        "type": "string",
        "description": "Personal location for the contact. Example: \"Atlanta, United States\""
      },
      "direct_phone": {
        "type": "string",
        "description": "Primary phone number. Example: \"555-303-1234\""
      },
      "corporate_phone": {
        "type": "string",
        "description": "Work/office phone number. Example: \"+44 7911 123456\""
      },
      "mobile_phone": {
        "type": "string",
        "description": "Mobile phone number. Example: \"555-303-1234\""
      },
      "home_phone": {
        "type": "string",
        "description": "Home phone number. Example: \"555-303-1234\""
      },
      "other_phone": {
        "type": "string",
        "description": "Alternative phone number. Example: \"555-303-1234\""
      },
      "typed_custom_fields": {
        "type": "object",
        "additionalProperties": true,
        "description": "Custom fields object. Keys are custom field IDs from Apollo API."
      },
      "run_dedupe": {
        "type": "boolean",
        "default": false,
        "description": "Enable deduplication to prevent duplicate contacts. Default: false"
      }
    },
    "required": [
      "PCID",
      "first_name",
      "last_name"
    ]
  }
  ```
</Expandable>

***

## apollo\_update\_contact

Update an existing contact in Apollo CRM. To find contact IDs, use apollo\_search\_contacts first.

**Parameters:**

| Parameter             | Type      | Required | Default | Description                                                                                                       |
| --------------------- | --------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `contact_id`          | string    | Yes      | —       | Apollo ID of the contact to update. Use apollo\_search\_contacts to find IDs. Example: "66e34b81740c50074e3d1bd4" |
| `first_name`          | string    | No       | —       | Updated first name                                                                                                |
| `last_name`           | string    | No       | —       | Updated last name                                                                                                 |
| `email`               | string    | No       | —       | Updated email address                                                                                             |
| `website_url`         | string    | No       | —       | Updated employer website URL. Example: "[https://www.apollo.io/](https://www.apollo.io/)"                         |
| `title`               | string    | No       | —       | Updated job title                                                                                                 |
| `organization_name`   | string    | No       | —       | Updated organization name                                                                                         |
| `owner_id`            | string    | No       | —       | Updated owner ID                                                                                                  |
| `contact_stage_id`    | string    | No       | —       | Updated contact stage ID                                                                                          |
| `account_id`          | string    | No       | —       | Updated account ID. Use apollo\_search\_accounts to find account IDs.                                             |
| `present_raw_address` | string    | No       | —       | Updated present raw address                                                                                       |
| `direct_phone`        | string    | No       | —       | Updated direct phone                                                                                              |
| `corporate_phone`     | string    | No       | —       | Updated corporate phone                                                                                           |
| `mobile_phone`        | string    | No       | —       | Updated mobile phone                                                                                              |
| `home_phone`          | string    | No       | —       | Updated home phone                                                                                                |
| `other_phone`         | string    | No       | —       | Updated other phone                                                                                               |
| `label_names`         | string\[] | No       | —       | Updated label names                                                                                               |
| `typed_custom_fields` | object    | No       | —       | Updated custom fields                                                                                             |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "contact_id": {
        "type": "string",
        "description": "Apollo ID of the contact to update. Use apollo_search_contacts to find IDs. Example: \"66e34b81740c50074e3d1bd4\""
      },
      "first_name": {
        "type": "string",
        "description": "Updated first name"
      },
      "last_name": {
        "type": "string",
        "description": "Updated last name"
      },
      "email": {
        "type": "string",
        "description": "Updated email address"
      },
      "website_url": {
        "type": "string",
        "description": "Updated employer website URL. Example: \"https://www.apollo.io/\""
      },
      "title": {
        "type": "string",
        "description": "Updated job title"
      },
      "organization_name": {
        "type": "string",
        "description": "Updated organization name"
      },
      "owner_id": {
        "type": "string",
        "description": "Updated owner ID"
      },
      "contact_stage_id": {
        "type": "string",
        "description": "Updated contact stage ID"
      },
      "account_id": {
        "type": "string",
        "description": "Updated account ID. Use apollo_search_accounts to find account IDs."
      },
      "present_raw_address": {
        "type": "string",
        "description": "Updated present raw address"
      },
      "direct_phone": {
        "type": "string",
        "description": "Updated direct phone"
      },
      "corporate_phone": {
        "type": "string",
        "description": "Updated corporate phone"
      },
      "mobile_phone": {
        "type": "string",
        "description": "Updated mobile phone"
      },
      "home_phone": {
        "type": "string",
        "description": "Updated home phone"
      },
      "other_phone": {
        "type": "string",
        "description": "Updated other phone"
      },
      "label_names": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Updated label names"
      },
      "typed_custom_fields": {
        "type": "object",
        "additionalProperties": true,
        "description": "Updated custom fields"
      }
    },
    "required": [
      "PCID",
      "contact_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_search\_contacts

Search for contacts in your Apollo CRM. This returns only contacts your team has added. Display limit: 50,000 records (100 per page, up to 500 pages).

**Parameters:**

| Parameter           | Type      | Required | Default | Description                                                                                                              |
| ------------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------ |
| `q_keywords`        | string    | No       | —       | Keywords to search (names, job titles, employers, emails). Examples: "tim zheng", "senior research analyst", "microsoft" |
| `contact_stage_ids` | string\[] | No       | —       | Filter by contact stage IDs. Call apollo\_list\_contact\_stages to get IDs. Example: \["6095a710bd01d100a506d4ae"]       |
| `contact_label_ids` | string\[] | No       | —       | Filter by contact label IDs. Example: \["6095a710bd01d100a506d4ae"]                                                      |
| `owner_id`          | string    | No       | —       | Filter by owner ID                                                                                                       |
| `account_ids`       | string\[] | No       | —       | Filter by account IDs                                                                                                    |
| `sort_by_field`     | string    | No       | —       | Field to sort results by                                                                                                 |
| `sort_ascending`    | boolean   | No       | `false` | Sort order: true for ascending, false for descending                                                                     |
| `page`              | number    | No       | `1`     | Page number (max 500)                                                                                                    |
| `per_page`          | number    | No       | `25`    | Results per page (max 100). Example: 10                                                                                  |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "q_keywords": {
        "type": "string",
        "description": "Keywords to search (names, job titles, employers, emails). Examples: \"tim zheng\", \"senior research analyst\", \"microsoft\""
      },
      "contact_stage_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by contact stage IDs. Call apollo_list_contact_stages to get IDs. Example: [\"6095a710bd01d100a506d4ae\"]"
      },
      "contact_label_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by contact label IDs. Example: [\"6095a710bd01d100a506d4ae\"]"
      },
      "owner_id": {
        "type": "string",
        "description": "Filter by owner ID"
      },
      "account_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Filter by account IDs"
      },
      "sort_by_field": {
        "type": "string",
        "enum": [
          "contact_last_activity_date",
          "contact_email_last_opened_at",
          "contact_email_last_clicked_at",
          "contact_created_at",
          "contact_updated_at"
        ],
        "description": "Field to sort results by"
      },
      "sort_ascending": {
        "type": "boolean",
        "default": false,
        "description": "Sort order: true for ascending, false for descending"
      },
      "page": {
        "type": "number",
        "default": 1,
        "description": "Page number (max 500)"
      },
      "per_page": {
        "type": "number",
        "default": 25,
        "description": "Results per page (max 100). Example: 10"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_get\_contact

Retrieve details for an existing contact in your Apollo database. Use apollo\_search\_contacts to find contact IDs.

**Parameters:**

| Parameter    | Type   | Required | Default | Description                                                                                                         |
| ------------ | ------ | -------- | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `contact_id` | string | Yes      | —       | Apollo ID of the contact to retrieve. Use apollo\_search\_contacts to find IDs. Example: "66e34b81740c50074e3d1bd4" |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "contact_id": {
        "type": "string",
        "description": "Apollo ID of the contact to retrieve. Use apollo_search_contacts to find IDs. Example: \"66e34b81740c50074e3d1bd4\""
      }
    },
    "required": [
      "PCID",
      "contact_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_list\_contact\_stages

List all available contact stages in Apollo.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_create\_deal

Create new deals/opportunities in Apollo. Deals track account activity including monetary values, owners, and stages.

**Parameters:**

| Parameter              | Type   | Required | Default | Description                                                                                                                                                            |
| ---------------------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name`                 | string | Yes      | —       | Human-readable deal name. Example: "Massive Q3 Deal"                                                                                                                   |
| `owner_id`             | string | No       | —       | Deal owner ID. Use apollo\_list\_users to get IDs. Example: "66302798d03b9601c7934ebf"                                                                                 |
| `account_id`           | string | No       | —       | Apollo account ID (CRM account, not organization\_id). Use apollo\_search\_accounts or apollo\_create\_account to get account IDs. Example: "63f53afe4ceeca00016bdd2f" |
| `amount`               | string | No       | —       | Monetary value (no commas or currency symbols). Currency from account settings. Example: "55123478" results in \$55,123,478                                            |
| `opportunity_stage_id` | string | No       | —       | Deal stage ID. Use apollo\_list\_deal\_stages to get IDs. Example: "6095a710bd01d100a506d4bd"                                                                          |
| `closed_date`          | string | No       | —       | Estimated close date (YYYY-MM-DD). Example: "2025-10-30"                                                                                                               |
| `typed_custom_fields`  | object | No       | —       | Custom fields object. Keys are custom field IDs from Apollo API.                                                                                                       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "name": {
        "type": "string",
        "description": "Human-readable deal name. Example: \"Massive Q3 Deal\""
      },
      "owner_id": {
        "type": "string",
        "description": "Deal owner ID. Use apollo_list_users to get IDs. Example: \"66302798d03b9601c7934ebf\""
      },
      "account_id": {
        "type": "string",
        "description": "Apollo account ID (CRM account, not organization_id). Use apollo_search_accounts or apollo_create_account to get account IDs. Example: \"63f53afe4ceeca00016bdd2f\""
      },
      "amount": {
        "type": "string",
        "description": "Monetary value (no commas or currency symbols). Currency from account settings. Example: \"55123478\" results in $55,123,478"
      },
      "opportunity_stage_id": {
        "type": "string",
        "description": "Deal stage ID. Use apollo_list_deal_stages to get IDs. Example: \"6095a710bd01d100a506d4bd\""
      },
      "closed_date": {
        "type": "string",
        "description": "Estimated close date (YYYY-MM-DD). Example: \"2025-10-30\""
      },
      "typed_custom_fields": {
        "type": "object",
        "additionalProperties": true,
        "description": "Custom fields object. Keys are custom field IDs from Apollo API."
      }
    },
    "required": [
      "PCID",
      "name"
    ]
  }
  ```
</Expandable>

***

## apollo\_update\_deal

Update an existing deal/opportunity in Apollo CRM. To find deal IDs, use apollo\_list\_deals first.

**Parameters:**

| Parameter              | Type   | Required | Default | Description                                                                                               |
| ---------------------- | ------ | -------- | ------- | --------------------------------------------------------------------------------------------------------- |
| `opportunity_id`       | string | Yes      | —       | Apollo ID of the deal to update. Use apollo\_list\_deals to find IDs. Example: "66e09ea8e3cfcf01b2208ec7" |
| `name`                 | string | No       | —       | Updated deal name                                                                                         |
| `owner_id`             | string | No       | —       | Updated owner ID                                                                                          |
| `account_id`           | string | No       | —       | Updated account ID. Use apollo\_search\_accounts to find account IDs.                                     |
| `amount`               | string | No       | —       | Updated monetary value (no commas or currency symbols)                                                    |
| `opportunity_stage_id` | string | No       | —       | Updated deal stage ID                                                                                     |
| `closed_date`          | string | No       | —       | Updated expected close date (YYYY-MM-DD)                                                                  |
| `typed_custom_fields`  | object | No       | —       | Updated custom fields                                                                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "opportunity_id": {
        "type": "string",
        "description": "Apollo ID of the deal to update. Use apollo_list_deals to find IDs. Example: \"66e09ea8e3cfcf01b2208ec7\""
      },
      "name": {
        "type": "string",
        "description": "Updated deal name"
      },
      "owner_id": {
        "type": "string",
        "description": "Updated owner ID"
      },
      "account_id": {
        "type": "string",
        "description": "Updated account ID. Use apollo_search_accounts to find account IDs."
      },
      "amount": {
        "type": "string",
        "description": "Updated monetary value (no commas or currency symbols)"
      },
      "opportunity_stage_id": {
        "type": "string",
        "description": "Updated deal stage ID"
      },
      "closed_date": {
        "type": "string",
        "description": "Updated expected close date (YYYY-MM-DD)"
      },
      "typed_custom_fields": {
        "type": "object",
        "additionalProperties": true,
        "description": "Updated custom fields"
      }
    },
    "required": [
      "PCID",
      "opportunity_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_list\_deals

List all deals/opportunities in Apollo CRM.

**Parameters:**

| Parameter       | Type   | Required | Default | Description                                                                           |
| --------------- | ------ | -------- | ------- | ------------------------------------------------------------------------------------- |
| `sort_by_field` | string | No       | —       | Sort by field: amount (largest first), is\_closed (closed first), is\_won (won first) |
| `page`          | number | No       | —       | Page number. Example: 4                                                               |
| `per_page`      | number | No       | —       | Results per page. Example: 10                                                         |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "sort_by_field": {
        "type": "string",
        "enum": [
          "amount",
          "is_closed",
          "is_won"
        ],
        "description": "Sort by field: amount (largest first), is_closed (closed first), is_won (won first)"
      },
      "page": {
        "type": "number",
        "description": "Page number. Example: 4"
      },
      "per_page": {
        "type": "number",
        "description": "Results per page. Example: 10"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_get\_deal

Get details of a specific deal by ID.

**Parameters:**

| Parameter        | Type   | Required | Default | Description                                                                                          |
| ---------------- | ------ | -------- | ------- | ---------------------------------------------------------------------------------------------------- |
| `opportunity_id` | string | Yes      | —       | ID of the deal to retrieve. Use apollo\_list\_deals to find IDs. Example: "66e09ea8e3cfcf01b2208ec7" |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "opportunity_id": {
        "type": "string",
        "description": "ID of the deal to retrieve. Use apollo_list_deals to find IDs. Example: \"66e09ea8e3cfcf01b2208ec7\""
      }
    },
    "required": [
      "PCID",
      "opportunity_id"
    ]
  }
  ```
</Expandable>

***

## apollo\_list\_deal\_stages

List all available deal/opportunity stages in Apollo.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_create\_task

Create tasks in Apollo for you and your team. Tasks track upcoming actions like emailing or calling a contact. REQUIRED: user\_id (from apollo\_list\_users) and contact\_ids (from apollo\_search\_contacts). If multiple contact\_ids provided, individual tasks are created for each contact.

**Parameters:**

| Parameter     | Type      | Required | Default | Description                                                                                                                                                                                                          |
| ------------- | --------- | -------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `user_id`     | string    | Yes      | —       | ID of the task owner who will take action. Use apollo\_list\_users to get IDs. Example: "66302798d03b9601c7934ebf"                                                                                                   |
| `contact_ids` | string\[] | Yes      | —       | Contact IDs for the task recipients. Use apollo\_search\_contacts to find IDs. Example: \["66e34b81740c50074e3d1bd4"]                                                                                                |
| `priority`    | string    | Yes      | —       | Task priority. Example: "medium"                                                                                                                                                                                     |
| `due_at`      | string    | Yes      | —       | Due date/time in ISO 8601 format. Use UTC/GMT timezone (Z suffix) or specify timezone offset. Examples: "2025-02-15T08:10:30Z" (UTC), "2025-03-25T10:15:30+05:00" (UTC+5). For future dates, use "scheduled" status. |
| `type`        | string    | Yes      | —       | Task type. Use "action\_item" for generic tasks (include note for context).                                                                                                                                          |
| `status`      | string    | Yes      | —       | Task status. Use "scheduled" for future tasks. Example: "scheduled"                                                                                                                                                  |
| `note`        | string    | No       | —       | Task description. Recommended to provide context for the task owner. Example: "This contact expressed interest in the Sequences feature specifically. Be prepared to discuss."                                       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "user_id": {
        "type": "string",
        "description": "ID of the task owner who will take action. Use apollo_list_users to get IDs. Example: \"66302798d03b9601c7934ebf\""
      },
      "contact_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Contact IDs for the task recipients. Use apollo_search_contacts to find IDs. Example: [\"66e34b81740c50074e3d1bd4\"]"
      },
      "priority": {
        "type": "string",
        "enum": [
          "high",
          "medium",
          "low"
        ],
        "description": "Task priority. Example: \"medium\""
      },
      "due_at": {
        "type": "string",
        "description": "Due date/time in ISO 8601 format. Use UTC/GMT timezone (Z suffix) or specify timezone offset. Examples: \"2025-02-15T08:10:30Z\" (UTC), \"2025-03-25T10:15:30+05:00\" (UTC+5). For future dates, use \"scheduled\" status."
      },
      "type": {
        "type": "string",
        "enum": [
          "call",
          "outreach_manual_email",
          "linkedin_step_connect",
          "linkedin_step_message",
          "linkedin_step_view_profile",
          "linkedin_step_interact_post",
          "action_item"
        ],
        "description": "Task type. Use \"action_item\" for generic tasks (include note for context)."
      },
      "status": {
        "type": "string",
        "enum": [
          "scheduled",
          "completed",
          "archived"
        ],
        "description": "Task status. Use \"scheduled\" for future tasks. Example: \"scheduled\""
      },
      "note": {
        "type": "string",
        "description": "Task description. Recommended to provide context for the task owner. Example: \"This contact expressed interest in the Sequences feature specifically. Be prepared to discuss.\""
      }
    },
    "required": [
      "PCID",
      "user_id",
      "contact_ids",
      "priority",
      "due_at",
      "type",
      "status"
    ]
  }
  ```
</Expandable>

***

## apollo\_search\_tasks

Search for tasks your team has created in Apollo. Display limit: 50,000 records (100 per page, up to 500 pages).

**Parameters:**

| Parameter           | Type      | Required | Default | Description                                                                                 |
| ------------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------------- |
| `q_keywords`        | string    | No       | —       | Search keywords                                                                             |
| `status`            | string    | No       | —       | Task status filter                                                                          |
| `priority`          | string    | No       | —       | Priority filter                                                                             |
| `type`              | string    | No       | —       | Task type filter                                                                            |
| `user_id`           | string    | No       | —       | Filter by assigned user ID                                                                  |
| `sort_by_field`     | string    | No       | —       | Sort field. task\_due\_at: most future-dated first. task\_priority: highest priority first. |
| `open_factor_names` | string\[] | No       | —       | Enter "task\_types" to return count of tasks by task type in faceting.task\_types           |
| `page`              | number    | No       | `1`     | Page number (max 500). Example: 4                                                           |
| `per_page`          | number    | No       | `25`    | Results per page (max 100). Example: 10                                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "q_keywords": {
        "type": "string",
        "description": "Search keywords"
      },
      "status": {
        "type": "string",
        "enum": [
          "scheduled",
          "completed",
          "archived"
        ],
        "description": "Task status filter"
      },
      "priority": {
        "type": "string",
        "enum": [
          "low",
          "medium",
          "high"
        ],
        "description": "Priority filter"
      },
      "type": {
        "type": "string",
        "enum": [
          "call",
          "outreach_manual_email",
          "linkedin_step_connect",
          "linkedin_step_message",
          "linkedin_step_view_profile",
          "linkedin_step_interact_post",
          "action_item"
        ],
        "description": "Task type filter"
      },
      "user_id": {
        "type": "string",
        "description": "Filter by assigned user ID"
      },
      "sort_by_field": {
        "type": "string",
        "enum": [
          "task_due_at",
          "task_priority"
        ],
        "description": "Sort field. task_due_at: most future-dated first. task_priority: highest priority first."
      },
      "open_factor_names": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Enter \"task_types\" to return count of tasks by task type in faceting.task_types"
      },
      "page": {
        "type": "number",
        "default": 1,
        "description": "Page number (max 500). Example: 4"
      },
      "per_page": {
        "type": "number",
        "default": 25,
        "description": "Results per page (max 100). Example: 10"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## apollo\_list\_users

Retrieve IDs for all users (teammates) in your Apollo account. User IDs are used in apollo\_create\_deal, apollo\_create\_account, and apollo\_create\_task tools.

**Parameters:**

| Parameter  | Type   | Required | Default | Description                   |
| ---------- | ------ | -------- | ------- | ----------------------------- |
| `page`     | number | No       | `1`     | Page number. Example: 4       |
| `per_page` | number | No       | `25`    | Results per page. Example: 10 |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for Apollo connection"
      },
      "page": {
        "type": "number",
        "default": 1,
        "description": "Page number. Example: 4"
      },
      "per_page": {
        "type": "number",
        "default": 25,
        "description": "Results per page. Example: 10"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>
