Skip to content

Referência da API do Avaliação

URL Base: https://avaliacao.mangati.com

Todos os endpoints estão sob /api. Operações de escrita requerem um Token de Acesso.

Authorization: Bearer <token_de_acesso>

Avaliações

Obter Avaliação por ID

http
GET /api/evaluations/{id}
Authorization: Bearer <token_de_acesso>

Exemplo:

bash
curl https://avaliacao.mangati.com/api/evaluations/018e4f50-7b3c-7000-8d2e-111111111111 \
  -H "Authorization: Bearer TOKEN" \
  -H "Accept: application/json"

Resposta:

json
{
  "id": "018e4f50-7b3c-7000-8d2e-111111111111",
  "status": "submitted",
  "score": 4,
  "notes": "Atendimento rápido, mas a sala de espera estava muito cheia.",
  "customer": {
    "name": "João Silva",
    "document": "123.456.789-00"
  },
  "ticket": {
    "remoteId": "456",
    "number": "A001"
  },
  "location": {
    "name": "Sede Central",
    "remoteId": "1"
  },
  "service": {
    "name": "Documentação",
    "remoteId": "3"
  }
}

http
GET /api/evaluations/resolve/{linkKey}

Sem autenticação necessária - usado pela página de avaliação do cidadão.

Exemplo:

bash
curl https://avaliacao.mangati.com/api/evaluations/resolve/ABC123XYZ

Resposta: Objeto de avaliação com status, dados do cidadão e detalhes do serviço (nota e comentários podem ser nulos se ainda não enviados).


Criar Avaliação (via webhook)

http
POST /api/evaluations
Authorization: Bearer <token_de_acesso>
Content-Type: application/json

Normalmente chamado pelo consumidor de webhook do NovoSGA (uso interno). Utilize para criar avaliações programaticamente em integrações customizadas.

Corpo da requisição:

CampoTipoObrigatórioDescrição
remoteIdstringSimID da senha no sistema de origem
customerobjetoNão{name, document}
ticketobjetoSim{remoteId, number}
locationobjetoNão{name, remoteId}
serviceobjetoNão{name, remoteId}

Exemplo:

bash
curl -X POST https://avaliacao.mangati.com/api/evaluations \
  -H "Authorization: Bearer TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "remoteId": "456",
    "ticket": { "remoteId": "456", "number": "A001" },
    "customer": { "name": "João Silva", "document": "123.456.789-00" },
    "service": { "name": "Documentação", "remoteId": "3" },
    "location": { "name": "Sede Central", "remoteId": "1" }
  }'

Resposta (201): Avaliação criada com status: pending e uma linkKey.


Enviar Avaliação (pelo operador)

http
PUT /api/evaluations/{id}
Authorization: Bearer <token_de_acesso>
Content-Type: application/json

Corpo da requisição:

CampoTipoObrigatórioDescrição
scoreinteiroSimNota de 1 a 5
notesstringNãoComentário opcional

http
PUT /api/evaluations/resolve/{linkKey}
Content-Type: application/json

Sem autenticação necessária - acessível pelo cidadão através do link único.

Exemplo:

bash
curl -X PUT https://avaliacao.mangati.com/api/evaluations/resolve/ABC123XYZ \
  -H "Content-Type: application/json" \
  -d '{
    "score": 5,
    "notes": "Excelente atendimento!"
  }'

Resposta (200): Objeto de avaliação atualizado com status submitted.


Exemplo de Integração em PHP

php
// Criar avaliação após encerramento da senha no NovoSGA
public function onTicketFinished(array $ticket): void
{
    $this->avaliacaoClient->post('/api/evaluations', [
        'headers' => ['Authorization' => 'Bearer ' . $this->token],
        'json'    => [
            'remoteId' => (string) $ticket['id'],
            'ticket'   => [
                'remoteId' => (string) $ticket['id'],
                'number'   => $ticket['senha']['numero'],
            ],
            'customer' => $ticket['cliente'] ? [
                'name'     => $ticket['cliente']['nome'],
                'document' => $ticket['cliente']['documento'],
            ] : null,
            'service'  => [
                'name'     => $ticket['servico']['nome'],
                'remoteId' => (string) $ticket['servico']['id'],
            ],
            'location' => [
                'name'     => $ticket['local']['nome'],
                'remoteId' => (string) $ticket['local']['id'],
            ],
        ],
    ]);
}

// Enviar link ao cidadão (ex.: via Notificação)
// $evaluation['linkKey'] → https://avaliacao.mangati.com/evaluate/{linkKey}

Documentação do Mangati Cloud Suite