List API request logs

GET
/v1/request-logs

Returns the API requests made with your workspace's keys, newest first: method, route, status, error code, latency and request id (never bodies). Kept 14 days. Use it to find out why a request failed, by its requestId.

Requires an API key with the logs:read scope.

Authorization

apiKey
headerAuthorizationBearer <token>

A secret API key from the dashboard (Developers → API keys): vl_live_…, or vl_test_… for test mode. Each operation says which scope the key needs.

Query Parameters

after?string

The previous page's nextCursor: older requests.

Length1 <= length <= 256
since?string

A page's latestCursor: only newer requests, oldest first. Use it to tail the log.

Length1 <= length <= 256
status?string

error for status 400 and above, ok for the rest.

Value in"all""error""ok"
apiKeyId?string

Only requests made with this key.

Length1 <= length <= 128
limit?integer

How many items to return, 1–200. Default 50.

Range1 <= value <= 200

Response Body

Request logs, newest first (no bodies; 14-day retention)

application/json
  1. response
logs*array<>
nextCursor*string|null
latestCursor*string|null
Example Request
curl "https://api.vlayers.ai/v1/request-logs?status=error&limit=20" \  -H "Authorization: Bearer $VOICELAYER_API_KEY"
Example Response
{  "logs": [    {      "id": "0192f5b2-1b2c-7d3e-8f4a-5b6c7d8e9f01",      "method": "POST",      "route": "/v1/messages",      "status": 202,      "errorCode": null,      "apiKeyId": "key_7f2a91",      "latencyMs": 148,      "requestId": "req-8f2c1d",      "idempotencyKey": "7f3c9a2e-5b1d-4c8e-9f0a-2d6b8e4c1a37",      "createdAt": "2026-10-20T15:04:05.000Z"    }  ],  "nextCursor": null,  "latestCursor": "eyJ0IjoiMjAyNi0xMC0yMFQxNTowNDowNVoifQ"}