Ir para o conteúdo
Hugi Ajuda

Chaves de API

Uma chave de API deixa o seu sistema — ERP, site, agendamento — usar o Hugi sem uma pessoa logada.

Integrações e API → Chaves de API. Exige perfil de Administrador.

Criar #

Dê um nome que diga onde ela é usada — “ERP da recepção”, “site de agendamento” — e marque os escopos: o que aquela chave pode fazer. O vocabulário é o mesmo das permissões de tela (read_conversation, respond_conversation, read_channel).

Marque só o que aquele sistema precisa. Uma chave que só avisa “seu pedido saiu para entrega” precisa de respond_conversation e de mais nada.

Uma chave por sistema, e não uma para tudo. É o que permite revogar o acesso do site sem derrubar o ERP, e é o que faz o registro dizer quem fez o quê.

Usar #

A chave vai no cabeçalho Authorization, como um token comum:

Authorization: Bearer hugi_sk_...

As rotas de conversa — receber, responder, encerrar, ler o histórico — estão em A API do Hugi. As duas abaixo são do canal API Hugi (o WhatsApp que você conecta lendo um QR), e não do canal oficial.

Ver o estado do canal #

GET /api/v1/transporte/estado

Enviar uma mensagem #

POST /api/v1/transporte/enviar
Content-Type: application/json
Authorization: Bearer hugi_sk_...

{
  "para": "5527999998888",
  "tipo": "texto",
  "texto": "Seu pedido saiu para entrega.",
  "correlacao": "pedido-4821"
}

correlacao é obrigatória. É o seu identificador para aquele envio, e é ele que volta no recibo dizendo se a mensagem foi entregue. Sem ela o recibo chegaria órfão e você não teria como ligá-lo ao que enviou — por isso o envio é recusado em vez de aceito pela metade.

Não mande tenantId. O tenant vem da chave. Se ele vier no corpo, a resposta é 400 — e não um silêncio, que faria você acreditar que aquele campo estava valendo.

As respostas de erro #

Todas trazem um código legível, e não só um número:

Código O que houve
PARA_AUSENTE, TEXTO_AUSENTE falta um campo obrigatório
CORRELACAO_AUSENTE falta a sua correlação
TIPO_DESCONHECIDO veja a lista de tipos aceitos que vem na resposta
TENANT_NO_CORPO remova tenantId
CANAL_SEM_DONO o canal ainda não foi conectado. É retentavel

Erros com retentavel: true valem repetir depois; os outros não vão passar até você mudar algo.

Um pedido bem formado que o canal não sabe executar — mandar áudio por um canal que não aceita áudio — devolve 422, e não 400. A distinção existe para o seu código separar “escrevi errado” de “esse canal não faz isso”.

Revogar #

No cartão da chave, Revogar. Vale na hora. O cartão passa a mostrar Revogada em vez de sumir da lista, para o registro do que existiu continuar legível.

O que a API cobre #

A rotina inteira do atendimento: listar e ler conversas, mensagens e eventos; enviar; transferir, encerrar, reabrir e comentar; ler contatos, conexões e o seu plano; e criar e revogar as próprias chaves. O contrato completo está em a API do Hugi, e em OpenAPI no GET /api/v1/openapi.json.

Esta página foi revisada em 02 de setembro de 2026.