Skip to main content
GET
List the cancellation history for an invoice
Returns the full cancellation history for an invoice — every cancellation attempt ever requested, not only the latest one. A rejected attempt doesn’t block retries, so an invoice can have multiple rows here (e.g. rechazada followed by a new pendiente or aceptada). This is a flat route, same pattern as Cancel Invoice — no /organizations/{organizationId}/ prefix.

Authentication

Accepts either:
  • A Supabase Bearer session (Authorization: Bearer <token>) — the authenticated user must be a member of the invoice’s organization.
  • An API key (X-API-Key: sk_...) with the read:invoices scope — the key’s own organization must match the invoice’s organization, or the request is rejected with 403 Forbidden.

Path Parameters

Example Request

cURL
TypeScript

Example Response

Ordered by createdAt, newest first — matching List Invoices’ ordering convention.
The response is a plain array — not the { data, total, page, ... } envelope used by List Invoices, since this history is never paginated. See Cancel Invoice for the field reference on each entry (InvoiceCancellationDto).

Common Errors

401 Unauthorized

Missing or invalid Bearer token / API key.

403 Forbidden

The authenticated user is not a member of the invoice’s organization, or the API key does not have the read:invoices scope / belongs to a different organization than the one that owns the invoice.

404 Not Found

uuid does not match any invoice.

Authorizations

X-API-Key
string
header
required

API Key for authentication (format: sk_...)

Path Parameters

uuid
string
required

Response

id
string
required
invoiceId
string
required
motivo
enum<string>
required
Available options:
01,
02,
03,
04
requiresApproval
boolean
required
cancellationStatus
enum<string>
required
Available options:
pendiente,
aceptada,
rechazada
createdAt
string<date-time>
required
folioSustitucion
object
respondBy
object
requestedBy
object
resolvedBy
object
resolvedAt
object