For AI agents: this page is also available as Markdown at https://docs.refabric.com/api-reference/platform/tasks/list-your-requests.md, and the index of every page is https://docs.refabric.com/llms.txt.
Platform API › Tasks
List your requests
The calls your API keys made in [start, end), newest first.
https://api.refabric.com/v1/account/requestsimport os
import requests
url = "https://api.refabric.com/v1/account/requests"
headers = {"Authorization": f"Key {os.environ['REFABRIC_API_KEY']}"}
response = requests.get(url, headers=headers)
print(response.json()){
"items": [],
"next_cursor": "eyJsIjoiY2hhbmdlbG9nIn0",
"has_more": false,
"as_of": "2026-10-01T00:00:00Z",
"start": "2026-09-01T00:00:00Z",
"end": "2026-10-01T00:00:00Z"
}Expansions
payloads— each call's request and response body (masked, cut at 32 KiB;*_truncatedsays so). Without it a row has no body fields.
Filters and sorting
statustakes a class (4xx) or one status (429);pathmatches the start of the path;api_key_idone of your keys.
Authentication. A key with account:read: the log shows your keys' calls and their bodies.
Key features
- Pages of 20 rows by default, 100 at most; newest first.
- Calls are kept 30 days; a window of 90 days at most.
Common use cases
- Find why a call failed: its status, error and body.
- Quote a call's
request_idto support.
See also
GET /v1/account/metricsGET /v1/errors
Authorization
Authorization: Key $REFABRIC_API_KEYScope: account:read
Parameters
Query parameters
- integeroptionalDefault:
20Items per page: default 20, at most 100.
1 to 100
- stringoptionalnullable
The previous page's
next_cursor, copied back as it came, for the next page. Never build one. - stringoptionalnullable
Inclusive, ISO-8601 (
2026-09-01T00:00:00Z; no zone means UTC). Default: 30 days beforeend. The window is at most 90 days.format: date-time
- stringoptionalnullable
Exclusive, ISO-8601 (no zone means UTC). Default: now.
format: date-time
- stringoptionalnullable
Only calls made with this key of yours (
key_…). - stringoptionalnullable
A status class (
4xx) or one status (429). - stringoptionalnullable
Only calls whose path starts with this (
/v1/tasks). - array<string>optionalnullable
payloads: add each call's request and response body (masked, cut at the kept size;*_truncatedsays so). Without it a row carries no body fields.Values
payloads— Each call's request and response body, masked and cut at the kept size.
Header parameters
- stringoptional
The contract version you wrote against (a date). Absent: the current version.
format: date
- stringoptional
Your own id for this request; we answer it back under X-Client-Request-ID.
max length 128
Response
200 — Done: the answer is in the body.
- array<object>required
This page's items, in the listing's order.
- stringrequired
The row's id.
Example:
rl_01 - stringrequired
When the call arrived (UTC).
Example:
2026-09-30T10:00:00Z - stringrequired
The HTTP method.
Example:
POST - stringrequired
The path called, without its query string.
Example:
/v1/tasks/image.generate - integerrequired
The HTTP status we answered.
Example:
422 - objectrequirednullable
The error the call was answered with, or
null.Example:
{"code":"invalid_option","field":"aspect_ratio"}- stringrequired
The public error code.
Example:
invalid_option - stringrequirednullable
The field the error names, or
null.Example:
aspect_ratio
- stringrequirednullable
The call's
X-Request-ID— quote it to support.Example:
req_01 - objectrequired
The key the call was made with.
Example:
{"id":"key_8f3a","last4":"Q2x9","name":"production"}- stringrequired
The key's id.
Example:
key_8f3a - stringrequired
The key's current name.
Example:
production - stringrequired
The last four characters of the secret.
Example:
Q2x9
- stringrequirednullable
The job this call started, or
null. - integerrequired
How long we took to answer.
Example:
41 - stringrequirednullable
The address the call came from.
Example:
203.0.113.9 - stringrequirednullable
The
Idempotency-Keyyou sent, ornull.Example:
order-1234 - stringoptionalnullable
The request body as JSON text, masked and cut at the kept size;
nullwhen there was none. Only withexpand=payloads.Example:
{"prompt": "A linen dress"} - booleanoptionalnullable
Whether the request body was cut. Only with
expand=payloads.Example:
false - stringoptionalnullable
The answer's body as JSON text, masked and cut at the kept size;
nullwhen there was none. Only withexpand=payloads.Example:
{"job_id": "j_01"} - booleanoptionalnullable
Whether the answer's body was cut. Only with
expand=payloads.Example:
false
- booleanrequired
Whether another page follows this one.
Example:
false - stringrequired
The moment these figures were read (UTC, ISO-8601).
Example:
2026-10-01T00:00:00Z - stringrequired
The window's first instant, inclusive (UTC).
Example:
2026-09-01T00:00:00Z - stringrequired
The window's end, exclusive (UTC); without
endsent,as_of.Example:
2026-10-01T00:00:00Z - stringoptionalnullable
Send it back as
cursorfor the next page. Absent on the last page. Opaque: never build or edit one.Example:
eyJsIjoiY2hhbmdlbG9nIn0
- 400 — The request cannot be read as it was sent (a header, the URL or the body's form).
- 401 — No valid API key was sent.
- 403 — Your key or your plan does not allow this.
- 422 — A field is missing or has a value this operation cannot use.
- 429 — Too many requests: wait for the number of seconds in the Retry-After header.
- 500 — Something went wrong on our side; retry, and quote the request id if it keeps happening.