Skip to main content
POST
Create contact

Authorizations

Authorization
string
header
required

API token in the sk_live_… format.

Headers

Idempotency-Key
string

Unique key for the operation. If you repeat the call with the same key and the same body, you get the stored response.

Maximum string length: 200

Body

application/json

Fields that can be saved on a contact. The photo (profilePicUrl) cannot be changed here, because it comes from the provider (WhatsApp/Instagram) and is updated by it. It is still returned when you read the contact.

name
string
required

Contact name, as it appears in the list and in the ticket.

Example:

"Marina Alves"

number
string

Phone number with country and area code. It can be formatted, like +55 (11) 99999-9999, and only the digits are saved. The contact's country (numberCountry) is inferred from the country code, and a number without a valid country code returns 422. It identifies the contact in the upsert and sets the recipient when sending messages.

Example:

"5511999999999"

email
string

Contact's email. It is not used for login, since a contact is not a user of the system.

Example:

"marina@exemplo.com.br"

code
string

Identifier of the contact in your system. If you fill it in when creating the contact, you can find it again later with GET /contacts?code=..., without relying on the phone number, which can change.

Example:

"CLI-8842"

origin
string

Where the contact came from. Free text, used in reports.

Example:

"Site"

cpfcnpj
string

CPF or CNPJ. Saved exactly as sent, with no formatting applied.

Example:

"12345678909"

instagramUsername
string

Instagram username, without the @.

Example:

"marina.alves"

customFields
object[]

Custom fields to save. Identify each field by its key, which does not change, while the name can be renamed in the panel at any time.

An empty value removes the field from the contact. Fields that do not appear in the body are left as they are.

The save is all or nothing. If any value fails the type validation, the response is 400 and no field is saved.

sourceUrl
string

Page where the contact converted, such as the URL of the ad or the form.

Example:

"https://loja.exemplo.com.br/promo"

sourceId
string

Id, at the provider, of the ad or post that brought in the contact.

Example:

"23851234567890123"

headline
string

Title of the ad or post the contact came from.

Example:

"Coleção de inverno"

utmSource
string

utm_source parameter of the source. It is used in the conversations report.

Example:

"instagram"

utmMedium
string

utm_medium parameter.

Example:

"cpc"

utmCampaign
string

utm_campaign parameter.

Example:

"inverno-2026"

utmId
string

utm_id parameter, when the ad platform sends it.

Example:

"6543210987"

Response

Created

data
object
Example: