FLY+ SECURITY · GUIA PARA O BACKEND DO APP

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.

← Voltar ao painel