Skip to main content
GET
cURL

Authorizations

Authorization
string
header
required

An Invoice-AI API key sent as Authorization: Bearer inv_live_….

Create keys in Settings → API keys; the secret is shown once. Each key carries scopes, and every operation lists the scope it needs (x-required-scope):

  • business:read — Read your business profile, tax ID and bank details
  • clients:read — List and read your clients
  • clients:write — Create, update and archive clients
  • products:read — List and read products and prices
  • products:write — Create, update and archive products and prices
  • invoices:read — List and read invoices, including PDFs
  • invoices:write — Create, edit and delete drafts
  • invoices:finalize — Finalize invoices and void them
  • invoices:send — Email invoices to your clients
  • payments:write — Mark invoices as paid
  • webhooks:manage — Manage webhook endpoints

Keys cannot be created or revoked through the API, so a leaked key cannot mint more keys.

Query Parameters

cursor
string

The next_cursor from the previous page. Opaque — do not build it yourself.

limit
integer
default:25

Page size, 1–100. Defaults to 25.

Required range: 1 <= x <= 100
product
string

Only prices of this product, prod_… or UUID.

Example:

"prod_Hy7Rq2Lm9Xc4Vb8Nt3Kd6Pw1"

active
boolean

true for active prices only, false for archived only. Omit for both.

currency
string

ISO 4217 code, case-insensitive.

Example:

"USD"

type
enum<string>

Only prices of this type. Other values are ignored.

Available options:
one_time,
recurring

Response

A page of prices.

data
object[]
required

Prices, newest first.

next_cursor
string | null
required

Pass as cursor to fetch the next page. null on the last page.

Example:

"MjAyNi0wOS0yMlQwOTozMDowMC4wMDBafDdmM2M"