Response action API
Request bounded response actions, approve exact revisions, cancel pending work, and inspect acknowledgement.
Actions require Responder authority and target capabilities. Approval requires a separately authorized approver. Read response execution and quarantine recovery before automation.
Use the shared API contract for authentication, pagination, request headers, idempotency, and error responses.
Request an action
/organizations/{organization_id}/actionsCreates a response request for one action type. Targets and parameters are immutable after acceptance. Unsupported controls return 422 unsupported_capability before admission.
incident_idstringrequiredVisible incident authorizing the investigation context.
typestringrequiredRequested executor effect.
endpoint_idsstring[]requiredAuthorized endpoint targets. Quarantine and restoration require exactly one endpoint.
artifactobjectoptionalRequired only for quarantine: observed absolute path and expected 64-character SHA-256 hex digest. Forbidden for all other action types.
quarantine_idstringoptionalRequired for restoration and forbidden for other types; identifies the protected item.
destinationstringoptionalAbsolute restoration path. Allowed only for restoration; omission uses the recorded original path. An existing different file cannot be overwritten.
expires_attimestampoptionalFuture execution-start deadline. Omission uses creation plus 900 seconds.
15 minutes after creationrule60–86400 seconds after creationreasonstringrequiredAudited justification. Empty values are invalid.
The response is similar to the following:
{
"data": {
"id": "act_001",
"type": "isolate",
"state": "pending_approval",
"endpoint_ids": ["end_laptop01"],
"expires_at": "2026-03-04T10:15:00Z"
},
"operation": {
"id": "op_001",
"state": "queued"
},
"request_id": "req_action01"
}Read an action
/organizations/{organization_id}/actions/{action_id}Returns state, exact targets and parameters, approval revision, deadline, operation, and each target's acknowledgement or error. Succeeded requires acknowledged execution; no heartbeat is not success.
Returns data and request_id.
Decide an approval
/organizations/{organization_id}/actions/{action_id}/approvalRecords an approval decision for the exact action revision. Requires If-Match. Self-approval is rejected when separation is required. Changed or expired requests return 409.
decisionstringrequiredApprove or reject the reviewed request.
reasonstringrequiredAudited justification. Empty values are invalid.
Returns the approval record and action state. Approved actions queue for execution; approval is not execution acknowledgement.
Cancel an action
/organizations/{organization_id}/actions/{action_id}/cancelCancels pending admission or cancelable work. Completed isolation or quarantine remains applied. A non-cancelable phase returns 409 cancellation_unavailable.
reasonstringrequiredAudited justification. Empty values are invalid.
Returns action data and cancellation operation. An already completed effect requires a new authorized inverse action.
List actions
/organizations/{organization_id}/actionsReturns action summaries. Use the single-action read for target-level outcome and partial failure details. Standard limit and cursor apply. Unknown filters return 422.
incident_idstringoptionalFilter visible investigation.
endpoint_idstringoptionalFilter execution target.
statestringoptionalAction state.
Returns a data array and pagination.next_cursor. Entries include stable IDs and the resource fields described for this collection.