---
title: "Actions API"
description: "Search protected actions and run the enforcement pipeline directly."
label: "Actions"
generated: "the API catalogue in apps/control-plane/src/routes/developer.ts"
---


An action record is the complete lineage of one decision: the request, the resolved authority, every policy rule that was consulted, the risk signals that fired, the approval if one was needed, and the outcome. This is what makes a decision explainable after the fact.

## Endpoints

| | Endpoint | Permission | Notes |
| --- | --- | --- | --- |
| `GET` | `/v1/actions` | `action:read` | — |
| `GET` | `/v1/actions/{actionId}` | `action:read` | — |
| `POST` | `/v1/actions/evaluate` | `action:evaluate` | accepts `Idempotency-Key` |

## What each endpoint does

### `GET /v1/actions`

Search protected actions.

Requires `action:read`.

### `GET /v1/actions/{actionId}`

Full action lineage and explanation.

Requires `action:read`.

### `POST /v1/actions/evaluate`

Run the enforcement pipeline on behalf of an agent.

Requires `action:evaluate`.

Request body:

```json
{
  "agent_id": "string",
  "tool": "string",
  "parameters": "object",
  "amount": "number?",
  "dry_run": "boolean?"
}
```
