Skip to content

Integrations

Connect and manage workspace integrations — Apollo and Instantly — and trigger Apollo list imports.

Full name: campaignstack_list_integrations

integrations:read Read-only Idempotent

List connected integrations for a workspace (Apollo, Instantly, Clay). Returns provider, connection status, and last-tested timestamp. API keys and webhook secrets are never returned — only a boolean indicating they are set. Use campaignstack_connect_apollo or campaignstack_connect_instantly to add integrations.

NameTypeRequiredDefaultDescription
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)

Full name: campaignstack_list_apollo_sources

integrations:read Read-only

List Apollo lists (labels) available in the connected Apollo account. Returns each list’s id, name, and estimated contact count. Use the returned id values with campaignstack_import_apollo_list to import contacts. Requires a connected Apollo integration — use campaignstack_connect_apollo first if needed.

NameTypeRequiredDefaultDescription
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)

Full name: campaignstack_get_apollo_import_progress

integrations:read Read-only Idempotent

Get the progress of an in-flight or recently completed Apollo list import. Returns processedCount, importedCount, totalCount, status (in_progress / completed / failed), and any error message. Poll this after campaignstack_import_apollo_list to track large imports. Use the same listId you passed to import_apollo_list.

NameTypeRequiredDefaultDescription
listIdstringYes(min length: 1)
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)

Full name: campaignstack_connect_apollo

integrations:write Idempotent

Connect an Apollo.io account by providing an API key. Validates the key against the Apollo API and stores the integration. Returns success: true when the key is valid and the integration is connected. Returns success: false (with integrationId still created) when the key fails validation. Use campaignstack_list_apollo_sources after connecting to browse available contact lists.

NameTypeRequiredDefaultDescription
apiKeystringYes(min length: 10)
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)

Full name: campaignstack_connect_instantly

integrations:write Idempotent

Connect an Instantly.ai account by providing an API key. Validates the key against the Instantly API and stores the integration. Returns success: true when the key is valid and the integration is connected. Returns success: false (with integrationId still created) when the key fails validation.

NameTypeRequiredDefaultDescription
apiKeystringYes(min length: 10)
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)

Full name: campaignstack_disconnect_integration

integrations:write Destructive

Disconnect (remove) an integration by provider. Permanently deletes the integration record and its stored credentials. Valid providers: apollo, instantly, clay. Use campaignstack_list_integrations to see which integrations are connected.

NameTypeRequiredDefaultDescription
providerapollo | instantly | clayYesIntegration provider to disconnect
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)

Full name: campaignstack_import_apollo_list

integrations:write

Import leads from an Apollo contact list into CampaignStack. Fetches contacts from the specified Apollo list (up to 50,000 records across 500 pages) and creates or merges leads. Deduplicates by email and LinkedIn URL. Optionally filter by campaign ICP with onlyMatchingIcp: true. For large lists this runs asynchronously — use campaignstack_get_apollo_import_progress to check status. Use campaignstack_list_apollo_sources to find valid listId values.

NameTypeRequiredDefaultDescription
listIdstringYes(min length: 1)
listNamestringNoDisplay name for the Apollo list (for progress tracking)
listCountintegerNoExpected total contact count (for progress display) (min: 0)
campaignIdstringNoCampaign ID to filter by ICP (requires onlyMatchingIcp: true)
onlyMatchingIcpbooleanNoImport only contacts matching the campaign ICP
workspaceIdstringNoWorkspace ID (defaults to the bound workspace)