---
title: "Revoke an invoice approval step"
method: POST
path: "/invoices/{id}/revoke-approval"
tags: ["invoices"]
---

# Revoke an invoice approval step

`POST /invoices/{id}/revoke-approval`

Undoes a specific user's approval step on an invoice and recalculates dependent policy tiers. Requires the `can_undo_invoice_approvals` permission.

`approval_id` is carried in the request body rather than the URL path (unlike the path shown in the original spec) — the 4-segment path documented there exceeds the max depth this API Gateway resource tree supports (3 segments; see `ottiapi/modules/api_endpoint_tree/main.tf`'s `depth_1/2/3_paths` locals).

## Path parameters

- `id` string, required

## Headers

- `Authorization` string, required
- `X-Api-Key` string, required
- `X-API-Version` string
- `Idempotency-Key` string

## Request body

- object
  - `approval_id` string, required — Object approval record ID, e.g. `pbjappr_550e8400...`

## Response `200`

Successful response with updated invoice approval state

- InvoicesPostInvoicesIdRevokeApprovalResponse200 — Empty response body

## Other responses

- `400` — Bad request - Invalid parameters or request format
- `401` — Unauthorized - Authentication required or invalid credentials
- `403` — Forbidden - Access denied or insufficient permissions

## Changes

- **2026-08-22** `75aab60eedc9` — 2 breaking, 1 warning
  - for the `header` request parameter `Idempotency-Key`, the minLength was increased from `0` to `1`
  - added the pattern `^[A-Za-z0-9._\-+=/]{1,128}$` to the `header` request parameter `Idempotency-Key`
  - for the `header` request parameter `Idempotency-Key`, the maxLength was set to `128`
- **2026-08-19** `c0b5cf6c7a72` — 1 info
  - endpoint added
- **2026-08-17** `c231509a03cf` — 1 breaking
  - api path removed without deprecation
- **2026-08-13** `1f089f3e34d9` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/ottimate/apis/api-reference/changes/invoices/:id/revoke-approval/post.md)

---

[API](https://skmtc.dev/ottimate/apis/api-reference.md) · [All operations](https://skmtc.dev/ottimate/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ottimate/api-reference/revisions/ba91ff4c6969/schema)
