Contatos

Agenda, verificação de números e foto de perfil.

Basehttps://app.onzap.io/v1/instances/{instanceId}AuthX-Instance-Token: SEU_TOKEN

Listar contatos

GET/v1/instances/{instanceId}/contacts
API OnZap

Parâmetros de query

sortBystringopcional
Sort by field
sortOrderstringopcional
Sort order - descending (Z => A, New first) or ascending (A => Z, Old first)
limitnumberopcional
offsetnumberopcional
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/contacts" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta

Sucesso

Verificar se o número tem WhatsApp

GET/v1/instances/{instanceId}/contacts/check-exists
API OnZap

Confere se o número tem WhatsApp e devolve o chatId correto (no Brasil, resolve o nono dígito). Use antes de enviar para números de origem desconhecida.

Parâmetros de query

phonestringobrigatório
The phone number to check
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/contacts/check-exists?phone=1213213213" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta
{
  "chatId": "Chat id for the phone number. Undefined if the number does not exist",
  "numberExists": false,
  "pn": "5511999999999@c.us"
}

Dados do contato

GET/v1/instances/{instanceId}/contacts/{contactId}
API OnZapAPI oficial

Na API oficial: devolve o que sabemos pelas conversas (nome, telefone, BSUID); a Meta não tem agenda de contatos.

Parâmetros do caminho

contactIdstringobrigatório
Conversa: número com DDI e DDD (5511999999999) ou JID (…@c.us, …@g.us, …@lid).
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/contacts/5511999999999" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta

API oficial: o que sabemos do contato pelas conversas

{
  "bsuid": "BR.1349120865530274191",
  "id": "5511999999999@c.us",
  "lid": "36576092528787@lid",
  "phone": "5511999999999",
  "picture": "https://app.onzap.io/v1/avatars/i01jabcdefghjkmnpqrstvwxyz/5511999999999@c.us?exp=1767229200&sig=…",
  "pushName": "Maria",
  "username": "maria.silva"
}

Criar ou atualizar contato

PUT/v1/instances/{instanceId}/contacts/{contactId}
API OnZap

Parâmetros do caminho

contactIdstringobrigatório
Conversa: número com DDI e DDD (5511999999999) ou JID (…@c.us, …@g.us, …@lid).

Corpo (JSON)

firstNamestringobrigatório
Contact First Name
lastNamestringobrigatório
Contact Last Name
Requisição
curl -X PUT "https://app.onzap.io/v1/instances/SUA_INSTANCIA/contacts/5511999999999" \
  -H "X-Instance-Token: $ONZAP_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "John",
    "lastName": "Doe"
  }'
Resposta
{
  "success": true
}

Foto do contato

GET/v1/instances/{instanceId}/contacts/{contactId}/picture
API OnZap

Parâmetros do caminho

contactIdstringobrigatório
Conversa: número com DDI e DDD (5511999999999) ou JID (…@c.us, …@g.us, …@lid).

Parâmetros de query

refreshbooleanopcional
Refresh the picture from the server (24h cache by default). Do not refresh if not needed, you can get rate limit error
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/contacts/5511999999999/picture" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta

Sucesso

Mapeamento LID → telefone

GET/v1/instances/{instanceId}/lids
API OnZap

Parâmetros de query

limitnumberopcional
offsetnumberopcional
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/lids" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta
[
  {
    "lid": "1111111@lid",
    "pn": "3333333@c.us"
  }
]

Quantidade de LIDs conhecidos

GET/v1/instances/{instanceId}/lids/count
API OnZap
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/lids/count" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta
{
  "count": 0
}

LID pelo telefone

GET/v1/instances/{instanceId}/lids/pn/{phoneNumber}
API OnZap

Parâmetros do caminho

phoneNumberstringobrigatório
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/lids/pn/PHONENUMBER" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta
{
  "lid": "1111111@lid",
  "pn": "3333333@c.us"
}

Telefone pelo LID

GET/v1/instances/{instanceId}/lids/{lid}
API OnZap

Parâmetros do caminho

lidstringobrigatório
Requisição
curl "https://app.onzap.io/v1/instances/SUA_INSTANCIA/lids/36576092528787@lid" \
  -H "X-Instance-Token: $ONZAP_TOKEN"
Resposta
{
  "lid": "1111111@lid",
  "pn": "3333333@c.us"
}