API de câmeras por contrato
A API está preparada para listar câmeras vinculadas. Vídeo ao vivo, gravações e exportação serão implementados e testados após a primeira câmera.
Autenticação entre servidores
Gere uma chave no painel em Integrações → APP FLY+. Guarde a chave somente no backend do app. Não distribua a chave ao navegador nem ao aplicativo móvel.
Depois de autenticar o cliente, concluir a verificação adicional de acesso às câmeras e confirmar seu contrato no SGP, o backend do app assina um JWT HS256 válido por até 5 minutos. O contrato vem da sessão autenticada e da consulta ao SGP; não aceite um contrato arbitrário informado pelo cliente.
{
"iss": "fly-app",
"aud": "fly-security",
"sub": "identificador-do-cliente-autenticado",
"contract_id": "12345",
"scope": "cameras:read",
"iat": 1791840000,
"exp": 1791840300
}Use os horários Unix atuais. A chave gerada pelo painel é a chave HMAC do JWT. O header deve declarar alg: HS256. Não use a senha administrativa para autenticar a API do app.
Endpoints disponíveis
GET https://security.flytelecomfibra.com.br/api/v1/cameras
Authorization: Bearer <JWT>
GET https://security.flytelecomfibra.com.br/api/v1/cameras/<camera_id>
Authorization: Bearer <JWT>A lista é filtrada pelo contrato assinado no token. Uma câmera de outro contrato retorna 404. Respostas não liberam links RTSP nem credenciais de câmeras.
{
"contract_id": "12345",
"cameras": [{"id": "camera_teste"}],
"retention_days": 7,
"media_ready": false
}media_ready: false indica que a entrega de vídeo e gravações ao app ainda está pendente. Um teste de conectividade ao endereço do app não prova que o app já consome esta API. A integração ao código do app é uma etapa separada.
SGP
A consulta usa POST /api/ura/consultacliente/ com app, token e cpfcnpj, conforme o conector já usado no projeto FLY+. Confira as permissões do token na sua instalação do SGP. O painel permite importar os números de contrato retornados e configurar seus vínculos.
Operação e continuidade
O banco do painel e a chave de cifragem são persistidos no volume fly-security-data. Faça backup dos dois juntos. A perda da chave de cifragem impede recuperar tokens salvos. Substituir a chave do app invalida os tokens assinados com a chave anterior.