API
O Dronetrake expõe uma API REST com versões para ligar os teus sistemas: gestão de escola, plataformas de formação, ferramentas internas. Uma só API para todos, a mesma que nós usamos.
A API cresce com casos reais. Se te falta algo, um dado a mais, um evento, uma escrita a partir do teu sistema, escreve-nos: esperamos pedidos específicos e ficamos abertos e disponíveis para os construir juntos. support@dronetrake.com
A especificação OpenAPI 3.1 é pública e atualiza-se a cada versão: https://dronetrake.com/api/v1/openapi.yaml
GET https://dronetrake.com/api/v1/organization · GET /api/v1/school/students · GET /api/v1/school/tasks · GET /api/v1/school/tasks/{id} · GET /api/v1/school/attestations · GET /api/v1/missions · GET /api/v1/missions/{id} · GET /api/v1/flights
Cada pedido leva um token no cabeçalho Authorization: Bearer. Os tokens criam-se no painel, em Business → API e integrações, pertencem a uma organização e têm âmbitos explícitos.
curl -H "Authorization: Bearer dt_xxxxxxxx_…" https://dronetrake.com/api/v1/organization
organization.read — Organização (leitura)school.read — Programa Escolas: alunos, tarefas, atestações (leitura)operations.read — Operações: missões e voos com as horas por pessoa (leitura)120 pedidos por minuto por token. Acima disso, 429 com Retry-After.
Sempre JSON: {"error": {"code", "message"}}. 401 token em falta ou inválido, 403 âmbito insuficiente ou programa inativo, 404 não encontrado, 429 pedidos a mais.
Regista um endpoint https no painel (Business → Webhooks) e escolhe os eventos. Cada entrega é um POST em JSON com os cabeçalhos X-Dronetrake-Event, X-Dronetrake-Delivery (id único) e X-Dronetrake-Signature (t=<unix>,v1=HMAC-SHA256 do corpo com o prefixo t.). Responde 2xx em 10 segundos; caso contrário tentamos de novo após 1 minuto, 5, 30, 2 horas e 12 horas, e depois a entrega fica abandonada e visível no registo. Trinta falhas seguidas desligam o endpoint.
school.task.accepted — Tarefa aceite pelo alunoschool.task.declined — Tarefa recusadaschool.task.revoked — Tarefa revogada pela escolaschool.task.completed — Tarefa concluídaschool.task.attested — Atestação emitidaschool.student.enrolled — Aluno inscritoschool.student.left — Aluno saiumission.completed — Missão concluídaflight.logged — Voo registado no logbookPOST https://esempio.scuola.it/dronetrake
X-Dronetrake-Event: school.task.attested
X-Dronetrake-Delivery: 7f3c…-…
X-Dronetrake-Timestamp: 1788950000
X-Dronetrake-Signature: t=1788950000,v1=9c1e…
{"id":"7f3c…","event":"school.task.attested","created_at":"2026-09-08T12:00:00+00:00","organization":{"id":165,"name":"Dronetrake Academy"},"data":{"task":{…},"attestation":{…}}}
Cada pedido fica registado: quem leu o quê, quando, com que resultado. Criar e revogar tokens são atos na cadeia de evidência da organização.
Webhooks assinados nos eventos do programa Escolas e escrita a pedido. Escreve-nos para support@dronetrake.com.