Todas as rotas
Gerada da mesma especificação que a API valida.
Todas as rotas de https://api.amivu.com.br/v1. Esta página e o openapi.json saem do mesmo catálogo — se divergirem, o CI reprova antes de qualquer coisa subir.
Prefere disparar do seu cliente de API?
A coleção sai deste mesmo catálogo — todas as 42 rotas, agrupadas, com o cabeçalho de autorização pronto. A chave fica em branco: preencha amivu_api_key no seu cliente.
O arquivo é uma coleção Postman v2.1 — que o Insomnia, o Bruno e o Hoppscotch também importam. Se o seu cliente prefere especificação, aponte-o direto para o openapi.json.
amivu_live_…, toda mensagem disparada da coleção chega a um cliente de verdade. O sandbox aceita as mesmas rotas e não envia para ninguém.Contatos
/contactsscope contacts:readReturns the organization's contacts, newest first. Filter by `email`, `phone` or `external_id` to find a specific person without paging through the whole base.
Parâmetros de consulta
limitnumberafterstringemailstringphonestringexternal_idstringquerystringtag_idstringcreated_afterstringcreated_beforestring
Resposta
200 — uma lista de Contact, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/contacts \
-H "Authorization: Bearer $AMIVU_API_KEY"
/contactsscope contacts:writeaccepted Idempotency-KeyCreates a contact. When `external_id` is provided and already exists, the existing contact is returned unchanged — which makes CRM synchronisation safe to re-run.
Corpo da requisição
namestringfirst_namestringlast_namestringemailstringphonestringexternal_idstringavatar_urlstringtagsstring[]custom_fieldsobjectmetadataobject
Resposta
201 — um objeto Contact.
Exemplo
curl https://api.amivu.com.br/v1/contacts \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/contacts/{contact_id}scope contacts:readReturns a single contact, with its tags and custom fields.
Parâmetros de caminho
contact_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Contact.
Exemplo
curl https://api.amivu.com.br/v1/contacts/cnt_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
/contacts/{contact_id}scope contacts:writeUpdates the given fields. Sending `tags` REPLACES the contact's tags; sending `null` in a custom field clears it.
Parâmetros de caminho
contact_id— o identificador Amivu, com prefixo.
Corpo da requisição
namestringfirst_namestringlast_namestringemailstringphonestringexternal_idstringavatar_urlstringtagsstring[]custom_fieldsobjectmetadataobject
Resposta
200 — um objeto Contact.
Exemplo
curl https://api.amivu.com.br/v1/contacts/cnt_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X PATCH \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/contacts/{contact_id}scope contacts:writeDeletes the contact and, in cascade, the conversations and messages exchanged with that person. This cannot be undone.
Parâmetros de caminho
contact_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Deleted.
Exemplo
curl https://api.amivu.com.br/v1/contacts/cnt_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X DELETE \
-H "Authorization: Bearer $AMIVU_API_KEY"
Conversas
/conversationsscope conversations:readReturns conversations, newest first, filterable by status, channel and assignee.
Parâmetros de consulta
limitnumberafterstringstatus"open" | "pending" | "closed"channel_idstringchannel_type"whatsapp" | "instagram" | "messenger" | "email" | "webchat"contact_idstringassigned_tostringteam_idstringtag_idstringexternal_idstringcreated_afterstringcreated_beforestringupdated_afterstring
Resposta
200 — uma lista de Conversation, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/conversations \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversationsscope conversations:writeaccepted Idempotency-KeyOpens a conversation with a contact. When `external_id` is provided and already exists, the existing conversation is returned — so a retry does not split the history in two.
Corpo da requisição
contact_idstringobrigatóriochannel_idstringexternal_idstringmetadataobject
Resposta
201 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/conversations/{conversation_id}scope conversations:readReturns a single conversation.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversations/{conversation_id}scope conversations:writeUpdates status, `external_id` or `metadata`.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Corpo da requisição
status"open" | "pending" | "closed"external_idstringmetadataobject
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X PATCH \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/conversations/{conversation_id}/closescope conversations:writeMarks the conversation as resolved and stamps the time it happened.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/close \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversations/{conversation_id}/reopenscope conversations:writeBrings a closed conversation back to `open`.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/reopen \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversations/{conversation_id}/assignscope conversations:writeAssigns the conversation to an agent or a team. The agent must belong to this organization — assigning across organizations is refused.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Corpo da requisição
user_idstringteam_idstring
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/assign \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/conversations/{conversation_id}/unassignscope conversations:writeRemoves the current assignee.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/unassign \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversations/{conversation_id}/messagesscope messages:readReturns the conversation's messages, newest first.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Parâmetros de consulta
limitnumberafterstringdirection"inbound" | "outbound"created_afterstringcreated_beforestring
Resposta
200 — uma lista de Message, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/messages \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversations/{conversation_id}/notesscope notes:readReturns the conversation's internal notes. Notes are never delivered to the contact — they are a different entity from messages, with no send path at all.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Resposta
200 — uma lista de Note, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/notes \
-H "Authorization: Bearer $AMIVU_API_KEY"
/conversations/{conversation_id}/notesscope notes:writeAdds an internal note. It stays inside Amivu.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Corpo da requisição
bodystringobrigatório
Resposta
201 — um objeto Note.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/notes \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/conversations/{conversation_id}/tagsscope tags:writeApplies a tag to the conversation's CONTACT — the only tag link the domain has. The tag follows the person across every conversation, filter and broadcast.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.
Corpo da requisição
tag_idstringobrigatório
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/tags \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/conversations/{conversation_id}/tags/{tag_id}scope tags:writeRemoves the tag from the conversation's contact.
Parâmetros de caminho
conversation_id— o identificador Amivu, com prefixo.tag_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Conversation.
Exemplo
curl https://api.amivu.com.br/v1/conversations/conv_01K7ZFA5X8Q2M4N6P8R0T2V4W6/tags/tag_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X DELETE \
-H "Authorization: Bearer $AMIVU_API_KEY"
Mensagens
/messagesscope messages:writeaccepted Idempotency-KeySends a message through the conversation's channel. The channel is derived from the conversation — there is no per-channel endpoint. Capabilities are checked before anything is written: a channel that does not support the type refuses with `unsupported_message_type` and nothing is recorded. Text and media are sent: for `image`, `video`, `audio` and `document`, upload the file first with `POST /uploads` and pass its `attachment_id`. `template` is part of the schema but is not sent yet — it is refused with `unsupported_message_type` on every channel.
Corpo da requisição
conversation_idstringobrigatóriotype"text"obrigatóriotextstringmetadataobjectattachment_idstringtemplateobject
Resposta
201 — um objeto Message.
Exemplo
curl https://api.amivu.com.br/v1/messages \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/messages/{message_id}scope messages:readReturns a message and its delivery state. `status` may be `null` — that is information, not absence of it: the channel does not report receipts.
Parâmetros de caminho
message_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Message.
Exemplo
curl https://api.amivu.com.br/v1/messages/msg_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
Canais
/channelsscope channels:readReturns the connected channels and what each one can do. Read `capabilities` before sending — it is generated from the implementation, not from the provider's brochure.
Resposta
200 — uma lista de Channel, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/channels \
-H "Authorization: Bearer $AMIVU_API_KEY"
/channels/{channel_id}scope channels:readReturns one channel, with its capability matrix.
Parâmetros de caminho
channel_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Channel.
Exemplo
curl https://api.amivu.com.br/v1/channels/chn_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
Atendentes
/usersscope users:readReturns the organization's agents.
Parâmetros de consulta
limitnumberafterstring
Resposta
200 — uma lista de User, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/users \
-H "Authorization: Bearer $AMIVU_API_KEY"
/users/{user_id}scope users:readReturns one agent.
Parâmetros de caminho
user_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto User.
Exemplo
curl https://api.amivu.com.br/v1/users/usr_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
Times
/teamsscope teams:readReturns the organization's teams.
Resposta
200 — uma lista de Team, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/teams \
-H "Authorization: Bearer $AMIVU_API_KEY"
/teamsscope teams:writeCreates a team.
Corpo da requisição
namestringobrigatório
Resposta
201 — um objeto Team.
Exemplo
curl https://api.amivu.com.br/v1/teams \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/teams/{team_id}scope teams:readReturns one team.
Parâmetros de caminho
team_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Team.
Exemplo
curl https://api.amivu.com.br/v1/teams/team_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
/teams/{team_id}/usersscope teams:readReturns the agents that belong to the team.
Parâmetros de caminho
team_id— o identificador Amivu, com prefixo.
Resposta
200 — uma lista de User, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/teams/team_01K7ZFA5X8Q2M4N6P8R0T2V4W6/users \
-H "Authorization: Bearer $AMIVU_API_KEY"
Etiquetas
/tagsscope tags:readReturns the organization's tags.
Resposta
200 — uma lista de Tag, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/tags \
-H "Authorization: Bearer $AMIVU_API_KEY"
/tagsscope tags:writeCreates a tag.
Corpo da requisição
namestringobrigatóriocolorstring
Resposta
201 — um objeto Tag.
Exemplo
curl https://api.amivu.com.br/v1/tags \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/tags/{tag_id}scope tags:writeRenames the tag or changes its colour.
Parâmetros de caminho
tag_id— o identificador Amivu, com prefixo.
Corpo da requisição
namestringcolorstring
Resposta
200 — um objeto Tag.
Exemplo
curl https://api.amivu.com.br/v1/tags/tag_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X PATCH \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/tags/{tag_id}scope tags:writeDeletes the tag; it disappears from every contact that had it.
Parâmetros de caminho
tag_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Deleted.
Exemplo
curl https://api.amivu.com.br/v1/tags/tag_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X DELETE \
-H "Authorization: Bearer $AMIVU_API_KEY"
Campos personalizados
/custom-fieldsscope custom_fields:readReturns the custom field catalogue. The `key` of each field is what appears in `contact.custom_fields`, and it never changes after creation.
Resposta
200 — uma lista de CustomField, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/custom-fields \
-H "Authorization: Bearer $AMIVU_API_KEY"
/custom-fieldsscope custom_fields:writeCreates a custom field definition.
Corpo da requisição
namestringobrigatóriokeystringscope"contact" | "organization"valuestring
Resposta
201 — um objeto CustomField.
Exemplo
curl https://api.amivu.com.br/v1/custom-fields \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
Webhooks
/webhooksscope webhooks:readReturns the endpoints registered for THIS key's environment. Secrets come masked.
Resposta
200 — uma lista de WebhookEndpoint, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/webhooks \
-H "Authorization: Bearer $AMIVU_API_KEY"
/webhooksscope webhooks:writeRegisters an endpoint. The signing secret comes in full in this response and never again — store it before you move on. The endpoint's environment is taken from the API key, not from the body.
Corpo da requisição
urlstringobrigatóriodescriptionstringevents"message.received" | "message.sent" | "message.delivered" | "message.read" | "message.failed" | "conversation.created" | "conversation.updated" | "conversation.assigned" | "conversation.closed" | "conversation.reopened" | "contact.created" | "contact.updated" | "tag.added" | "tag.removed"[]obrigatórioenvironment"live" | "test"enabledboolean
Resposta
201 — um objeto WebhookEndpoint.
Exemplo
curl https://api.amivu.com.br/v1/webhooks \
-X POST \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/webhooks/{webhook_id}scope webhooks:readReturns one endpoint, with the secret masked.
Parâmetros de caminho
webhook_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto WebhookEndpoint.
Exemplo
curl https://api.amivu.com.br/v1/webhooks/wh_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-H "Authorization: Bearer $AMIVU_API_KEY"
/webhooks/{webhook_id}scope webhooks:writeUpdates the URL, description, subscribed events or enabled state. Re-enabling clears the failure counter.
Parâmetros de caminho
webhook_id— o identificador Amivu, com prefixo.
Corpo da requisição
urlstringdescriptionstringevents"message.received" | "message.sent" | "message.delivered" | "message.read" | "message.failed" | "conversation.created" | "conversation.updated" | "conversation.assigned" | "conversation.closed" | "conversation.reopened" | "contact.created" | "contact.updated" | "tag.added" | "tag.removed"[]enabledboolean
Resposta
200 — um objeto WebhookEndpoint.
Exemplo
curl https://api.amivu.com.br/v1/webhooks/wh_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X PATCH \
-H "Authorization: Bearer $AMIVU_API_KEY" \
-H "Content-Type: application/json" \
-d '{ }'
/webhooks/{webhook_id}scope webhooks:writeDeletes the endpoint and its delivery history.
Parâmetros de caminho
webhook_id— o identificador Amivu, com prefixo.
Resposta
200 — um objeto Deleted.
Exemplo
curl https://api.amivu.com.br/v1/webhooks/wh_01K7ZFA5X8Q2M4N6P8R0T2V4W6 \
-X DELETE \
-H "Authorization: Bearer $AMIVU_API_KEY"
/webhooks/{webhook_id}/deliveriesscope webhooks:readReturns one row per ATTEMPT, newest first. Attempts of the same event share `event_id` — which is also what you should deduplicate on when receiving.
Parâmetros de caminho
webhook_id— o identificador Amivu, com prefixo.
Resposta
200 — uma lista de WebhookDelivery, com pagination.
Exemplo
curl https://api.amivu.com.br/v1/webhooks/wh_01K7ZFA5X8Q2M4N6P8R0T2V4W6/deliveries \
-H "Authorization: Bearer $AMIVU_API_KEY"
Precisa gerar um cliente? Baixe a especificação — ela é OpenAPI 3.1 e funciona com os geradores de sempre. Veja também Versões e depreciação.
Escrevemos sobre operação de atendimento, canais e IA no blog da Amivu.