List request logs
The organisation's API requests in the request's mode (live or test), newest first, kept 31 days: who called what and the answer. Filter by status class, method, actor, path prefix or time. A request appears within seconds; reading the logs is not logged.
- Scopes
request_logs:read - Rate classread
/v1/request-logsThe organisation's API requests in the request's mode (live or test), newest first, kept 31 days: who called what and the answer. Filter by status class, method, actor, path prefix or time. A request appears within seconds; reading the logs is not logged.
Authorization
apiKey An API key (fo_live_… / fo_test_…) as a bearer token
In: header
Query Parameters
Page size
1 <= value <= 10020Opaque position returned by a previous page
^[A-Za-z0-9_-]{1,512}$Opaque position returned by a previous page
^[A-Za-z0-9_-]{1,512}$Only answers of this class
Value in
- "2xx"
- "4xx"
- "5xx"
Value in
- "GET"
- "POST"
- "PATCH"
- "PUT"
- "DELETE"
Only requests by this actor (a key_…, usr_… or client ID)
1 <= length <= 200Only paths starting with this
^\/.*starts_with2 <= length <= 500Only requests at or after this
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$date-timeOnly requests before this
^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$date-timeHeader Parameters
Dated API version; pinned per organisation on first use and overridable per request
Value in
- "2026-10-01"
- "2026-10-04"
The data the request acts on: test is the organisation's sandbox. An OAuth token picks it (live by default); an API key's mode is fixed, and naming the other one is refused
Value in
- "live"
- "test"
ETag of a cached representation; a match returns 304
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://example.com/v1/request-logs"{ "object": "list", "data": [ { "object": "request_log", "id": "string", "method": "GET", "path": "string", "route": "string", "query": "string", "status": 100, "error_code": "string", "duration_ms": 0, "actor": { "kind": "user", "id": "string", "on_behalf_of": null }, "via": "api", "livemode": true, "api_version": "string", "idempotency_key": "string", "ip": "string", "user_agent": "string", "created_at": "2019-08-24T14:15:22Z" } ], "has_more": true, "next_cursor": "string"}Get a request log GET
One request, by its `Request-Id` (the newest, if a client reused one).
List audit events GET
The organisation's audit timeline, newest first: what members, API keys, connected apps and FurniOps staff did, from sign-in policy to API keys and data operations. Filter by action, actor or time (`since`, `until`). Addresses are shown as a /24 or /48 prefix only. FurniOps AI acting for a member is the actor `agent` `assistant` with `on_behalf_of` the member. FurniOps staff acting through support access are the actor `staff`, with the member in `data.acting_for` and the grant in `data.support_grant`; `data.agent.conversation_id` names the assistant conversation when FurniOps AI made the change.