---
title: "Execute command"
method: POST
path: "/api/v2/devices/{id}/actuator-executions"
tags: ["Commands"]
---

# Execute command

`POST /api/v2/devices/{id}/actuator-executions`

## Request

- Base URL: `https://api.chirpwireless.io`
- URL: `https://api.chirpwireless.io/api/v2/devices/{id}/actuator-executions`
- Auth: API key in header `X-API-Key` and API key in header `X-Organization-Id`

Trigger execution of a stored command on a device. Returns 202 when accepted for asynchronous delivery, or 200 when an identical execution is already in flight (duplicate).

**Required scope:** `commands:write`

## Path parameters

- `id` string, required

## Request body

- object
  - `organizationId` string, required: Organization ID
  - `commandId` string, required: ID of the stored command to execute.
  - `params` object: Parameter values validated against the command's paramsSchema.

## Response `200`

Execution accepted for asynchronous delivery (HTTP 202), or an identical execution is already in flight (HTTP 200 with duplicate=true).

- object
  - `accepted` boolean
  - `duplicate` boolean

## Other responses

- `401`: Missing or invalid API key
- `403`: Insufficient permissions (missing required scope)

---

[API](https://skmtc.dev/chirpwireless/apis/chirp-public-api.md) · [All operations](https://skmtc.dev/chirpwireless/apis/chirp-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/chirpwireless/apis/chirp-public-api/revisions/0414f3e239ff?raw)
