Pagination
All list endpoints support cursor-based pagination using two parameters:
Paginated responses include a
pagination object with a next_cursor field:
has_more is true, pass the next_cursor value as the after parameter to fetch the next page. When there are no more pages, next_cursor is null.
Example flow:
GET /v1/transactions?limit=10— returns records 1–10,"next_cursor": "txn_abc123"GET /v1/transactions?limit=10&after=txn_abc123— returns records 11–20,"next_cursor": "txn_xyz789"GET /v1/transactions?limit=10&after=txn_xyz789— returns records 21–25,"has_more": false,"next_cursor": null
"contracts", "transactions", "nominations", "customers").
Timestamps
All timestamps are ISO 8601 in UTC:Delivery Periods
Energy delivery uses the standard PTU (Programme Time Unit) convention with 15-minute intervals:slot_number_from and slot_number_to parameters.
Error Responses
All errors follow RFC 9457 — Problem Details for HTTP APIs and are returned withContent-Type: application/problem+json:
errors array:
unknown_field, read_only_field, required, invalid_type, invalid_enum_value, invalid_format, invalid_literal, value_too_small, value_too_large, validation_failed.
Standard HTTP status codes are used:
Rate Limiting
API requests are rate-limited to 300 requests per 60-second window. Every response includes the following headers:
When the limit is exceeded, the API returns
429 Too Many Requests.