Skip to content

/v2/custom-actions/{custom_action_id}/
Stable

Request

⚠️ Linux only. Custom actions apply exclusively to Linux-managed devices. This endpoint is not applicable to Android, iOS, or Windows devices.

Retrieves the full details of a specific custom action by its unique ID. Returns a CustomActionRead object containing the action's name, type, state, blueprint and device placement, display properties, options (with script references), and audit fields including created_by, updated_by, created_at, and updated_at. Use this endpoint to inspect a custom action's current configuration and retrieve its associated script_id values before modifying or deploying it.

About Retrieve Custom Action

Custom actions are operator-defined scripts surfaced on Linux devices through Blueprint settings or device Quick Actions. The CustomActionRead response includes each option's scripts.linux.script_id — a UUID referencing the script content stored externally. To retrieve the actual script content, use GET /v2/scripts/{script_id}/ with that UUID.

Key Fields

custom_action_id — UUID of the custom action to retrieve (path parameter, required)

id — UUID of the custom action in the response body

state — Current lifecycle state: draft, active, or inactive

options[*].scripts.linux.script_id — UUID reference to the script content; use with GET /v2/scripts/{script_id}/ to fetch the actual script

position_in_blueprints / position_in_device_settings — Where this action is surfaced in Blueprint and device UI

created_at / updated_at — Audit timestamps

Common Use Cases

Inspect a custom action's current state and placement before deciding to activate or deactivate it

Retrieve script_id values from the options to fetch and review the associated scripts

Confirm that a custom action's properties labels and messages are correctly set before deploying it in a Blueprint

Best Practices

Use this endpoint before calling PUT /v2/custom-actions/{custom_action_id}/ to understand the current state of the action

Cross-reference script_id values with GET /v2/scripts/{script_id}/ to verify script content is correct before activating the action

Check the state field to confirm whether the action is eligible for deployment (active) before including it in a Blueprint

Workflow

Obtain the custom_action_id from GET /v2/custom-actions/ or from the Console

Call GET /v2/custom-actions/{custom_action_id}/ to retrieve the full action object

Review state, options, and placement fields

If needed, use the script_id from each option's scripts.linux object to inspect the script content via GET /v2/scripts/{script_id}/

Path
custom_action_idstring, (uuid)required
cURL
curl -i -X GET \
  'https://api.esper.io/_mock/openapi/v2/custom-actions/{custom_action_id}/'

Responses

Success

Bodyapplication/json
contentobject(blueprints_CustomActionRead)
messagestring
codeinteger
Value:200
Response
{ "content": { "name": "string", "type": "button", "state": "draft", "position_in_blueprints": "none", "position_in_device_settings": "none", "properties": {}, "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "options": [ … ], "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "created_by": 0, "updated_by": 0 }, "message": "string", "code": 200 }