Response format
All API responses share a consistent envelope: data, meta (pagination), and _metadata (usage).
Envelope
envelope
{
"data": [ /* … */ ],
"meta": { "total": 1, "limit": 20, "offset": 0, "hasMore": false },
"_metadata": {
"apiPlan": "Pro",
"apiRequestsRemaining": 49213,
"apiDailyRequestsRemaining": 4321,
"apiRateLimit": 100
}
}Fields
| Property | Type | Description |
|---|---|---|
| data | array | null | The requested data (an array of card objects). |
| meta | object | null | Pagination metadata, if applicable. |
| meta.total | integer | Total number of cards available for this query. |
| meta.limit | integer | Page size for this query. |
| meta.offset | integer | Current offset for these results. |
| meta.hasMore | boolean | Whether more pages are available for this query. |
| _metadata | object | API usage metadata included with every response. |
| _metadata.apiPlan | string | Your current API subscription plan name. |
| _metadata.apiRequestLimit | integer | Total monthly requests allowed for your plan. |
| _metadata.apiRequestsUsed | integer | Number of API requests used so far this period. |
| _metadata.apiRequestsRemaining | integer | Requests remaining before reaching the monthly limit. |
| _metadata.apiDailyLimit | integer | Maximum requests allowed per day. |
| _metadata.apiDailyRequestsUsed | integer | Number of requests used today. |
| _metadata.apiDailyRequestsRemaining | integer | Requests remaining for today. |
| _metadata.apiRateLimit | integer | Maximum requests allowed per minute. |
| error | string | null | Detailed error message if an error occurred, otherwise null. |
| code | string | null | Machine-readable error code, if applicable. |