Versão privada V2.0
Introdução à API
A On-Premises OpenAPI V2.0 é uma plataforma aberta baseada em especificações RESTful, projetada para oferecer aos desenvolvedores interoperabilidade de dados e integração de negócios entre plataformas de nuvem privada de terceiros e a versão local do DJI FlightHub 2.
Por meio da OpenAPI V2.0, os desenvolvedores podem realizar integrações de sistemas em torno de módulos-chave como gerenciamento de dispositivos, gerenciamento de tarefas de voo e gerenciamento de dados (mídia, modelo e dados de mapa), construindo, sobre o FlightHub 2, aplicações de negócio para cenários como interoperabilidade de dados, gerenciamento de dispositivos, agendamento de tarefas e controle em tempo real leve.
Em comparação com a V1.0, a V2.0 tem como objetivo principal o ciclo fechado de cenários de desenvolvimento secundário. Sobre as capacidades existentes, ela complementa sistematicamente as APIs para módulos-chave como gerenciamento de dispositivos, gerenciamento de tarefas de voo e gerenciamento de dados (mídia, modelo e mapa), elevando o número total de interfaces para mais de 300 (a V1.0 possuía 67).
Além disso, esta versão otimiza o sistema de interfaces, separando a documentação das interfaces da nuvem pública e da implantação local, tornando a categorização mais clara, facilitando a compreensão e integração rápidas pelos desenvolvedores e permitindo que a OpenAPI siga, no futuro, um ritmo de iteração mais ágil.
Lista de recursos
| Recurso | Descrição |
|---|---|
| Gerenciamento de organização e projetos | Fornece recursos de consulta e gerenciamento de projetos, membros e permissões de funções. |
| Gerenciamento de dispositivos | Permite consultar e gerenciar dispositivos, incluindo lista de dispositivos, status em tempo real, sombra do modelo de coisas (thing model), eventos de saúde do HMS, configuração de rede e RTK — utilizado para construir sistemas de gerenciamento e configuração de dispositivos. |
| Tarefas de voo | Permite criar tarefas de voo, consultar a lista de tarefas e detalhes de execução, registros de voo e alertas de AI — utilizado para construir sistemas de gerenciamento de tarefas de voo. |
| Controle em tempo real | Permite consultar e obter o direito de controle em nuvem, emitir comandos de voo apontado, órbita POI, controle de câmera, entre outros — possibilitando controle em tempo real leve e em nível de negócio. |
| Transmissão ao vivo | Permite gerenciar transmissões ao vivo e encaminhamento de fluxo, alternar câmeras e qualidade — utilizado para construir sistemas de gerenciamento de transmissão ao vivo. |
| Gerenciamento de mídia | Permite consultar, gerenciar e baixar arquivos de mídia — utilizado para construir sistemas de gerenciamento de mídia. |
| Gerenciamento de modelos | Permite iniciar tarefas de reconstrução e gerenciar ativos de modelos — utilizado para construir sistemas de gerenciamento de modelos. |
| Gerenciamento de rotas de voo | Permite obter a lista de rotas de voo, gerenciar arquivos de rotas de voo — utilizado para construir sistemas de gerenciamento de arquivos de rotas de voo. |
| Gerenciamento de dados de mapa | Permite gerenciar anotações, gerenciar áreas de voo personalizadas, consultar o mapa de calor de sinal, entre outros recursos. |
| Detecção de mudanças | Permite iniciar tarefas de análise de mudanças e consultar os resultados de detecção — aplicável a cenários como monitoramento de obras e comparação de inspeções. |
| Modelagem aberta | Permite iniciar tarefas de modelagem utilizando dados de mídia provenientes de plataformas de terceiros. |
Documentação das interfaces
- A documentação das interfaces inclui a lista de recursos do OpenAPI, tutoriais, lista de interfaces e descrição das interfaces. Para mais detalhes, consulte: Documentação das interfaces da OpenAPI.
Código-fonte de exemplo
Após implantar o código-fonte de exemplo e executá-lo com sucesso, você poderá experimentar as funcionalidades da interface desenvolvidas com base na OpenAPI V2.0. Por meio do código-fonte de exemplo, você também pode conhecer rapidamente a forma de integração e o uso da OpenAPI, acelerando o desenvolvimento e a integração.
Clique em Código-fonte de exemplo para obter o código-fonte e o guia de integração.
Arquitetura do produto

Ativação rápida
Configuração do ambiente (exclusivo da versão local do FlightHub 2)
Consulte o manual de implantação da versão local do DJI FlightHub 2 para implantar a versão local do FlightHub 2.
Autenticação e autorização
Consulte o tutorial de autenticação e autorização para entender os princípios de autenticação e autorização da OpenAPI e obter x-user-token e X-Project-Uuid. Esses dois parâmetros devem ser informados no campo header da maioria das interfaces, sendo utilizados para garantir a segurança da OpenAPI e implementar o controle de acesso ao FlightHub 2.
Código de exemplo
1. Consultar o status do serviço de controle em tempo real do FlightHub 2
Após a implantação bem-sucedida da versão local do FlightHub 2, invoque a interface para consultar o status do serviço de controle em tempo real: Consultar status do sistema do FlightHub 2
```http
GET /openapi/v2.0/drc/health HTTP/1.1
Host: 127.0.0.1:30812
X-Language: en
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Project-Uuid: xxxxxxxxxx
x-user-token: xxxxxxxx
Um valor de retorno igual a 0 indica que o serviço de controle em tempo real do FlightHub 2 está operando normalmente:
```http
{
"code": 0,
"message": "OK",
"data": null
}
2. Obter a lista de projetos da organização
Crie uma organização no FlightHub 2, configure um projeto e vincule dispositivos. Consulte o capítulo Básico da plataforma > Gestão da organização deste manual para realizar as operações de criação de organizações e projetos no FlightHub 2 e, em seguida, invoque a interface Obter a lista de projetos da organização para obter a lista de projetos criados.
GET /openapi/v2.0/manage/api/v1/organizations/{uuid}/projects?usage=complete&sort_column=create_time&sort_type=desc&page=1&page_size=20 HTTP/1.1
Host: 127.0.0.1:30812
X-Language: en
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
X-Project-Uuid: xxxxxxxxxx
x-user-token: xxxxxxxx
Será retornada a lista de projetos criados:
```http
{
"code": 0,
"message": "OK",
"data": {
"list": [
{
"name": "c2c_test",
"introduction": "a",
"uuid": "b2c3d4e5-6789-0123-bcde-f12345678901",
"project_id": "PRJ202401001",
"org_uuid": "a1b2c3d4-5678-9012-abcd-ef1234567890",
"status": "active",
"c2c_enable": true,
"dock_rotation_disabled": false,
"c2c_task_enable": true,
"created_at": 1700000000,
"updated_at": 1700100000
}
]
}
}
3. Iniciar a transmissão ao vivo
Consulte o capítulo deste manual Gerenciamento de dispositivos para realizar a vinculação de dispositivos no FlightHub 2 e, em seguida, consulte o tutorial de gerenciamento de transmissão ao vivo para iniciar o envio do fluxo de transmissão ao vivo.
```http
POST /openapi/v2.0/drc/api/v2/projects/{proj_uuid}/live-channels/stream/start HTTP/1.1
Host: 127.0.0.1:30812
X-Project-Uuid: xxxxxxxxxx
X-Language: en
X-Request-Id: 550e8400-e29b-41d4-a716-446655440000
Content-Type: application/json
x-user-token: xxxxxxxx
Content-Length: 130
{
"sn": "1ZNBH1Dxxxxxxx",
"camera": "165-0-7",
"video": "normal-0",
"gateway_sn": "7CTDM3Dxxxxxxx",
"video_quality": 0
}
Um valor de retorno igual a 0 indica que a tarefa de envio do fluxo foi despachada com sucesso e o dispositivo começará a enviar o fluxo ao servidor de mídia conforme configurado:
```c
{
"code": 0,
"message": "OK",
"data": null
}
https://dl.djicdn.com/downloads/dji-terra/20240723/DJI%20Terra%20Error%20Code%20Guide%20V4.2.0_EN.pdf