---
title: "Approve a proposed plan (separately authenticated; plan_hash + single-use nonce)"
method: POST
path: "/v1/decision-plans/{plan_id}/approve"
tags: ["Decision Workflow"]
---

# Approve a proposed plan (separately authenticated; plan_hash + single-use nonce)

`POST /v1/decision-plans/{plan_id}/approve`

## Request

- Base URL: `https://api.algenta.ai`
- URL: `https://api.algenta.ai/v1/decision-plans/{plan_id}/approve`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Approval is an explicit, credentialed operation bound to the exact plan hash and a single-use nonce. It is intentionally not exposed as an MCP/LLM tool. Approving does NOT execute the plan (approve != execute).

## Path parameters

- `plan_id` string, uuid, required

## Request body

- AppsApiServerSchemasDecisionWorkflowApproveRequest
  - `plan_hash` string, required
  - `nonce` string, required
  - `idempotency_key` string, nullable

## Response `200`

Successful Response

- ApprovalResponse
  - `approval_id` string, uuid, required
  - `case_id` string, uuid, required
  - `plan_id` string, uuid, nullable, required
  - `status` string, required
  - `approver_principal` string, nullable, required
  - `decided_at` string, date-time, nullable, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/codna/apis/algenta-api.md) · [All operations](https://skmtc.dev/codna/apis/algenta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/codna/apis/algenta-api/revisions/35d30f84a5df?raw)
