Referência da API do Triagem
URL Base: https://triagem.mangati.com
Todos os endpoints estão sob /api. Requer um Token de Acesso gerado em Admin → Tokens de Acesso.
Authorization: Bearer <token_de_acesso>Triagens
Obter Configuração da Triagem
http
GET /api/triages/{id}
Authorization: Bearer <token_de_acesso>Retorna a configuração completa da triagem: páginas, layout, tema e configurações do app/webhook.
Exemplo:
bash
curl https://triagem.mangati.com/api/triages/018e4f2b-7b3c-7000-8d2e-111111111111 \
-H "Authorization: Bearer TOKEN" \
-H "Accept: application/json"Resposta:
json
{
"id": "018e4f2b-7b3c-7000-8d2e-111111111111",
"name": "Kiosk Principal",
"app": {
"id": "018e4f2c-...",
"baseUrl": "https://novosga.mangati.com",
"unidade": 1
},
"pages": [
{
"type": "customer",
"title": "Identificação",
"config": { "required": false }
},
{
"type": "services",
"title": "Selecione o Serviço"
},
{
"type": "priorities",
"title": "Tipo de Atendimento"
},
{
"type": "printing",
"title": "Sua Senha"
}
],
"layout": {
"headerHeight": 80,
"footerHeight": 60,
"background": "#ffffff"
},
"theme": {
"primaryColor": "#0066cc",
"fontFamily": "Inter, sans-serif",
"logoUrl": "https://painel.mangati.com/uploads/logo.png"
}
}Cache: Público, 30 segundos.
Dispositivos
Obter Dispositivo
http
GET /api/devices/{id}
Authorization: Bearer <token_de_acesso>Retorna informações do dispositivo e a triagem atribuída.
Resposta:
json
{
"id": "018e4f2d-...",
"name": "Kiosk Entrada",
"triage": { "id": "018e4f2b-..." },
"os": "Windows 11",
"browser": "Chromium 120"
}Obter Dispositivo por Código
http
GET /api/device-codes/{codigo}
Authorization: Bearer <token_de_acesso>Resolve o código de 6 caracteres exibido no totem.
Exemplo:
bash
curl https://triagem.mangati.com/api/device-codes/XY9K2M \
-H "Authorization: Bearer TOKEN"Permissão de Dispositivo
http
GET /api/device-permissions/{id}
Authorization: Bearer <token_de_acesso>Apps (Integração com NovoSGA)
Obter App
http
GET /api/apps/{id}
Authorization: Bearer <token_de_acesso>Retorna a configuração de conexão com o NovoSGA para esta triagem.
Resposta:
json
{
"id": "018e4f2c-...",
"name": "NovoSGA Central",
"baseUrl": "https://novosga.mangati.com",
"token": "...",
"unidade": 1
}Fluxo de Uso do Totem (perspectiva do dispositivo)
O frontend do totem chama estes endpoints sequencialmente:
GET /api/triages/{id}- carregar configuração ao iniciar- Via conexão do app NovoSGA:
GET /api/servicos,GET /api/prioridades - Quando o cidadão confirma:
POST /api/distribui(NovoSGA) - emitir senha - Exibir número da senha da resposta (
senha.numero)
Exemplo de Integração em PHP
php
// Carregar configuração da triagem
$response = $client->get('https://triagem.mangati.com/api/triages/' . $triageId, [
'headers' => ['Authorization' => 'Bearer ' . $token],
]);
$triage = json_decode($response->getBody(), true);
// Acessar configuração do app/conexão
$novosgaBaseUrl = $triage['app']['baseUrl'];
$unidadeId = $triage['app']['unidade'];
// Emitir senha após seleção do cidadão
$ticket = $client->post("{$novosgaBaseUrl}/api/distribui", [
'headers' => ['Authorization' => 'Bearer ' . $novosgaToken],
'json' => [
'unidade' => $unidadeId,
'servico' => $selectedServiceId,
'prioridade' => $selectedPriorityId,
],
]);