What can you do with it?

The Keap integration enables comprehensive customer relationship management with focus on companies and contacts. You can manage your complete customer database including creating, updating, and organizing companies and contacts with detailed address information, multiple communication channels, and custom fields. This integration is perfect for small to medium businesses looking to streamline their customer management and sales processes with robust contact organization capabilities.

How to use it?

Basic Command Structure

/your-keap-connection [action] [required-parameters] [optional-parameters]

Parameters

Required:

  • action - The operation you want to perform (list, get, create, update, delete)
  • record_type - The type of record (companies, contacts)

Optional:

  • id - The unique ID of the record for specific operations
  • fields - Specific fields to include in the operation

Tools

List Companies

Retrieve a list of all companies in Keap

Parameters:

  • action (required) - Set to “list”
  • record_type (required) - Set to “companies”

Example:

/your-keap-connection
action: list
record_type: companies

Response:

{
  "companies": "[Array of company objects with id, company_name, email_address, phone_number, website]"
}

Get Company by ID

Retrieve details of a specific company

Parameters:

  • action (required) - Set to “get”
  • record_type (required) - Set to “companies”
  • id (required) - The unique company ID

Example:

/your-keap-connection
action: get
record_type: companies
id: 123456

Response:

{
  "id": "[Company ID]",
  "company_name": "[Company name]",
  "email_address": "[Company email]",
  "phone_number": "[Company phone]",
  "website": "[Company website]",
  "address": "[Complete address object]"
}

Create Company

Add a new company to Keap

Parameters:

  • action (required) - Set to “create”
  • record_type (required) - Set to “companies”
  • company_name (required) - Company name
  • email_address (optional) - Company email
  • phone_number (optional) - Company phone
  • website (optional) - Company website
  • address_line1 (optional) - Street address
  • address_line2 (optional) - Suite/floor
  • city (optional) - City
  • state (optional) - State
  • postal_code (optional) - ZIP code
  • country (optional) - Country

Example:

/your-keap-connection
action: create
record_type: companies
company_name: Gamma Enterprises
email_address: contact@gamma.com
phone_number: +1122334455
website: https://www.gamma.com
address_line1: 456 Elm St
address_line2: Floor 2
city: Othertown
state: NY
postal_code: 67890
country: USA

Response:

{
  "id": "[Created company ID]",
  "company_name": "[Company name]",
  "email_address": "[Company email]",
  "address": "[Complete address object]"
}

Update Company

Update details of an existing company

Parameters:

  • action (required) - Set to “update”
  • record_type (required) - Set to “companies”
  • id (required) - The unique company ID
  • company_name (optional) - Updated company name
  • email_address (optional) - Updated email
  • phone_number (optional) - Updated phone
  • website (optional) - Updated website
  • address_fields (optional) - Updated address information

Example:

/your-keap-connection
action: update
record_type: companies
id: 345678
company_name: Gamma Enterprises LLC
email_address: info@gamma.com

Response:

{
  "id": "[Company ID]",
  "company_name": "[Updated company name]",
  "email_address": "[Updated email]"
}

Delete Company

Remove a company from Keap

Parameters:

  • action (required) - Set to “delete”
  • record_type (required) - Set to “companies”
  • id (required) - The unique company ID

Example:

/your-keap-connection
action: delete
record_type: companies
id: 345678

Response:

{
  "message": "Company deleted successfully."
}

List Contacts

Retrieve a list of all contacts in Keap

Parameters:

  • action (required) - Set to “list”
  • record_type (required) - Set to “contacts”

Example:

/your-keap-connection
action: list
record_type: contacts

Response:

{
  "contacts": "[Array of contact objects with id, given_name, family_name, email_addresses, phone_numbers]"
}

Get Contact by ID

Retrieve details of a specific contact

Parameters:

  • action (required) - Set to “get”
  • record_type (required) - Set to “contacts”
  • id (required) - The unique contact ID

Example:

/your-keap-connection
action: get
record_type: contacts
id: 123456

Response:

{
  "id": "[Contact ID]",
  "given_name": "[First name]",
  "family_name": "[Last name]",
  "email_addresses": "[Array of email objects]",
  "phone_numbers": "[Array of phone objects]",
  "address": "[Complete address object]"
}

Create Contact

Add a new contact to Keap

Parameters:

  • action (required) - Set to “create”
  • record_type (required) - Set to “contacts”
  • given_name (required) - First name
  • family_name (required) - Last name
  • email (optional) - Email address
  • phone (optional) - Phone number
  • phone_type (optional) - Phone type (Work, Mobile, Home)
  • address_line1 (optional) - Street address
  • city (optional) - City
  • state (optional) - State
  • postal_code (optional) - ZIP code
  • country (optional) - Country

Example:

/your-keap-connection
action: create
record_type: contacts
given_name: Alice
family_name: Johnson
email: alice.johnson@example.com
phone: +1122334455
phone_type: Mobile
address_line1: 456 Elm St
city: Othertown
state: NY
postal_code: 67890
country: USA

Response:

{
  "id": "[Created contact ID]",
  "given_name": "[First name]",
  "family_name": "[Last name]",
  "email_addresses": "[Array of email objects]",
  "phone_numbers": "[Array of phone objects]"
}

Update Contact

Update details of an existing contact

Parameters:

  • action (required) - Set to “update”
  • record_type (required) - Set to “contacts”
  • id (required) - The unique contact ID
  • given_name (optional) - Updated first name
  • family_name (optional) - Updated last name
  • email (optional) - Updated email
  • phone (optional) - Updated phone
  • address_fields (optional) - Updated address information

Example:

/your-keap-connection
action: update
record_type: contacts
id: 345678
email: alice.new@example.com
address_line1: 789 Pine St
city: Newtown
state: FL

Response:

{
  "id": "[Contact ID]",
  "given_name": "[First name]",
  "family_name": "[Last name]",
  "email_addresses": "[Updated email array]",
  "address": "[Updated address object]"
}

Delete Contact

Remove a contact from Keap

Parameters:

  • action (required) - Set to “delete”
  • record_type (required) - Set to “contacts”
  • id (required) - The unique contact ID

Example:

/your-keap-connection
action: delete
record_type: contacts
id: 345678

Response:

{
  "message": "Contact deleted successfully."
}

Notes

Keap uses numeric IDs for both companies and contacts. Email addresses are stored as arrays with field identifiers like “EMAIL1”. Phone numbers include type categories such as Work, Mobile, or Home. Address information is stored as structured objects with separate fields for each component. When updating records, only provide the fields you want to change - other fields will remain unchanged. The system supports multiple email addresses and phone numbers per contact.