Skip to content

📞 Central de Contato

📋 Visão Geral

A Central de Contato é o endpoint responsável por enfileirar notificações de contato na API Pública.

Ele permite que frontends, checkouts e integrações externas disparem mensagens de contato — como formulários, solicitações de atendimento ou quaisquer dados livres — para o serviço de notificações da plataforma.

O uso mais comum é em formulários de contato, solicitações de suporte e fluxos de atendimento ao cliente, onde o frontend precisa enviar dados para a equipe responsável sem depender de processamento síncrono.

🔄 Como Funciona

A rota não exige autenticação — qualquer cliente HTTP pode chamá-la sem fornecer token.

Se um token válido for enviado no cabeçalho Authorization, ele será processado normalmente pelo middleware PublicAuth, mas sua ausência não bloqueia nem altera a resposta.

Ao receber a chamada, o endpoint enfileira imediatamente uma notificação do tipo contact-center no serviço de notificações (tools.uappi).

O processamento da notificação é assíncrono — a API retorna sucesso assim que a notificação é enfileirada, sem aguardar o despacho efetivo (envio de e-mail, webhook ou outra ação configurada no template de notificação).

📦 Estrutura do Payload

O campo data aceita qualquer objeto JSON associativo — a API não valida nem restringe os campos internos.

O conteúdo de data é encaminhado diretamente ao template de notificação do centro de contato, cabendo à configuração do template determinar quais campos serão utilizados no despacho.

Exemplos de uso comuns:

  • name, email, message — dados de um formulário de contato tradicional.
  • orderId, reason, details — solicitação de suporte vinculada a um pedido.
  • Qualquer estrutura que faça sentido para o fluxo da loja.
  • 📌 Notas e Considerações

  • O campo data é obrigatório e deve ser um objeto JSON (não aceita arrays indexados).
  • A resposta {"status": true, "data": true} indica apenas que a notificação foi enfileirada com sucesso — não garante entrega final.
  • O comportamento de despacho (e-mail, webhook, etc.) depende da configuração do template de notificação contact-center na plataforma.

Enviar Notificação para Central de Contato

POST /publics/contact-center

Enfileira uma notificação de contato no serviço de notificações da plataforma

Descrição

Este endpoint enfileira uma notificação do tipo contact-center no serviço de notificações da plataforma.

Autenticação opcional

O middleware PublicAuth processa o token se presente, mas não o exige.

Chamadas sem o cabeçalho Authorization são tratadas normalmente e recebem a mesma resposta de sucesso.

Payload livre

O campo data aceita qualquer objeto JSON associativo — a API não valida campos específicos dentro dele.

O conteúdo é encaminhado diretamente ao template de notificação contact-center configurado na plataforma, que determina como os dados serão utilizados no despacho.

Processamento assíncrono

A resposta de sucesso indica que a notificação foi enfileirada com êxito, não que o despacho final (e-mail, webhook, etc.) já ocorreu.

O processamento acontece de forma assíncrona, em segundo plano.

Parâmetros

Parâmetros do Corpo

ParâmetroTipoObrigatórioDescrição
dataobject✅Objeto associativo com os dados do contato. Conteúdo livre — sem campos fixos obrigatórios internamente.

Exemplo de Requisição

1curl --request POST \
2 --url {{MAIN_URL}}/api/v3/publics/contact-center \
3 --header 'Content-Type: application/json' \
4 --data '{
5 "data": {
6 "name": "João Silva",
7 "email": "joao@exemplo.com",
8 "message": "Gostaria de saber mais sobre os produtos."
9 }
10 }'

✅ Resposta de Sucesso

HTTP Status: 200 OK

1{
2 "status": true,
3 "data": true
4}

⚠️ Possíveis erros:

Atenção: a seguir estão destacados os principais erros que podem ocorrer neste endpoint.

Os cenários descritos representam os erros mais relevantes do contexto atual, servindo como referência para entendimento e tratamento das falhas.

Código InternoCódigo HttpDescrição
INVALID_REQUEST_PAYLOAD400O payload da requisição é inválido — data ausente ou não é um objeto associativo.

⚠️ Erros retornados:

Campo data ausente:

1{
2 "status": false,
3 "data": {
4 "code": 400,
5 "errorCode": "INVALID_REQUEST_PAYLOAD",
6 "message": "The requested payload is not valid!",
7 "details": {
8 "data": ["The data field is required."]
9 }
10 }
11}

Campo data enviado como array indexado (não associativo):

1{
2 "status": false,
3 "data": {
4 "code": 400,
5 "errorCode": "INVALID_REQUEST_PAYLOAD",
6 "message": "The requested payload is not valid!",
7 "details": {
8 "data": ["The data attribute must be an associative array."]
9 }
10 }
11}

Uappi é a melhor opção para o crescimento da sua loja!

;