Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Chatwoot Contacts API

Application API - manage contacts.

Chatwoot Contacts API is one of 17 APIs that Chatwoot publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Contacts. The published artifact set on APIs.io includes an OpenAPI specification and an API reference.

This API exposes 8 operations across 5 paths, and defines 4 schemas. It is described by OpenAPI 3.0.1, at version 1.0.

Requests are made against a single base URL, https://app.chatwoot.com.

8 operations 5 paths 4 schemas 1 DELETE4 GET2 POST1 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.1
API Version
1.0
Base URL
https://app.chatwoot.com/api/v1/accounts/{account_id}
Authentication
API Key, API Key
Terms of Service
Resource Areas
1

Authentication & Security 2

Chatwoot Contacts API declares 2 security schemes for authenticating requests. An API key is passed in the header as api_access_token (userApiKey). An API key is passed in the header as api_access_token (platformAppApiKey). By default, every request must be authenticated.

  • userApiKey — Application and Client access token passed in the apiaccesstoken HTTP header. For the Application API this is an agent/user access token; Client API requests a…
  • platformAppApiKey — Platform App access token passed in the apiaccesstoken HTTP header. Created by a super-admin from the Chatwoot installation's Platform Apps area and required f…

Paths & Operations 8

Across 5 paths, the API surfaces 8 operations — 1 DELETE, 4 GET, 2 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

Contacts 8

Application API - manage contacts.

GET
/api/v1/accounts/{account_id}/contacts
List contacts (paginated, sortable).
listContacts 3 params → 200
POST
/api/v1/accounts/{account_id}/contacts
Create a contact.
createContact 1 param body → 200
GET
/api/v1/accounts/{account_id}/contacts/search
Search contacts by name, email, phone, or identifier.
searchContacts 2 params → 200
POST
/api/v1/accounts/{account_id}/contacts/filter
Filter contacts with a set of query conditions.
filterContacts 1 param body → 200
GET
/api/v1/accounts/{account_id}/contacts/{id}
Get a contact by id.
getContact 2 params → 200
PUT
/api/v1/accounts/{account_id}/contacts/{id}
Update a contact.
updateContact 2 params body → 200
DELETE
/api/v1/accounts/{account_id}/contacts/{id}
Delete a contact.
deleteContact 2 params → 200
GET
/api/v1/accounts/{account_id}/contacts/{id}/conversations
List all conversations for a contact.
listContactConversations 2 params → 200

Schemas 4

The contract defines 4 schemas that model the data the API accepts and returns. The most detailed are Contact (7 properties), ContactCreate (5 properties), ContactList (2 properties), FilterPayload (1 property). Each schema is shown below with its type and property counts.

ContactList
object
2 properties
Contact
object
7 properties
FilterPayload
object
1 property
ContactCreate
object
5 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

chatwoot-com-contacts-api-openapi.yml Raw ↑

Other APIs Chatwoot publishes across the network.

Chatwoot Agents API
Chatwoot Automation Rules API
Chatwoot Canned Responses API
Chatwoot Client Contacts API
Chatwoot Client Conversations API
Chatwoot Client Messages API
Chatwoot Conversations API
Chatwoot Custom Attributes API
Chatwoot Inboxes API
Chatwoot Labels API
Chatwoot Messages API
Chatwoot Platform Accounts API