POST
/
api
/
v1
/
open
/
downlink
/
commands
cURL
BODY='{"vendor":"dji","device_id":"drone-001","command_type":"camera_photo_take","payload":{"payload_index":"52-0-0"},"idempotency_key":"req-camera-photo-001","timeout_seconds":30}'
TIMESTAMP="$(date +%s)"
NONCE="$(uuidgen)"
SIGNATURE="YOUR_CALCULATED_SIGNATURE"

curl -X POST "https://api.example.com/api/v1/open/downlink/commands" \
  -H "Content-Type: application/json" \
  -H "X-Api-Id: YOUR_API_ID" \
  -H "X-Api-Timestamp: $TIMESTAMP" \
  -H "X-Api-Nonce: $NONCE" \
  -H "X-Api-Signature: $SIGNATURE" \
  -d "$BODY"
{
  "command_id": "100e2826-e45b-50cb-b41f-e8df6d20bea2",
  "status": "ACCEPTED",
  "accepted_at": "2026-04-22T12:00:00Z",
  "request_id": "req-001"
}

授权

X-Api-Signature
string
header
必填

HMAC signature; X-Api-Id, X-Api-Timestamp, and X-Api-Nonce are also required.

请求头

X-Api-Id
string
必填

API credential ID.

X-Api-Timestamp
string
必填

Unix timestamp in seconds.

X-Api-Nonce
string
必填

Replay-protection nonce.

X-Api-Signature
string
必填

HMAC request signature.

X-Request-Id
string

Optional correlation ID.

请求体

application/json
vendor
enum<string>
必填

厂商标识。必须是平台 catalog 中已启用的厂商。

可用选项:
dji,
px4
示例:

"px4"

device_id
string
必填
示例:

"px4-real-1"

command_type
string
必填

厂商命令类型。必须存在于对应厂商的 command catalog。

示例:

"nav_takeoff"

payload
object
必填
示例:
{
"latitude": 473566000,
"longitude": 85432100,
"altitude": 30
}
idempotency_key
string
必填
示例:

"req-px4-takeoff-001"

timeout_seconds
integer
默认值:30
必填范围: 1 <= x <= 300
示例:

30

响应

Idempotent replay of an existing accepted command.

command_id
string<uuid>
必填
示例:

"100e2826-e45b-50cb-b41f-e8df6d20bea2"

status
enum<string>
必填
可用选项:
ACCEPTED
示例:

"ACCEPTED"

accepted_at
string<date-time>
必填
示例:

"2026-04-22T12:00:00Z"

request_id
string
必填
示例:

"req-001"