List Agreements
GET/v1/agreements
List stored agreements visible to the authenticated principal. Returns the brief view (no attached orders).
Required permission: agreements_read.
Request
Query Parameters
Possible values: >= 1 and <= 100
Filter by internal UUID.
Filter by the merchant-assigned agreement identifier.
Possible values: [unscheduled, recurring, registered, installment]
Possible values: [fixed, variable]
Filter to active (true) or disabled (false) agreements.
Responses
- 200
- 401
- 403
Paginated list of agreements (brief view).
- application/json
- Schema
- Example (from schema)
Schema
Array [
]
agreements
object[]
required
Merchant-chosen agreement identifier (the id supplied in
new_agreement.id at creation). Use this value as
agreement_id on follow-up transactions.
Possible values: [unscheduled, recurring, registered, installment]
A 36-character UUIDv7 identifier. When used as an idempotency key on write endpoints, the client is responsible for generating a fresh UUID for each logical operation and retaining it across retries.
Possible values: [fixed, variable]
false once the agreement has been disabled via
PUT /v1/agreements/:id/disable. Disabled agreements reject
new transactions.
ISO 8601 UTC timestamp with time zone designator.
ISO 8601 UTC timestamp with time zone designator.
meta
object
required
Cursor-style pagination metadata. next_page and prev_page are
null at the boundaries. Total counts are intentionally omitted for
performance on large result sets (countless pagination).
Possible values: >= 1
{
"agreements": [
{
"id": "SUB-USER-42",
"type": "unscheduled",
"first_order_id": "0191f5a7-3d99-7f81-b7ec-962a5f5fdd7c",
"max_use": 0,
"variability": "fixed",
"expiry": "2024-07-29",
"active": true,
"created_at": "2025-01-15T14:30:00Z",
"updated_at": "2025-01-15T14:30:00Z"
}
],
"meta": {
"current_page": 1,
"next_page": 2,
"prev_page": null
}
}
Authentication failed.
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "Missing authentication information"
}
The authenticated principal lacks the required permission.
- application/json
- Schema
- Example (from schema)
Schema
{
"message": "Unauthorized"
}