Base URL
- Production:
https://api.boltroute.ai - Staging:
https://staging-api.example.com - Local:
http://localhost:8080
Conventions
- Content-Type:
application/json - Date/Time: ISO 8601 (UTC)
- Pagination:
limit,offset - Error format: JSON error payload with
code,message, and optionaldetails
Endpoints
GET /api/v1/credits/transactions
Summary: List credit transactions for the authenticated user. Idempotent: Yes Tags: creditsRequest
HeadersContent-Type: application/json
| Name | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| limit | integer | No | 50 | Number of transactions to return (1-100) | 50 |
| offset | integer | No | 0 | Number of transactions to skip | 0 |
Responses
200 OK - List of credit transactions| Field | Type | Description |
|---|---|---|
| transactions | array | Credit transactions |
| transactions[].id | string | Transaction UUID |
| transactions[].user_id | string | User UUID |
| transactions[].type | string | grant or deduction |
| transactions[].amount | integer | Credit delta |
| transactions[].balance_after | integer | Balance after the transaction |
| transactions[].reason | string | Optional reason |
| transactions[].metadata | object | Optional metadata |
| transactions[].metadata.source | string | Credit source attribution (api_key, frontend, or missing on legacy rows) |
| transactions[].metadata.api_key_id | string | API key UUID when the request was attributed to an API key |
| transactions[].metadata.api_key_purpose | string | API key purpose when available (for example zapier) |
| transactions[].created_at | string | ISO 8601 timestamp |
| total | integer | Total number of transactions |
| limit | integer | Page size |
| offset | integer | Offset into the result set |