Skip to content

List invoices

GET
/invoices
curl --request GET \
--url https://app.buildworkpro.com/api/v1/invoices \
--header 'Authorization: Bearer <token>'

Returns a page of invoices for the authenticated tenant. This is the one v1 list endpoint that pages by page/pageSize rather than a cursor — the tenant UI’s invoice table jumps to arbitrary pages, and that shape is mirrored here rather than reshaped. Page details are returned in meta.pagination. status accepts a comma-separated list.

page
integer
>= 1
pageSize
integer
>= 1 <= 200
status
string
projectId
integer | null
contactId
integer | null
dueBefore
string format: date-time
dueAfter
string format: date-time
q
string

Invoice page

Media type application/json
object
data
required
Array<object>
object
id
required
integer
tenantId
required
integer
invoiceNumber
required
string
projectId
required
integer | null
contactId
required
integer | null
status
required
string
Allowed values: draft sent partial paid voided
issueDate
required
string | null format: date-time
dueDate
required
string | null format: date-time
subtotal
required
string
taxAmount
required
string
total
required
string
amountPaid
required
string
balanceDue
required
string
notesToCustomer
required
string | null
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
meta
required
object
request_id

Server-generated request identifier

string
pagination
required
object
cursor
required

Opaque cursor for the next page; null when no more results

string | null
has_more
required

Whether more pages are available after this one

boolean
count
required

Items in this page

integer
pagination
required
object
page
required
integer
pageSize
required
integer
total
required
integer
Example
{
"data": [
{
"status": "draft"
}
]
}

Error

Media type application/problem+json
object
type
required

URL identifying the problem type

string format: uri
title
required

Short human-readable summary

string
status
required

HTTP status code

integer
detail

Human-readable explanation

string
request_id

Server-generated request identifier

string
errors

Validation error array (422 only)

Array<object>
object
field
required

Field path that failed validation

string
code
required

Validation error code

string
message
required

Human-readable validation message

string
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"request_id": "example",
"errors": [
{
"field": "example",
"code": "example",
"message": "example"
}
]
}

Error

Media type application/problem+json
object
type
required

URL identifying the problem type

string format: uri
title
required

Short human-readable summary

string
status
required

HTTP status code

integer
detail

Human-readable explanation

string
request_id

Server-generated request identifier

string
errors

Validation error array (422 only)

Array<object>
object
field
required

Field path that failed validation

string
code
required

Validation error code

string
message
required

Human-readable validation message

string
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"request_id": "example",
"errors": [
{
"field": "example",
"code": "example",
"message": "example"
}
]
}