---
title: "Dispatch PSDK Command"
method: POST
path: "/openapi/v2.0/manage/api/v1/projects/{uuid}/psdk/commands"
tags: ["Real-time Control/Payload Control/PSDK Device"]
---

# Dispatch PSDK Command

`POST /openapi/v2.0/manage/api/v1/projects/{uuid}/psdk/commands`

## Request

- Base URL: `https://41b04hdzmc.apifox.cn` (the document declares no server; this is the origin it was published from)
- URL: `https://41b04hdzmc.apifox.cn/openapi/v2.0/manage/api/v1/projects/{uuid}/psdk/commands`
- Auth: none required

Passthrough-dispatch commands to specified PSDK (Payload SDK) device in project; used to control PSDK business (e.g. speaker playback, third-party payload operations, etc.). `device_cmd_method` and `device_cmd_data` determined by specific PSDK device's thing model; server does not perform enum validation; serves as passthrough channel as a whole. `ext` field used for business tracking (speaker scenario playback parameters are written to server-side command log). Device must belong to current project.

## Path parameters

- `uuid` string, required

## Headers

- `x-user-token` string, required
- `X-Request-Id` string, uuid
- `X-Project-Uuid` string, required

## Request body

- object
  - `device_sn` string, required: Target PSDK Device SN (aircraft or dock; must belong to current project)
  - `device_cmd_method` string, required: PSDK Command Method Name. Values determined by specific PSDK device's thing model; server does not perform enum validation; passed through as a whole. Common speaker scenario commands reference: speaker_audio_play_start / speaker_audio_play_stop / speaker_volume_set / speaker_play_mode_set / speaker_tts_play
  - `device_cmd_data` object: Command Parameters, structure determined by device_cmd_method (passthrough). Omit or pass {} when no additional parameters
  - `need_user_verify` boolean: Whether to Require User Identity Re-Verification (sensitive operation scenarios), default false
  - `ext` object: Business Tracking Extension Field. Example fields include device_name, speaker (playback parameter tracking in speaker scenarios)
    - `device_name` string: Device Name (for Log Display)
    - `speaker` object: Speaker Scenario Tracking Field; can be omitted for non-speaker business
      - `play_scene` string: Speaker Usage Scenario Tag
      - `play_volume` integer: Play Volume
      - `play_mode` integer: Play Mode
      - `file_type` string: Resource Type (e.g. audio / tts)
      - `md5_sum` string: Resource Identifier MD5
      - `tts_length` integer: TTS Text Length
      - `audio_duration` integer: Audio Duration (s)

## Response `200`

Operation Successful

- object
  - `code` integer, required: Business Status Code: 0=Success; non-zero=Error Code (see message for meaning)
  - `message` string: Error Description Message (Omitted on Success)
  - `data` unknown

## Other responses

- `400`: Business Parameter Error — body contains code (non-zero)/message
- `500`: Internal Service Error

---

[API](https://skmtc.dev/dji/apis/flighthub-2-openapi-v2-0-on-premises.md) - [All operations](https://skmtc.dev/dji/apis/flighthub-2-openapi-v2-0-on-premises/llms.txt) - [OpenAPI document](https://skmtc.dev/dji/apis/flighthub-2-openapi-v2-0-on-premises/revisions/e4544b7809ea?raw)
