OpenAPI V1.0
APIの概要
DJI FlightHub 2 OpenAPIは、RESTful仕様に基づいたオープンなプラットフォームであり、開発者がサードパーティ製クラウドプラットフォームおよびDJI FlightHub 2と連携できるように設計されています。
OpenAPIの主な特長は以下の通りです。
- RESTful設計:RESTful仕様を採用しており、APIの使用をより直感的でWeb標準に準拠したものにします。開発者は、GET、POST、PUT、DELETEなどの標準的なHTTPメソッドを使用してFlightHub 2と連携できます。
- 認証と認可:安全な認証および認可メカニズムを実装し、APIリソースを保護し、アクセス権限を効果的に管理します。
- FlightHub 2連携:DJI FlightHub 2の組織およびプロジェクト管理、デバイス管理、ライブストリーム管理、飛行ルート管理、タスク管理、モデル管理、および注釈管理などの機能を提供します。
- 開発者サポートとドキュメント:詳細なAPIドキュメント、コード例、および開発者サポートを提供し、迅速な統合とプラットフォーム機能の効果的な活用を可能にします。
開発者はOpenAPIを呼び出すことで、FlightHub 2のコア機能を迅速に統合でき、開発コストを大幅に削減し、様々なビジネスニーズや革新的な利用シーンに対応できます。
製品アーキテクチャ

クイックスタート
環境設定
FlightHub 2オンプレミス版を展開するには、DJI FlightHub 2オンプレミス版展開マニュアルを参照してください。
認証と認可
Authentication and Authorizationチュートリアルを参照し、OpenAPIの認証と認可の原則を理解し、X-User-TokenとX-Project-Uuidの値を取得し、これらの2つの値をヘッダーフィールドに入力することで、OpenAPIのセキュリティを確保し、FlightHub 2へのアクセス制御を実現します。
サンプルコード
1. FlightHub 2システムステータスの照会
FlightHub 2公開バージョンはAPIを利用してシステム状態を照会します: Query FlightHub 2 System Status
FlightHub 2オンプレミス版が正常にデプロイされた後、Query FlightHub 2 System Status メソッドを呼び出して、システムステータスを確認します。
```http
GET /openapi/v0.1/system_status HTTP/1.1
Host: 127.0.0.1:30812
X-Language: en
X-User-Token: xxxxxxxx
戻り値が0の場合、FlightHub 2 システムが正常に動作していることを示します。
```http
{
"code": 0,
"message": ""
}
2. 組織下のプロジェクトリストを取得
FlightHub 2で組織を作成し、プロジェクトを設定し、デバイスを紐付けします。DJI FlightHub 2ユーザーマニュアルの組織管理セクションを参照し、FlightHub 2での組織およびプロジェクトの作成について確認した後、Get the List of Projects under the Organization メソッドを呼び出して、作成されたプロジェクトのリストを取得します。
```http
GET /openapi/v0.1/project HTTP/1.1
Host: 127.0.0.1:30812
X-Language: en
X-User-Token: xxxxxxxx
作成されたプロジェクトのリストが返されます。
```http
{
"code": 0,
"message": "OK",
"data": {
"list": [
{
"name": "c2c_test",
"introduction": "a",
"uuid": "93df839d-ae74-4f04-842e-2f1f81c89a66",
"org_uuid": "105ddd05-34ce-46b6-a872-cb32b8c98f64",
"created_at": 1702498686,
"updated_at": 1702498686,
"project_work_center_point": {
"latitude": 22.906899500237845,
"longitude": 113.69995967214662
}
}
]
}
}
3. ライブストリームを開始
DJI FlightHub 2ユーザーマニュアルの端末管理セクションでFlightHub 2でのデバイスの紐付けについて参照し、次にLivestream Managementチュートリアルを参照して、Enable Livestreamメソッドを呼び出し、配信を開始します。
```http
POST /openapi/v0.1/live-stream/start HTTP/1.1
Host: 127.0.0.1:30812
X-Project-Uuid: xxxxxxxxxx
X-Language: en
Content-Type: application/json
X-User-Token: xxxxxxxx
Content-Length: 120
{
"sn": "7CTDM3Dxxxxxx",
"camera_index": "165-0-7",
"video_expire": 7200,
"video_quality": "adaptive"
}
ライブストリームリンクはdata.urlで提供され、そこにアクセスしてライブストリームを視聴できます。
```c
{
"code": 0,
"message": "",
"data": {
"expire_ts": 1764751629,
"url": "http://127.0.0.1:30806/rtc/v1/whep/?app=live&stream=7CTDM3Dxxxxxx_165-0-7&token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwcm9kdWN0X2lkIjoiNzEzNTE5ZmIxYjRlNDRiYTlkMjdkMDJhOGRlZDk5NGQiLCJjaGFubmVsX25hbWUiOiI3Q1RETTNEMDBCWk5WWl8xNjUtMC03IiwidWlkIjoxDAxMTQsImFjdGlvbiI6InBsYiLCJleHAiOjE3NjQ3NTE2MzAsIm5iZiI6MTczMzIxNTYzMCwiaWF0IjoxNzMzMjE1NjMwfQ._AysitutpprlgYGFy4lDL_gSv4Y3hl_te-yxoFVHZb4",
"url_type": "srs"
}
}
インターフェースチュートリアル
- インターフェースチュートリアルには、OpenAPI機能リスト、チュートリアル、メソッドリスト、および説明が含まれています。詳細については、OpenAPI Interface Tutorialを参照してください。