View as Markdown
Apollo icon

Apollo ACTION

Create or Update Contact

Creates a new contact or updates an existing one in your Apollo CRM. To create, omit contactId and provide at least an email. To update, provide the contactId and any fields to change. Use Search Contacts to find existing contacts by name or email before updating. Use List Metadata (type contact_stages) to discover valid stage IDs. The accountId links this contact to a company — use Search Accounts to find the account ID. See the documentation
  • Action
  • Writes data
  • OAuth
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Apollo account once, then configure and run Create or Update Contact from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "apollo_io_oauth-create-or-update-contact",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    apollo_io_oauth: { authProvisionId: "apn_xxxxxxx" },
    contactId: "Contact ID",
    email: "Email",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Create or Update Contact inputs
Property Type Description
contactId Contact ID string
The ID of an existing contact to update. Omit this to create a new contact.
Optional
email Email string
Email address of the contact. Required when creating.
Optional
firstName First Name string
First name of the contact.
Optional
lastName Last Name string
Last name of the contact.
Optional
title Title string
Job title of the contact. Example: "VP of Sales".
Optional
accountId Account ID string
ID of the account (company) to link this contact to. Use Search Accounts to find account IDs.
Optional
websiteUrl Website URL string
The organization website for Apollo to enrich data. Do NOT pass personal social media URLs. This is ignored if a valid email is provided.
Optional
labelNames Label Names string[]
Tag names to apply to this contact. Example: ["VIP", "Decision Maker"]. Use List Metadata (type labels) to see existing labels.
Optional
contactStageId Contact Stage ID string
The pipeline stage for this contact. Use List Metadata (type contact_stages) to discover valid stage IDs.
Optional
address Address string
Full address string. Apollo will infer city, state, country, and timezone.
Optional
phone Phone string
Direct dial phone number for this contact.
Optional

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
apollo_io_oauth-create-or-update-contact
Version
0.0.2
App
Apollo
Authentication
OAuth
Read-only
No
Destructive
No
Open world
Yes