API de presença por código
Versão 1 · HTTPS · JSON. Credencial por conta; ativação por evento no painel do cliente. Não oferece reconhecimento facial ou endpoints de match.
Conectar conta
Base: https://modface.gmscorporation.com.br/api/v1
Obtenha token com administrador da conta. Envie cabeçalho Authorization: Bearer SEU_TOKEN. Guarde chave somente no backend. Identificador da conta é retornado por GET /account; segredo adicional não necessário.
curl https://modface.gmscorporation.com.br/api/v1/account \ -H 'Authorization: Bearer SEU_TOKEN' \ -H 'Accept: application/json'
Resposta: ok, client_id, name, enabled_events e mode: individual_code.
Listar períodos
GET /api/v1/periods Authorization: Bearer SEU_TOKEN
Retorna períodos do evento conectado. Integração atual: Ibracel, evento Teste (108). Outros clientes/eventos exigem conexão de backend própria; criar conta não conecta eventos automaticamente.
Scanner QR em tempo real
Abra scanner ModFACE, conecte credencial, selecione período e autorize câmera. QR deve conter código da inscrição em texto simples (formato usado pelo Ibracel) ou JSON {"code":"CODIGO_DA_INSCRICAO"}. Imagens ficam no dispositivo. Leitura interrompe câmera e envia uma requisição; próximo QR exige nova ação. Animação azul indica leitura/verificação, não porcentagem de identificação.
Registrar presença
curl https://modface.gmscorporation.com.br/api/v1/attendance \
-H 'Authorization: Bearer SEU_TOKEN' \
-H 'Content-Type: application/json' \
--data '{"code":"CODIGO_DA_INSCRICAO","attendance_day_id":1082}'code: código da inscrição no Ibracel. attendance_day_id: ID inteiro retornado na lista de períodos. Presença permitida somente na data do período, para inscrição válida do evento. Repetir mesma presença não cria duplicata.
Evento Teste: períodos 1082 e 1083 em 16/10/2026; 1084 e 1085 em 17/10/2026. Não use códigos fictícios em produção.
Erros e integração
- 401: token ausente/inválido. Renovação revoga token anterior.
- 403: evento desconectado/desativado.
- 404: inscrição inválida, cancelada ou ambígua; endpoint inexistente.
- 409: período fora da data permitida.
- 413: payload acima de 4096 bytes.
- 422: campos inválidos ou período de outro evento.
- 502/503: integração indisponível. Verifique resultado antes de repetir operação.
Salve credencial uma vez na conta da sua aplicação. Valide com /account; selecione evento no painel ModFACE; carregue períodos e registre código via backend. A tela Ibracel de validação facial não é compatível com este contrato: use integração de presença por código.
Saúde pública: GET /health. Nunca envie token na URL, Git ou JavaScript público.