# Contatos

> Crie, encontre e consulte contatos.

Endereço: https://docs.nextags.com.br/referencia/contatos/
Tipo: Referência

Os contatos são as pessoas que falam com a conta, em qualquer canal. Crie um contato a partir do seu sistema, encontre um contato pelo telefone, pelo e-mail ou por um campo personalizado e consulte os dados, as etiquetas e os campos de cada um. O `id` do contato é o `contact_id` que as outras chamadas pedem: veja [Contatos, fluxos e outros identificadores](https://docs.nextags.com.br/comecar/identificadores/).

## Endpoints

- [Criar contato](https://docs.nextags.com.br/referencia/contatos/criar-contato.md): `POST /contacts`
- [Consultar contato](https://docs.nextags.com.br/referencia/contatos/consultar-contato.md): `GET /contacts/{contact_id}`
- [Buscar contato por campo personalizado](https://docs.nextags.com.br/referencia/contatos/buscar-contato-por-campo-personalizado.md): `GET /contacts/find_by_custom_field`

## O objeto: Contato

| Campo | Tipo | Descrição |
|---|---|---|
| `id` | integer | O ID do contato: o `contact_id` das outras chamadas. |
| `page_id` | integer | O ID da conta. |
| `first_name` | string | O nome. |
| `last_name` | string | O sobrenome. |
| `channel` | integer | O canal atual do contato: 0 Messenger, 5 WhatsApp, 8 Telegram, 9 Webchat, 10 Instagram, 17 TikTok. |
| `profile_pic` | string | O endereço da foto de perfil. |
| `locale` | string | O idioma do contato, como `pt_BR`. |
| `gender` | integer | O gênero: 0 feminino, 1 masculino, 2 desconhecido. |
| `timezone` | integer | O fuso horário do contato, em horas em relação ao UTC (-3 em Brasília). |
| `last_sent` | integer | Quando a última mensagem foi enviada ao contato, em Unix timestamp em milissegundos. |
| `last_delivered` | integer | Quando a última mensagem foi entregue ao contato, em Unix timestamp em milissegundos. |
| `last_seen` | integer | Quando o contato foi visto pela última vez (**Visto pela última vez**, no app), em Unix timestamp em milissegundos. |
| `last_interaction` | integer | Quando o contato interagiu com a conta pela última vez, em Unix timestamp em milissegundos. |
| `subscribed_date` | string | Quando o contato entrou na conta, em UTC, no formato `2026-10-12 14:40:00`. |
| `subscribed` | integer | 1 inscrito; 2 inscrição cancelada (o contato saiu das transmissões e não recebe Broadcasts). Veja [Contatos que pediram para sair das transmissões](https://help.nextags.com.br/tutoriais/contatos/cancelar-inscricao/). |
| `tags` | array de objeto Etiqueta | As etiquetas do contato. |
| `tags[].id` | integer | O ID da etiqueta. |
| `tags[].name` | string | O nome da etiqueta. |
| `custom_fields` | array de objeto Campo personalizado | Os campos personalizados do contato, com o valor de cada um. |
| `custom_fields[].id` | integer | O ID do campo. |
| `custom_fields[].name` | string | O nome do campo. |
| `custom_fields[].type` | integer | O tipo: 0 texto, 1 número, 2 data, 3 data e hora, 4 sim/não, 5 texto longo, 6 seleção única, 7 seleção múltipla. Valores: `0`, `1`, `2`, `3`, `4`, `5`, `6`, `7`. |
| `custom_fields[].value` | string ou number | O valor do contato, no formato do tipo: texto nos campos de texto e de texto longo; número nos de número, de data e de data e hora (Unix timestamp, em segundos) e de sim/não (1 ou 0). |

```json
{
  "id": 123456789,
  "page_id": 123456,
  "first_name": "Ana",
  "last_name": "Souza",
  "channel": 5,
  "profile_pic": "https://exemplo.com.br/fotos/ana.jpg",
  "locale": "pt_BR",
  "gender": 0,
  "timezone": -3,
  "last_sent": 1792936930000,
  "last_delivered": 1792936932000,
  "last_seen": 1792937020000,
  "last_interaction": 1792936680000,
  "subscribed_date": "2026-10-12 14:40:00",
  "subscribed": 1,
  "tags": [
    {
      "id": 2001,
      "name": "cliente-vip"
    }
  ],
  "custom_fields": [
    {
      "id": 3001,
      "name": "cidade",
      "type": 0,
      "value": "São Paulo"
    }
  ]
}
```
