Skip to main content
GET
List documents
search and search_term are the same filter; send only one. Bill filters need type=bill or no type. source_id and the reconciliation status filter select statement documents. Filtered scans can return an empty page with has_more=true. Continue until next_cursor is null.

Expanded details

Set expand=bill,receipt,vendor,statement to add the related records. Each expanded item contains document and the requested records.

Statement lines

Send one document ID with expand=statement.lines. Read the lines from statement.lines.data, and pass its next_cursor as statement_cursor for the next page. Keep import_status, is_reconciled and the document filter unchanged between pages.

Download URLs

Add download to expand to get viewing and download URLs. This needs an API key with an owner, and it records a document view, as opening the document in the dashboard does. The URLs expire after three days.

Authorizations

X-API-Key
string
header
required

Your organization API key. See Authentication.

Query Parameters

document_ids
string[]

Comma-separated doc_<uuid> ids to filter by. Up to 100 IDs.

created_from
string

Earliest created date (YYYY-MM-DD).

created_to
string

Latest created date (YYYY-MM-DD).

search_term
string

Full-text match across extracted text, summary, filename, vendor name, and bill/receipt numbers.

limit
integer
default:25

Maximum number of records to return.

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

The next_cursor value from the previous page. Keep the other filters unchanged.

Case-insensitive search in labels and descriptions.

type
enum<string>

Filter by document type.

Available options:
bill,
receipt,
statement,
other
source_id
string

Source ID (src_…).

Example:

"src_507f1f77bcf86cd799439011"

vendor_id
string

Vendor ID (vnd_…).

Example:

"vnd_507f1f77bcf86cd799439011"

expand
string

Comma-separated expansions: bill, receipt, vendor, statement, statement.lines or download. statement.lines and download require exactly one document_ids value. download requires an API key with an owner.

statement_limit
integer
default:100

Rows per statement page. Requires expand=statement.lines and exactly one document_ids value. Does not change the document page size.

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

The statement.lines.next_cursor value from the previous page.

vendor_name
string

Vendor name (substring match).

bill_number
string

Bill number.

bill_date_from
string

Earliest bill date (YYYY-MM-DD).

bill_date_to
string

Latest bill date (YYYY-MM-DD).

billing_period_start_from
string

Earliest billing-period start (YYYY-MM-DD).

billing_period_end_to
string

Latest billing-period end (YYYY-MM-DD).

currency
string

Currency code (such as USD).

total_amount_min
number

Minimum total amount, inclusive.

total_amount_max
number

Maximum total amount, inclusive.

tax_amount_min
number

Minimum tax amount, inclusive.

tax_amount_max
number

Maximum tax amount, inclusive.

tax_rate_min
number

Minimum tax rate, inclusive.

tax_rate_max
number

Maximum tax rate, inclusive.

import_status
enum<string>

Nested statement-line filter. Requires expand=statement.lines.

Available options:
pending,
imported,
ignored,
duplicate,
invalid
vendor_ids
string[]

Bill filter. Comma-separated vnd_ ids; a bill matches any of them. Combines with vendor_id. Requires type=bill or an omitted type.

Maximum array length: 100
reconciliation_status
enum<string>

Statement filter on statement.reconciliation_status. Requires type=statement.

Available options:
reconciled,
not_reconciled
is_reconciled
boolean

Nested statement-line filter on is_reconciled. Requires expand=statement.lines.

document_types
enum<string>[]

Document types to filter by. Repeat the parameter or send a comma-separated list. Send type or document_types, not conflicting values.

Available options:
bill,
receipt,
statement,
other

Response

The request succeeded. With expand, each row is an envelope: document holds the document, next to the requested bill, receipt, vendor or statement.

data
object[]
required

The documents. Each item is a document, or an envelope when you send expand.

A document. id is doc_<uuid>.

has_more
boolean
required

Whether another page is available.

next_cursor
string | null
required

Cursor for the next page, or null on the last page.