Skip to content

List request logs

GET
/request_logs
import MoreVoice from "@morevoice/sdk";
const mv = new MoreVoice(); // MOREVOICE_API_KEY from the environment
for await (const requestLog of mv.requestLogs.list()) {
console.log(requestLog);
}

Your recent /v1 requests in this mode, newest first, with redacted bodies: what was sent, what came back, how long it took. Filters combine: status (4xx, error, 404…), method, path (prefix), key_id, request_id, operation_id, created[gte]… Kept 30 days (test mode 7). Logging is switched on per organisation.

Try it in the API playground with a test-mode key.

limit
integer
default: 20 >= 1 <= 100

How many objects to return, 1–100 (default 20).

starting_after
string
>= 1 characters <= 512 characters

A cursor (next_cursor) or object ID: return the objects after it (older).

ending_before
string
>= 1 characters <= 512 characters

A cursor or object ID: return the objects before it (newer).

status
string
/^([1-5]xx|error|[1-5]\d\d)$/

A status class (2xx, 3xx, 4xx, 5xx), error (any 4xx or 5xx), or one status code (404).

method
string
Allowed values: GET POST PATCH PUT DELETE

Only this HTTP method.

path
string
>= 1 characters <= 512 characters

Only paths starting with this (/v1/calls matches /v1/calls/call_…).

key_id
string
>= 1 characters <= 64 characters

Only requests made with this API key (key_…).

request_id
string
>= 1 characters <= 128 characters

Only the request with this X-Request-Id (req_…).

operation_id
string
>= 1 characters <= 128 characters

Only this operation (calls_create).

created

Filter on when the request arrived: created[gte], created[gt], created[lte], created[lt] (ISO-8601).

object
gt
string format: date-time
<= 40 characters
gte
string format: date-time
<= 40 characters
lt
string format: date-time
<= 40 characters
lte
string format: date-time
<= 40 characters
MoreVoice-Version
string
/^\d{4}-\d{2}-\d{2}$/

The API version to use for this request. Defaults to the version the API key is pinned to.

Example
2026-11-01

OK

Media typeapplication/json

A page of request logs, newest first.

object
data
required
Array<object>

One /v1 request your organisation made, as it was logged (redacted). Kept 30 days (test mode: 7).

object
api_version
required

The API version the response was rendered in.

string | null
created
required

When the request arrived.

string format: date-time
error_code
required

The error code (error.code) of an error response.

string | null
id
required

A request log ID (prefix rlog_).

string
/^rlog_[0-9A-Za-z]+$/
idempotency_key
required
string | null
ip
required
string | null
key_id
required
Any of:

A api key ID (prefix key_).

string
/^key_[0-9A-Za-z]+$/
latency_ms
required

Time to answer, in milliseconds (streams: how long they stayed open).

integer
>= -9007199254740991 <= 9007199254740991
livemode
required

true in live mode, false in test mode.

boolean
method
required
string
object
required
string
Allowed value: request_log
operation_id
required

The OpenAPI operationId of the route, e.g. calls_create.

string | null
path
required

The path without the query string.

string
query
required
Any of:
object
key
additional properties
request_body
required

The request body, redacted (secrets, tokens, passwords and header values masked) and cut to 8 KB; null when there was none.

request_id
required

The request’s X-Request-Id (req_…), as error bodies and the X-Request-Id header show it.

string
response_body
required

The response body of errors and POSTs, redacted and cut to 8 KB; null otherwise.

route
required

The matched route template, e.g. /v1/calls/:id (null when no route matched).

string | null
status
required

The HTTP status of the response.

integer
>= -9007199254740991 <= 9007199254740991
user_agent
required
string | null
has_more
required

Whether more objects follow in the requested direction.

boolean
next_cursor
required

Pass as starting_after (or ending_before, when paging backwards) to continue; null on the last page.

string | null
object
required
string
Allowed value: list
url
required

The list’s path.

string
Example
{
"data": [
{
"api_version": "2026-11-01",
"created": "2026-11-03T09:14:22.135Z",
"error_code": "parameter_invalid",
"id": "rlog_4Gk2LmN9pQ4rS6tV8wX0yZ",
"idempotency_key": "8e0f3a2c-5d1b-4c7e-9f6a-2b4d8c1e7a90",
"ip": "203.0.113.7",
"key_id": "key_3fT9kq2ZpLr8YwVbN1cX0a",
"latency_ms": 42,
"livemode": false,
"method": "POST",
"object": "request_log",
"operation_id": "calls_create",
"path": "/v1/calls",
"query": null,
"request_body": {
"assistant_id": "asst_8tRPaZp5hLMbrGqdJ9AmNa",
"to": "+97250000000"
},
"request_id": "req_7Pq2Rk9sT1uV3wX5yZ8aBc",
"response_body": {
"error": {
"code": "parameter_invalid",
"message": "to must be an E.164 number",
"param": "to",
"type": "invalid_request_error"
}
},
"route": "/v1/calls",
"status": 400,
"user_agent": "morevoice-node/0.4.0"
}
],
"has_more": false,
"next_cursor": null,
"object": "list",
"url": "/v1/request_logs"
}

The request is invalid: a parameter is missing, malformed or unknown, or the version header is unknown.

Media typeapplication/json

Every /v1 error.

object
error
required
object
code
required

A stable, machine-readable code from the error-code catalogue.

string
details

Structured context, e.g. required_scope or the compliance verdict.

object
key
additional properties
doc_url
required

A link to the documentation of this code.

string
message
required

A human-readable explanation. Do not parse it.

string
param

The request parameter the error relates to, e.g. to or metadata[order_id].

string
request_id
required

The X-Request-Id of this request. Quote it when you contact support.

string
type
required

The category of the error.

string
Allowed values: invalid_request_error authentication_error permission_error not_found conflict rate_limit_error compliance_error idempotency_error api_error
Example
{
"error": {
"code": "parameter_missing",
"doc_url": "https://docs.morevoice.ai/api/errors#parameter-missing",
"message": "Missing required parameter: to.",
"param": "to",
"request_id": "req_7Hk2LmN9pQ4rS6tV8wX0yZ",
"type": "invalid_request_error"
}
}
X-Request-Id
string

The request’s ID (req_…). Quote it when you contact support.

No valid API key was sent.

Media typeapplication/json

Every /v1 error.

object
error
required
object
code
required

A stable, machine-readable code from the error-code catalogue.

string
details

Structured context, e.g. required_scope or the compliance verdict.

object
key
additional properties
doc_url
required

A link to the documentation of this code.

string
message
required

A human-readable explanation. Do not parse it.

string
param

The request parameter the error relates to, e.g. to or metadata[order_id].

string
request_id
required

The X-Request-Id of this request. Quote it when you contact support.

string
type
required

The category of the error.

string
Allowed values: invalid_request_error authentication_error permission_error not_found conflict rate_limit_error compliance_error idempotency_error api_error
Example
{
"error": {
"code": "invalid_api_key",
"doc_url": "https://docs.morevoice.ai/api/errors#invalid-api-key",
"message": "Invalid API key.",
"request_id": "req_7Hk2LmN9pQ4rS6tV8wX0yZ",
"type": "authentication_error"
}
}
X-Request-Id
string

The request’s ID (req_…). Quote it when you contact support.

The key may not do this (a missing scope, a plan limit, or a compliance block).

Media typeapplication/json

Every /v1 error.

object
error
required
object
code
required

A stable, machine-readable code from the error-code catalogue.

string
details

Structured context, e.g. required_scope or the compliance verdict.

object
key
additional properties
doc_url
required

A link to the documentation of this code.

string
message
required

A human-readable explanation. Do not parse it.

string
param

The request parameter the error relates to, e.g. to or metadata[order_id].

string
request_id
required

The X-Request-Id of this request. Quote it when you contact support.

string
type
required

The category of the error.

string
Allowed values: invalid_request_error authentication_error permission_error not_found conflict rate_limit_error compliance_error idempotency_error api_error
Example
{
"error": {
"code": "missing_scope",
"doc_url": "https://docs.morevoice.ai/api/errors#missing-scope",
"message": "This API key lacks the calls:write scope.",
"request_id": "req_7Hk2LmN9pQ4rS6tV8wX0yZ",
"type": "permission_error"
}
}
X-Request-Id
string

The request’s ID (req_…). Quote it when you contact support.

Too many requests, or no call capacity right now. Retry after the Retry-After delay.

Media typeapplication/json

Every /v1 error.

object
error
required
object
code
required

A stable, machine-readable code from the error-code catalogue.

string
details

Structured context, e.g. required_scope or the compliance verdict.

object
key
additional properties
doc_url
required

A link to the documentation of this code.

string
message
required

A human-readable explanation. Do not parse it.

string
param

The request parameter the error relates to, e.g. to or metadata[order_id].

string
request_id
required

The X-Request-Id of this request. Quote it when you contact support.

string
type
required

The category of the error.

string
Allowed values: invalid_request_error authentication_error permission_error not_found conflict rate_limit_error compliance_error idempotency_error api_error
Example
{
"error": {
"code": "rate_limited",
"doc_url": "https://docs.morevoice.ai/api/errors#rate-limited",
"message": "Too many requests. Retry after 1 second.",
"request_id": "req_7Hk2LmN9pQ4rS6tV8wX0yZ",
"type": "rate_limit_error"
}
}
Retry-After
integer

Seconds to wait before retrying.

X-Request-Id
string

The request’s ID (req_…). Quote it when you contact support.

Something went wrong on MoreVoice’s side. Retry with the same Idempotency-Key.

Media typeapplication/json

Every /v1 error.

object
error
required
object
code
required

A stable, machine-readable code from the error-code catalogue.

string
details

Structured context, e.g. required_scope or the compliance verdict.

object
key
additional properties
doc_url
required

A link to the documentation of this code.

string
message
required

A human-readable explanation. Do not parse it.

string
param

The request parameter the error relates to, e.g. to or metadata[order_id].

string
request_id
required

The X-Request-Id of this request. Quote it when you contact support.

string
type
required

The category of the error.

string
Allowed values: invalid_request_error authentication_error permission_error not_found conflict rate_limit_error compliance_error idempotency_error api_error
Example
{
"error": {
"code": "internal_error",
"doc_url": "https://docs.morevoice.ai/api/errors#internal-error",
"message": "Something went wrong on MoreVoice's side.",
"request_id": "req_7Hk2LmN9pQ4rS6tV8wX0yZ",
"type": "api_error"
}
}
X-Request-Id
string

The request’s ID (req_…). Quote it when you contact support.