---
title: "Flag an invoice for review"
method: POST
path: "/invoices/{id}/flag"
tags: ["invoices"]
---

# Flag an invoice for review

`POST /invoices/{id}/flag`

Flags an invoice for review, moving it to incomplete status with a flagging reason.

### Features
- Flags invoice and moves to incomplete status
- Supports optional flagging reason
- Triggers notifications to relevant users

### Use Cases
- Flag invoices with issues for review
- Request corrections or additional information
- Mark invoices needing manual intervention

## Path parameters

- `id` string, required

## Headers

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

## Request body

- object
  - `flagging_reason` string — Reason for flagging the invoice

## Response `200`

Invoice flagged successfully

- InvoicesPostInvoicesIdFlagResponse200
  - `version` string — API version
  - `success` boolean — Whether the operation was successful
  - `message` string — Success message
  - `invoice` InvoicesIdFlagPostResponsesContentApplicationJsonSchemaInvoice
    - `id` string — Invoice ID
    - `invoice_number` string — Invoice number
    - `status` string — Invoice status after flagging

## Other responses

- `401` — Unauthorized - Authentication required or invalid credentials
- `403` — Forbidden - Access denied or insufficient permissions
- `404` — Not found - Resource does not exist

## Changes

- **2026-08-17** `c231509a03cf` — 3 breaking, 6 info
  - the `message` response's property type/format changed from `string`/`` to ``/`` for status `401`
  - the `message` response's property type/format changed from `string`/`` to ``/`` for status `403`
  - the `message` response's property type/format changed from `string`/`` to ``/`` for status `404`
  - the response property `code` became required for the status `401`
  - …5 more
- **2026-08-13** `1f089f3e34d9` — 9 breaking
  - the response property `code` became optional for the status `401`
  - the response property `code` became optional for the status `403`
  - the response property `code` became optional for the status `404`
  - the response property `message` became optional for the status `401`
  - …5 more

[Change history](https://skmtc.dev/ottimate/apis/api-reference/changes/invoices/:id/flag/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)
