Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://{youraccountname}.api-us1.com/api/3
/accountContacts/{id}
Retrieve an existing account association
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Association’s ID |
200
404
GET /accountContacts/{id}
/accounts/{id}
Retrieve an existing account
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Account’s ID |
200
GET /accounts/{id}
/contacts/{id}/accountContacts
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/accountContacts
/addresses/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the Address to retrieve |
200
400
GET /addresses/{id}
/brandings/{id}
Retrieve an existing branding resource
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | — |
200
400
GET /brandings/{id}
/calendars/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the calendar feed to retrieve |
200
404
GET /calendars/{id}
/campaigns/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of campaign to retrieve |
200
GET /campaigns/{id}
/campaigns/{id}/links
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of campaign to retrieve Links for |
200
404
GET /campaigns/{id}/links
/connections/{id}
Retrieve an existing connection resource.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The id of the connection to retrieve |
200
400
GET /connections/{id}
/contactAutomations/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contactAutomation to retrieve |
200
404
GET /contactAutomations/{id}
/contacts/{id}
Retrieve an existing contact
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}
/contacts/{id}/automationEntryCounts
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/automationEntryCounts
/contacts/{id}/bounceLogs
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/bounceLogs
/contacts/{id}/contactData
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/contactData
/contacts/{id}/contactGoals
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/contactGoals
/contacts/{id}/contactLogs
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/contactLogs
/contacts/{id}/organization
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/organization
/contacts/{id}/plusAppend
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/plusAppend
/contacts/{id}/scoreValues
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | id of the Contact |
200
404
GET /contacts/{id}/scoreValues
/contacts/{id}/trackingLogs
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/trackingLogs
/geoIps/{geoAddressID}/geoAddress
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| geoAddressID | path | required | integer | ID of the contact |
200
404
GET /geoIps/{geoAddressID}/geoAddress
/ecomCustomers/{id}
Retrieve an existing e-commerce customer resource.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The id of the customer to retrieve |
200
400
GET /ecomCustomers/{id}
/contactDeals
Retrieve all secondary contacts
200
400
GET /contactDeals
/contactDeals/{id}
Retrieve an existing secondary contact
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Secondary Contact’s id |
200
404
GET /contactDeals/{id}
/contacts/{id}/contactDeals
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/contactDeals
/contacts/{id}/deals
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/deals
/dealActivities
View a recent activity for Deals. A specific deal’s activity can also be viewed using /api/3/deals/[dealID]/dealActivities.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| exclude=email | query | optional | string | Include this param to exclude “email”, “connection_email”, and “LinkData” activity types |
| deal | query | optional | string | Filter by deal ID |
| filters[data_type] | query | optional | string | Enter any dataType (see Response Details) to filter by that type. Examples: “userid” or task” or “note” |
| filters[data_id] | query | optional | string | Enter any dataId (see Response details) to filter by related object. Example “291” for a note with ID 291 |
200
400
GET /dealActivities
/dealCustomFieldData
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[dealId] | query | optional | string | Filter results by a specific deal (note that Id uses a capital I) |
200
GET /dealCustomFieldData
/dealCustomFieldData/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the dealCustomFieldData to retrieve |
200
404
GET /dealCustomFieldData/{id}
/dealCustomFieldMeta
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| limit | query | optional | integer | The number of fields returned per request. |
200
GET /dealCustomFieldMeta
/dealCustomFieldMeta/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the field to retrieve |
200
404
GET /dealCustomFieldMeta/{id}
/dealGroups
Retrieve all existing pipelines
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[title] | query | optional | string | Filter by pipeline’s title. The filter matches any pipeline titles that contain the provided title (i.e. “Contact” matches all of “In Contact”, “To Contact”, and “Contact Pipeline”). |
| filters[have_stages] | query | optional | integer | Filter by whether pipelines have deal stages. Can be either |
| orders[title] | query | optional | string | Order by Pipeline’s title |
| orders[popular] | query | optional | string | Order by number of deals each pipeline has. If pipelines have same number of deals, pipelines’ created dates are used to determine the order. |
200
400
GET /dealGroups
/dealGroups/{id}
Retrieve an existing pipeline
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | Pipeline’s id |
200
400
GET /dealGroups/{id}
/dealRoles
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| search | query | optional | string | (optional string used to search for matching titles) |
200
400
GET /dealRoles
/dealStages
Retrieve all existing stages
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[title] | query | optional | string | Filter by deal stages’ titles. Any stages whose titles partial-match the filter value are returned |
| filters[d_groupid] | query | optional | string | Filter by pipeline’s id |
| orders[title] | query | optional | string | Order by deal stage’s title |
200
400
GET /dealStages
/dealStages/{id}
Retrieve an existing stage
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Deal stage’s id |
200
400
GET /dealStages/{id}
/dealTasks
Retrieve a list of existing tasks
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[title] | query | optional | string | The title to be assigned to the task |
| filters[reltype] | query | optional | string | The name of the relating object (see relationships table) |
| filters[relid] | query | optional | integer | The id of the relational object for this task |
| filters[status] | query | optional | integer | Task status means complete or incomplete. 1 is complete and 0 is incomplete. |
| filters[note] | query | optional | string | The content describing the task |
| filters[duedate] | query | optional | string | Due date of the task |
| filters[d_tasktypeid] | query | optional | integer | The type of the task based on the available Task Types in the account |
| filters[userid] | query | optional | integer | User ID this task belongs to |
| filters[due_after] | query | optional | string | Filter deal tasks that are due after a specific date |
| Fitlers[due_before] | query | optional | string | Filter deal tasks that are due before a specific date |
| filters[duedate_range] | query | optional | string | Filter deal tasks that are due between specific date range |
| filters[assignee_userid] | query | optional | integer | The id of the user a task is assigned to |
| filters[outcome_id] | query | optional | integer | The id of a task outcome that the task belongs to. |
201
400
GET /dealTasks
/dealTasks/{id}
Retrieve an existing task
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The ID of the task |
201
400
GET /dealTasks/{id}
/dealTasktypes
Retrieve all existing task types
200
400
GET /dealTasktypes
/dealTasktypes/{id}
Retrieve an existing task type
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Deal task type’s id |
200
400
GET /dealTasktypes/{id}
/deals
Retrieve all existing deals
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[search] | query | optional | string | Search text to use with |
| filters[search_field] | query | optional | string | Field to search for. See available values. |
| filters[title] | query | optional | string | Filter by deal’s title |
| filters[stage] | query | optional | integer | Filter by deal’s stage |
| filters[group] | query | optional | integer | Filter by deal’s pipeline |
| filters[status] | query | optional | integer | Filter by deal’s status. See available values |
| filters[owner] | query | optional | integer | Filter by deal’s owner |
| filters[nextdate_range] | query | optional | string | Filter by deal’s tasks due dates. See available values |
| filters[tag] | query | optional | string | Filter by tag names associated with deal’s primary contact. See available values. |
| filters[tasktype] | query | optional | string | Filter by deals that have tasks with given type |
| filters[created_before] | query | optional | string | Returns deals that are created less than given date |
| filters[created_after] | query | optional | string | Returns deals that are created greater than or equal to given date |
| filters[updated_before] | query | optional | string | Returns deals that are updated less than given date |
| filters[updated_after] | query | optional | string | Returns deals that are updated greater than or equal to given date |
| filters[organization] | query | optional | integer | Filter by deal’s primary contact’s organization’s id |
| filters[minimum_value] | query | optional | integer | In USD with dollar portion. Returns deals whose values are greater than or equal to given value |
| filters[maximum_value] | query | optional | integer | In USD with dollar portion. Returns deals whose values are less than or equal to given value |
| filters[score_greater_than] | query | optional | string | In a format of |
| filters[score_less_than] | query | optional | string | In a format of |
| filters[score] | query | optional | string | In a format of |
| orders[title] | query | optional | string | Order by deal’s title. |
| orders[value] | query | optional | string | Order by deal’s value. |
| orders[cdate] | query | optional | string | Order by deal’s created date. |
| orders[contact_name] | query | optional | string | Order by deal’s primary contact’s first name. |
| orders[contact_orgname] | query | optional | string | Order by deal’s primary contact’s organization name. |
| orders[next-action] | query | optional | string | Order by deal’s next task’s due date first. Then append deals with no next task. Lastly append deals with overdue tasks. If dates are the same, order by deal’s id. |
200
400
GET /deals
/deals/{id}
Retrieve an existing deal
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | The Deal’s id |
200
GET /deals/{id}
/contacts/{contactId}/trackingLogs
Get a log of events for a Contact
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| contactId | path | required | string | The Contact’s ID |
200
GET /contacts/{contactId}/trackingLogs
/eventTracking
Get event tracking status (enabled or disabled)
200
GET /eventTracking
/trackingLogs/{eventId}/contact
Get the contact that was involved in an event.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| eventId | path | required | string | The Event’s ID |
200
GET /trackingLogs/{eventId}/contact
/accountCustomFieldData/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the dealCustomFieldData to retrieve |
200
404
GET /accountCustomFieldData/{id}
/accountCustomFieldMeta/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the field to retrieve |
200
404
GET /accountCustomFieldMeta/{id}
/contacts/{id}/fieldValues
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/fieldValues
/fieldValues/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | ID of the fieldValue to retrieve |
200
403
GET /fieldValues/{id}
/fields
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| limit | query | optional | integer | The number of fields returned per request. |
200
GET /fields
/fields/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the field to retrieve |
200
400
GET /fields/{id}
/groupMembers/{groupID} (COPY)
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| groupID | path | required | string | Group ID |
application/json
FieldGetFieldGroupRequest
200
404
GET /groupMembers/{groupID} (COPY)
/forms
200
400
GET /forms
/forms/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | ID of the form to retrieve |
200
403
GET /forms/{id}
/groups/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | ID of the group to retrieve |
200
403
GET /groups/{id}
/import/info
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| batchId | query | optional | string | — |
200
400
GET /import/info
/accountContacts
Retrieve all existing account association
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[contact] | query | optional | integer | Filter by Contact ID |
| filters[account] | query | optional | integer | Filter by Account ID |
200
GET /accountContacts
/accountCustomFieldData
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[customerAccountId] | query | optional | string | Filter results by a specific account (note that Id uses a capital I) |
200
GET /accountCustomFieldData
/accountCustomFieldMeta
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| limit | query | optional | integer | The number of fields returned per request. |
200
GET /accountCustomFieldMeta
/accounts
Retrieve all existing account
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| search | query | optional | string | Search by name |
| count_deals | query | optional | boolean | Whether to compute the contactCount and dealCount counts for the number of contacts/deals associated with each account. Set it to true to include the right counts. If set to false or omitted from the call, then contactCount and dealCount will not be counted and be simply displayed as 0. |
200
400
GET /accounts
/activities
View a contact’s recent activity. The activity is generated when a contact is retrieved via /api/3/contacts/[contactID]. This endpoint should be used after retrieving a contact to obtain the latest data. This is useful for searching for contacts that match certain criteria - such as being part of a certain list, or having a specific custom field value.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| contact | query | optional | integer | Required Contact ID |
| after | query | optional | string | Filter for activities after a specific DateTime |
| include | query | optional | string | Activities to include: notes, notes.user, recipients, recipients.recipient, reference, reference.automation, reference.campaign, reference.campaign.campaignList, reference.campaign.campaignMessage, reference.campaignMessage, reference.contact, reference.contactList, reference.contactList.list, reference.deal, reference.deal.contact, reference.dealTasktype, reference.link, reference.list, reference.log, reference.log.campaign, reference.log.contact, reference.log.message, reference.message, reference.note, reference.sms, reference.sms.automation, user |
| emails | query | optional | boolean | — |
| orders[tstamp] | query | optional | string | Order activities by tstamp |
200
400
GET /activities
/addresses
200
400
GET /addresses
/automations
200
400
GET /automations
/brandings
List all existing branding resources
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| api_key | query | optional | string | ActiveCampaign API key |
200
400
GET /brandings
/calendars
200
GET /calendars
/campaigns
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| orders[sdate] | query | optional | string | Order campaigns by send date |
| orders[ldate] | query | optional | string | Order campaigns by last send date |
| filters[seriesid] | query | optional | integer | Filter to return the campaigns from the targeted automationId/seriesIds |
200
400
GET /campaigns
/connections
List all existing connection resources.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[service] | query | optional | string | Filter by the external service name. |
| filters[externalid] | query | optional | string | Filter by the external id associated with a connection. |
200
400
GET /connections
/contactAutomations
200
GET /contactAutomations
/contacts
Use this API endpoint to list all contacts, search contacts, or filter contacts by many criteria. For example, search for specific contacts by email, list, account.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| ids | query | optional | string | Filter contacts by ID. Can be repeated for multiple IDs. Example: ids[]=1&ids[]=2&ids[]=42 |
| query | optional | string | Email address of the contact you want to get |
|
| email_like | query | optional | string | Filter contacts that contain the given value in the email address |
| exclude | query | optional | integer | Exclude from the response the contact with the given ID |
| formid | query | optional | integer | Filter contacts associated with the given form |
| id_greater | query | optional | integer | Only include contacts with an ID greater than the given ID |
| id_less | query | optional | integer | Only include contacts with an ID less than the given ID |
| listid | query | optional | string | Filter contacts associated with the given list |
| organization | query | optional | integer | (Deprecated) Please use Account-Contact end points. Filter contacts associated with the given organization ID |
| search | query | optional | string | Filter contacts that match the given value in the contact names, organization, phone or email |
| segmentid | query | optional | integer | Return only contacts that match a list segment (the first call kicks off an asynchronous query. When the query is complete, subsequent API calls will return contacts that match the segment - timeout 1hr) |
| seriesid | query | optional | integer | Filter contacts associated with the given automation |
| status | query | optional | integer | See available values |
| tagid | query | optional | integer | Filter contacts associated with the given tag |
| filters[created_before] | query | optional | string | Filter contacts that were created prior to this date |
| filters[created_after] | query | optional | string | Filter contacts that were created after this date |
| filters[updated_before] | query | optional | string | Filter contacts that were updated before this date |
| filters[updated_after] | query | optional | string | Filter contacts that were updated after this date |
| waitid | query | optional | integer | Filter by contacts in the wait queue of an automation block |
| orders[id] | query | optional | string | Order contacts by unique ID |
| orders[cdate] | query | optional | string | Order contacts by creation date |
| orders[email] | query | optional | string | Order contacts by email |
| orders[first_name] | query | optional | string | Order contacts by first name |
| orders[last_name] | query | optional | string | Order contacts by last name |
| orders[name] | query | optional | string | Order contacts by full name |
| orders[score] | query | optional | string | Order contacts by score |
| in_group_lists | query | optional | string | Set this to ”true” in order to return only contacts that the current user has permissions to see. |
200
400
GET /contacts
/contacts/{id}/contactAutomations
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact to receive automations for |
200
404
GET /contacts/{id}/contactAutomations
/contacts/{id}/contactLists
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/contactLists
/contacts/{id}/geoIps
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/geoIps
/customObjects/records/{schemaId}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| schemaId | path | required | string | ID of schema |
| limit | query | optional | integer | The number of records to return for each call. Maximum value is 100. |
| offset | query | optional | integer | Offset index of records to return |
| filters | query | optional | array | Use ?filters[relationships.{your-contact-relationship}][eq]={contactId} to filter records to a specific contact. |
200
400
404
GET /customObjects/records/{schemaId}
/customObjects/schemas
Retrieve all schemas available within an account.
Users are encouraged to leverage the ?showFields=all query parameter when programmatically creating new schema fields, to ensure field id uniqueness. Fields that have been deleted will contain a status: marked_for_deletion attribute.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| limit | query | optional | integer | The number of schemas to retrieve for each API call. Maximum value is 100. |
| offset | query | optional | integer | Offset index of items to return |
| orders | query | optional | array | Array of sorting criteria to fetch items |
| filters | query | optional | string | Filters schemas by different criteria |
| showFields | query | optional | string | Toggle which fields are shown in the response body of a schema (if there hidden due to e.g. recently being deleted). Omit this parameter entirely to hide fields by default. |
200
400
GET /customObjects/schemas
/ecomCustomers
List all e-commerce customer resources.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[email] | query | optional | string | Filter by the email address of a customer. |
| filters[externalid] | query | optional | string | Filter by the id of the customer in the external service. |
| filters[connectionid] | query | optional | string | Filter by the id of the connection object for the service where the customer originates. |
200
GET /ecomCustomers
/ecomOrderProducts
200
400
GET /ecomOrderProducts
/ecomOrders
List all existing e-commerce order resources.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[connectionid] | query | optional | integer | Filter by the connection id. Must be greater than 0. |
| filters[externalid] | query | optional | integer | Filter by the external id of the order. |
| filters[externalcheckoutid] | query | optional | string | Filter by the external checkout id |
| filters[email] | query | optional | string | Filter by the customer email address. |
| filters[state] | query | optional | integer | Filter by the state of the order. 0 = Pending, 1 = Completed, 2 = Abandoned, 3 = Recovered, 4 = Waiting (Customer checked out but payment is not yet completed) |
| filters[customerid] | query | optional | string | Filter by the customer id |
| filters[external_created_date] | query | optional | string | Filter by the external created date |
| orders[connectionid] | query | optional | integer | Order by connection ID. Accepted values are ASC or DESC. |
| orders[externalid] | query | optional | integer | Order by external ID. Accepted values are ASC or DESC. |
| orders[externalcheckoutid] | query | optional | string | Order by external checkout ID. Accepted values are ASC or DESC. |
| orders[email] | query | optional | string | Order by email. Accepted values are ASC or DESC. |
| orders[state] | query | optional | integer | Order by state. Accepted values are ASC or DESC. |
| orders[customerid] | query | optional | string | Order by customer ID. Accepted values are ASC or DESC. |
| orders[external_created_date] | query | optional | string | Order by external created date. Accepted values are ASC or DESC. |
200
422
GET /ecomOrders
/ecomOrders/{id}/orderProducts
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the order whose products you’d like returned. |
200
400
GET /ecomOrders/{id}/orderProducts
/emailActivities
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[subscriberid] | query | optional | integer | Set this parameter to return only email activities belonging to a given subscriber. |
| filters[dealId] | query | optional | integer | Set this parameter to return only email activities belonging to a given deal. |
200
400
GET /emailActivities
/eventTrackingEvents
List the names of tracked events
200
400
GET /eventTrackingEvents
/fieldValues
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[fieldid] | query | optional | string | ID of the field the value belongs to. |
| filters[val] | query | optional | string | Value of the custom field for a specific contact |
200
400
GET /fieldValues
/groupLimits
200
GET /groupLimits
/groups
200
GET /groups
/import/bulk_import
200
GET /import/bulk_import
/lists
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[name] | query | optional | string | Filter by the name of the list |
| limit | query | optional | integer | Limit the number of returned results |
| filters[name][<operator>] | query | optional | string | Filters lists by list name according to the operator specified. (See supported operators below) |
| orders[name] | query | optional | string | Orders filtered results by weight, ascending order, or descending order. If weight is used, exact matches are returned first, followed by matches starting with what was filtered by, followed by the rest of the results. |
200
403
GET /lists
/lists/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | ID of the lists to retrieve |
200
403
404
GET /lists/{id}
/messages
200
400
GET /messages
/savedResponses
200
GET /savedResponses
/scores
200
GET /scores
/segments
200
400
GET /segments
/siteTrackingDomains
List of all whitelisted site tracking domains
200
GET /siteTrackingDomains
/taskOutcomes
Retrieve all existing task outcomes
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[sentiment] | query | optional | string | 1 is for Negative, 2 is for Neutral and 3 is for Positive |
200
400
GET /taskOutcomes
/tasktypeOutcomeRels
Retrieve all existing task type - outcome relations
200
400
GET /tasktypeOutcomeRels
/webhook/events
List all available webhook events
200
GET /webhook/events
/webhooks
List all existing webhooks
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| filters[name] | query | optional | string | Filter by webhook name |
| filters[url] | query | optional | string | Filter by webhook url |
| filters[listid] | query | optional | string | Filter by webhook’s associated list |
200
400
GET /webhooks
/messages/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | ID of the message to retrieve |
200
404
GET /messages/{id}
/contacts/{id}/notes
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the contact |
200
404
GET /contacts/{id}/notes
/notes
200
GET /notes
/notes/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | ID of the note to retrieve |
200
400
GET /notes/{id}
/ecomOrderProducts/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the product you’d like returned. |
200
400
404
GET /ecomOrderProducts/{id}
/ecomOrders/{ecomOrderId}
Retrieve an existing e-commerce order resource.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| ecomOrderId | path | required | integer | The id of the order to retrieve. |
200
GET /ecomOrders/{ecomOrderId}
/taskOutcomes/{id}
Retrieve an existing task outcome
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Task outcome’s id |
200
404
GET /taskOutcomes/{id}
/tasktypeOutcomeRels/{id}
Retrieve an existing task type - outcome relation
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | Task type - outcome relation’s id |
200
404
GET /tasktypeOutcomeRels/{id}
/records/{schemdId}/external/{externalId}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| schemdId | path | required | string | ID of schema |
| externalId | path | required | string | External ID for record |
200
400
GET /records/{schemdId}/external/{externalId}
/savedResponses/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the saved Response to recieve |
200
400
GET /savedResponses/{id}
/customObjects/records/{schemaId}/{recordId}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| schemaId | path | required | string | ID of schema |
| recordId | path | required | string | ID of record |
200
400
GET /customObjects/records/{schemaId}/{recordId}
/customObjects/schemas/{id}
Retrieve a specific schema by id.
Users are encouraged to leverage the ?showFields=all query parameter when programmatically creating new schema fields, to ensure field id uniqueness. Fields that have been deleted will contain a status: marked_for_deletion attribute.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | Id of the Schema |
| showFields | query | optional | string | Toggle which fields are shown in the response body of a schema (if there hidden due to e.g. recently being deleted). Omit this parameter entirely to hide fields by default. |
200
404
GET /customObjects/schemas/{id}
/scores/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the score to retrieve |
200
404
GET /scores/{id}
/segments/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the segment to be retrieved |
200
GET /segments/{id}
/siteTracking
Get site tracking status (enabled or disabled)
200
400
GET /siteTracking
/tags
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| search | query | optional | string | Filter by name of tag(s); “contains” operator is assumed. |
| filters[search][<operator>] | query | optional | string | Filters tags by tag name according to the operator specified. Operators currently supported: |
| orders[search] | query | optional | string | Orders filtered results by weight, ascending order, or descending order. If |
200
400
GET /tags
/tags/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the tag to retrieve |
200
404
GET /tags/{id}
/template/share
Create a shareable link to a campaign template
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| api_key | query | optional | string | ActiveCampaign Account API Key |
| id | query | optional | integer | The id of the campaign template to be shared |
200
GET /template/share
/templates/{id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the template to retrieve |
200
404
GET /templates/{id}
/siteTracking/code
Get site tracking code
200
400
GET /siteTracking/code
/users
List all existing users
200
400
GET /users
/users/email/{email}
Retrieve an existing user by looking up their email address
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| path | required | string | Email address of the user you want to view |
200
400
GET /users/email/{email}
/users/me
Retrieve the logged-in user
200
400
GET /users/me
/users/username/{username}
Retrieve an existing user by looking up their username
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| username | path | required | string | Username of the user you want to view |
200
400
GET /users/username/{username}
/users/{id}
Retrieve an existing user
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | ID of the user you want to view |
200
400
GET /users/{id}
/webhooks/{id}
Retrieve an existing webhook
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | integer | — |
200
GET /webhooks/{id}
AccountCreateAssociationRequest
{
"type": "object",
"properties": {
"accountContact": {
"type": "object",
"required": [
"account",
"contact"
],
"properties": {
"account": {
"type": "integer",
"format": "int32",
"description": "Account ID"
},
"contact": {
"type": "integer",
"format": "int32",
"description": "Contact ID"
},
"jobTitle": {
"type": "string",
"description": "Job Title of the contact at the account"
}
}
}
}
}
AccountCreateNewAccountRequest
{
"type": "object",
"properties": {
"account": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "Account's name"
},
"owner": {
"type": "integer",
"format": "int32",
"default": 1,
"description": "The userId of the account owner."
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"customFieldId",
"fieldValue"
],
"properties": {
"fieldValue": {
"type": "string",
"description": "Updated field value. For `currency` field, this needs to be in cents not dollars (or 100 x Base Unit)."
},
"customFieldId": {
"type": "integer",
"format": "int32",
"description": "Field ID, ID of the Custom Field Meta Data"
},
"fieldCurrency": {
"type": "string",
"description": "Required only for the `currency` field type. The three letter currency code for the currency value"
}
}
},
"description": "Account's custom field values `{customFieldId: int, fieldValue: string, fieldCurrency?:string}[]`"
},
"accountUrl": {
"type": "string",
"description": "Account's website"
}
}
}
}
}
AccountUpdateAssociationRequest
{
"type": "object",
"properties": {
"accountContact": {
"type": "object",
"required": [
"account",
"contact"
],
"properties": {
"account": {
"type": "integer",
"format": "int32",
"description": "Account ID"
},
"contact": {
"type": "integer",
"format": "int32",
"description": "Contact ID"
},
"jobTitle": {
"type": "string",
"description": "Job Title of the contact at the account"
}
}
}
}
}
AccountUpdateExistingRequest
{
"type": "object",
"properties": {
"account": {
"type": "object",
"required": [],
"properties": {
"name": {
"type": "string",
"description": "Account's name"
},
"owner": {
"type": "integer",
"format": "int32",
"default": 1,
"description": "The userId of the Account owner."
},
"fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"customFieldId",
"fieldValue"
],
"properties": {
"fieldValue": {
"type": "string",
"description": "Updated field value. For `currency` field, this needs to be in cents not dollars (or 100 x Base Unit)."
},
"customFieldId": {
"type": "integer",
"format": "int32",
"description": "Field ID, ID of the Custom Field Meta Data"
},
"fieldCurrency": {
"type": "string",
"description": "Required only for the `currency` field type. The three letter currency code for the currency value"
}
}
},
"description": "Account's custom field values `{customFieldId: int, fieldValue: string, fieldCurrency?:string}[]`"
},
"accountUrl": {
"type": "string",
"description": "Account's website"
}
}
}
}
}
AddressCreateNewAddressRequest
{
"type": "object",
"properties": {
"address": {
"type": "object",
"required": [
"company_name",
"address_1",
"country"
],
"properties": {
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"state": {
"type": "string"
},
"global": {
"type": "string"
},
"country": {
"type": "string",
"description": "Accepts a (2) two character string - country code (eg 'US', 'CA', 'MX')"
},
"groupid": {
"type": "integer",
"format": "int32"
},
"allgroup": {
"type": "integer",
"format": "int32"
},
"district": {
"type": "string",
"description": "(Optional for countries that use it)"
},
"address_1": {
"type": "string"
},
"address_2": {
"type": "string"
},
"is_default": {
"type": "boolean",
"description": "Indicates default address"
},
"company_name": {
"type": "string"
}
}
}
}
}
AddressUpdateAddressRequest
{
"type": "object",
"properties": {
"address": {
"type": "object",
"required": [
"company_name",
"address_1",
"country"
],
"properties": {
"zip": {
"type": "string"
},
"city": {
"type": "string"
},
"state": {
"type": "string"
},
"global": {
"type": "string"
},
"country": {
"type": "string",
"description": "Accepts a (2) two character string - country code (eg 'US', 'CA', 'MX')"
},
"groupid": {
"type": "integer",
"format": "int32"
},
"allgroup": {
"type": "integer",
"format": "int32"
},
"district": {
"type": "string",
"description": "(Optional for countries that use it)"
},
"address_1": {
"type": "string"
},
"address_2": {
"type": "string"
},
"is_default": {
"type": "boolean",
"description": "Indicates default address"
},
"company_name": {
"type": "string"
}
}
}
}
}
BrandingUpdateExistingResourceRequest
{
"type": "object",
"properties": {
"branding": {
"type": "object",
"required": [],
"properties": {
"help": {
"type": "string"
},
"links": {
"type": "boolean",
"description": "External links. To enable (which is the default) exclude this parameter entirely. To disable (remove our branding), just pass this parameter with any value."
},
"favicon": {
"type": "string",
"description": "URL of the favicon."
},
"groupid": {
"type": "integer",
"format": "int32",
"default": 3,
"description": "The group ID. This value will always be 3."
},
"license": {
"type": "boolean",
"description": "unknown"
},
"version": {
"type": "boolean",
"description": "unknown"
},
"siteLogo": {
"type": "string"
},
"siteName": {
"type": "string",
"description": "Title of software. Example: 'ActiveCampaign Email Marketing'"
},
"copyright": {
"type": "boolean",
"description": "unknown"
},
"siteLogoSmall": {
"type": "string",
"description": "URL of small logo. Small logos appear in the header of the admin panel."
},
"footerHtmlValue": {
"type": "string",
"description": "Content of non-removeable footer. Example: <p>footer content here</p>"
},
"footerTextValue": {
"type": "string",
"description": "Content of non-removeable footer. Example: text footer content"
},
"headerHtmlValue": {
"type": "string",
"description": "Content of non-removable header. Example: <p>header content here</p>"
},
"headerTextValue": {
"type": "string",
"description": "Content of non-removable header. Example: text header content"
},
"adminTemplateCss": {
"type": "string",
"description": "The actual CSS. Example: test color: green; (ONLY AVAILABLE FOR CERTAIN PLANS)"
},
"adminTemplateHtm": {
"type": "string",
"description": "The actual HTML template (ONLY AVAILABLE FOR CERTAIN PLANS)"
},
"publicTemplateCss": {
"type": "string",
"description": "The actual CSS. Example: test color: green; (ONLY AVAILABLE FOR CERTAIN PLANS)"
},
"publicTemplateHtm": {
"type": "string",
"description": "The actual HTML template (ONLY AVAILABLE FOR CERTAIN PLANS)"
}
}
}
}
}
CalendarCreateFeedRequest
{
"type": "object",
"properties": {
"calendar": {
"type": "object",
"required": [
"title",
"type"
],
"properties": {
"type": {
"type": "string",
"description": "Possible Values: 'All', 'Deals', or 'Contacts'"
},
"title": {
"type": "string",
"description": "Title of the calendar feed"
},
"notification": {
"type": "boolean",
"description": "Whether or not this calendar has notifications"
}
}
}
}
}
CalendarUpdateFeedRequest
{
"type": "object",
"properties": {
"calendar": {
"type": "object",
"required": [],
"properties": {
"type": {
"type": "string",
"description": "Possible Values: 'All', 'Deals', or 'Contacts'"
},
"title": {
"type": "string",
"description": "Title of the calendar feed"
},
"notification": {
"type": "boolean",
"description": "Whether or not this calendar has notifications"
}
}
}
}
}
FieldBulkCreateCustomAccountFieldValueRequest
{
"type": "object",
"properties": {
"array": {
"type": "object",
"required": [
"customerAccountId",
"customFieldId",
"fieldValue"
],
"properties": {
"fieldValue": {
"type": "string",
"description": "Values for the field. (For currency field only, this needs to be in cents: eg, 10050 = 100.5)"
},
"customFieldId": {
"type": "integer",
"format": "int32",
"description": "The ID of the custom field metum this field value relates to"
},
"fieldCurrency": {
"type": "string",
"description": "Currency code for the money value"
},
"customerAccountId": {
"type": "integer",
"format": "int32",
"description": "The ID of the account this field value relates to"
}
}
}
}
}
FieldBulkUpdateCustomFieldValueRequest
{
"type": "object",
"properties": {
"array": {
"type": "object",
"required": [
"id",
"fieldValue"
],
"properties": {
"id": {
"type": "integer",
"format": "int32",
"description": "ID of the dealCustomFieldData to update"
},
"fieldValue": {
"type": "string",
"description": "Values for the field. (For currency field only, this needs to be in cents: eg, 10050 = 100.5)"
},
"fieldCurrency": {
"type": "string",
"description": "Currency code for the money value"
}
}
}
}
}
FieldCreateCustomFieldMetaRequest
{
"type": "object",
"properties": {
"accountCustomFieldMetum": {
"type": "object",
"required": [
"fieldLabel",
"fieldType"
],
"properties": {
"fieldType": {
"type": "string",
"description": "Type of field. Possible values are: `text`, `textarea`, `date`, `datetime`, `dropdown`, `multiselect`, `radio`, `checkbox`, `hidden`, `currency`, or `number`."
},
"fieldLabel": {
"type": "string",
"description": "Name of the field"
},
"displayOrder": {
"type": "integer",
"format": "int32",
"description": "Order for displaying the field on Manage Fields page and deal profiles"
},
"fieldDefault": {
"type": "string",
"description": "Default value of the field"
},
"fieldOptions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Options for the field. Only necessary if `field_type` is `dropdown`, `multiselect`, `radio`, or `checkbox`."
},
"isFormVisible": {
"type": "boolean",
"description": "Whether or not the field is visible on forms"
},
"fieldDefaultCurrency": {
"type": "string",
"description": "The 3-letter currency code of the default currency for the field. Only necessary if `field_type` is `currency`."
}
}
}
}
}
FieldCreateCustomFieldValueRequest
{
"type": "object",
"properties": {
"accountCustomFieldDatum": {
"type": "object",
"required": [
"customerAccountId",
"customFieldId",
"fieldValue"
],
"properties": {
"fieldValue": {
"type": "string",
"description": "Values for the field. (For `currency` field only, this needs to be in cents: eg, 10050 = 100.5)"
},
"customFieldId": {
"type": "integer",
"format": "int32",
"description": "The ID of the custom field metum this field value relates to"
},
"fieldCurrency": {
"type": "string",
"default": "Default Currency for Field",
"description": "Currency code for the money value"
},
"customerAccountId": {
"type": "integer",
"format": "int32",
"description": "The ID of the account this field value relates to"
}
}
}
}
}
FieldUpdateCustomFieldMetaRequest
{
"type": "object",
"properties": {
"accountCustomFieldMetum": {
"type": "object",
"required": [],
"properties": {
"fieldLabel": {
"type": "string",
"description": "Name of the field"
},
"displayOrder": {
"type": "integer",
"format": "int32",
"description": "Order for displaying the field on Manage Fields page and deal profiles"
},
"fieldDefault": {
"type": "string",
"description": "Default value of the field"
},
"fieldOptions": {
"type": "array",
"items": {
"type": "string"
},
"description": "Options for the field. Only necessary if field_type is dropdown, multiselect, radio, or checkbox."
},
"isFormVisible": {
"type": "boolean",
"description": "Whether or not the field is visible on forms"
}
}
}
}
}
FieldUpdateCustomFieldValueRequest
{
"type": "object",
"properties": {
"accountCustomFieldDatum": {
"type": "object",
"required": [],
"properties": {
"fieldValue": {
"type": "string",
"description": "Values for text"
},
"fieldCurrency": {
"type": "string",
"default": "Default Currency for Field",
"description": "Currency code for the `currency` value"
}
}
}
}
}
MessageCreateNewMessageRequest
{
"type": "object",
"properties": {
"message": {
"type": "object",
"required": [
"fromname",
"email",
"reply2"
],
"properties": {
"email": {
"type": "string",
"description": "Email of sender"
},
"reply2": {
"type": "string",
"description": "Reply email for the recipient to reply to"
},
"subject": {
"type": "string",
"description": "Subject of message"
},
"fromname": {
"type": "string",
"description": "Name of sender"
},
"preheader_text": {
"type": "string",
"description": "Preheader Text"
}
}
}
}
}
NoteCreateAccountNoteRequest
{
"type": "object",
"properties": {
"note": {
"type": "object",
"required": [
"note"
],
"properties": {
"note": {
"type": "string",
"description": "Account note's content"
}
}
}
}
}
NoteUpdateNoteRequest
{
"type": "object",
"properties": {
"note": {
"type": "object",
"required": [
"note"
],
"properties": {
"note": {
"type": "string",
"description": "Account note's content"
}
}
}
}
}