Skip to main content
GET
Get a contact

Authorizations

Authorization
string
header
required

The id_token from POST /auth/v1/signin, sent as Authorization: Bearer <id_token>. Not the access_token — that one does not carry the identity Cloud Chat authorizes on.

Headers

cloudchat-instance
integer
required

Your Cloud Chat instance ID — an integer, fixed for your company, told at onboarding. The API overview explains how instances work, how to find yours, and the errors a wrong or missing value produces.

Example:

1

Path Parameters

accountId
integer
required

Your Cloud Chat account. It has to be an account your token grants membership on, and it has to live on the instance in the cloudchat-instance header — the two travel together. Account numbers are only unique within an instance, so the same number is a different company on another instance. Usually a mismatched pair fails closed with a 401, because your user does not exist on the other instance — but if your identity happens to exist on both, the call succeeds against the other company's data, silently. Read it and you are looking at the wrong help center; write it and you have stored into the wrong account. Send the two values that were given to you together, and never try a number to see what answers.

Example:

1

contactId
integer
required

The contact id — the contact.id returned by the conversation endpoints.

Example:

815

Response

The contact.

A customer contact of the account.

id
integer
required

The contact id — the same contact.id the conversation endpoints return.

Example:

815

name
string | null
required

The display name. Often what the channel reported, such as a WhatsApp profile name; an empty string when unknown.

Example:

"Jane Doe"

email
string | null
required

The email address, null when the contact has none.

Example:

"jane@example.com"

phone_number
string | null
required

The phone number in E.164, null when the contact has none.

Example:

"+5511999998888"

identifier
string | null
required

The id your own systems use for this contact, when one was set through an integration; null otherwise.

Example:

"crm-42"

custom_attributes
object | null
required

The contact's custom attributes, keyed by attribute key, exactly as configured on the account. An empty object when none are set.

Example:
created_at
string<date-time>
required

When the contact was created. ISO 8601 in UTC, with milliseconds.

Example:

"2026-09-02T14:03:11.215Z"

last_activity_at
string<date-time> | null
required

When the contact last had activity, in the same format. null when it never had any.

Example:

"2026-10-20T09:41:27.000Z"