Este documento descreve a API de contatos, suas propriedades e exemplos de uso. Ela permite buscar um contato específico ou listar todos os contatos de uma conta.
Endpoint:
GET /api/contacts/Retorna a lista completa de contatos vinculados à accountId informada.
Campos do request:
| Nome | Tipo | Obrigatório | Exemplo | Onde enviar |
|---|---|---|---|---|
| accountId | number | Sim | 1 | Query Params |
Exemplo de request:
curl --request GET \
--url https://api.sacflow.io/api/contacts?accountId=ACCOUNT_ID \
--header 'authorization: Bearer API_TOKEN' \
--header 'content-type: application/json'Exemplo de response (paginado):
{
"contacts": [
{ /* objeto do contato */ },
{ /* objeto do contato */ }
],
"count": 1231,
"page": 1,
"hasMore": true
}Descrição dos campos de paginação:
| Nome | Descrição |
|---|---|
| contacts | Lista de contatos da página atual |
| count | Total de contatos que batem com os filtros |
| page | Página retornada |
| hasMore | true se ainda há mais páginas |
Como paginar:
Use pageNumber (página, começa em 1) e limit (itens por página, default 20), exemplo:
# Página 1
GET /contacts?pageNumber=1&limit=20
# Página 2
GET /contacts?pageNumber=2&limit=20Endpoint:
GET /api/contacts/findRetorna os dados de um único contato, identificado pelos parâmetros fornecidos na URL
Campos do request:
| Nome | Tipo | Obrigatório | Exemplo | Onde enviar |
|---|---|---|---|---|
| accountId | number | Sim | 1 | Query Params |
| id | number | Não* | 42 | Query Params |
| number | string | Não* | 5511999999999 | Query Params |
| string | Não* | [email protected] | Query Params |
* Pelo menos um entre id, number e email é obrigatório.
Exemplo de uso:
# Busca por id:
curl --request GET \
--url 'https://api.sacflow.io/api/contacts/find?accountId=1&id=1' \
--header 'authorization: Bearer API_TOKEN' \
--header 'content-type: application/json'
# Busca por número de telefone:
curl --request GET \
--url 'https://api.sacflow.io/api/contacts/find?accountId=1&number=5511999999999' \
--header 'authorization: Bearer API_TOKEN' \
--header 'content-type: application/json'
# Busca por email:
curl --request GET \
--url 'https://api.sacflow.io/api/contacts/[email protected]' \
--header 'authorization: Bearer API_TOKEN' \
--header 'content-type: application/json'Exemplo de response (200):
{
"id": 1,
"accountId": 1,
"name": "Contato Exemplo",
"number": "5511999999999",
"email": "[email protected]",
"company": null,
"tags": [{ "id": 1 }],
"organization": { "id": 1, "name": "Empresa Exemplo" }
}Contato não encontrado (404):
{
"message": "Contact not found"
}Todas as requisições devem incluir o header authorization com um Bearer token válido:
authorization: Bearer API_TOKEN