Skip to content
GridRouterhome

Search

Search providers, capabilities and pages

Docs
API referenceLogs, drains and alerts

Search call logs

GET
/v1/logs

Every call and routed attempt for this org, newest first (360-day retention). Filter by time, outcome, status, provider, capability, endpoint, key, agent, client, mode, credential, error code, latency and cost; cursor-paginated.

Authorization

bearer
AuthorizationBearer <token>

In: header

Query Parameters

from?string

Start of the window (default: 24 hours ago)

Formatdate-time
to?string

End of the window (default: now)

Formatdate-time
outcome?array<>|
http_status?array<>|
status_min?integer

Lowest HTTP status (inclusive)

Range100 <= value <= 599
status_max?integer

Highest HTTP status (inclusive)

Range100 <= value <= 599
exclude?array<>|

column:value pairs to leave out

provider?array<>|
capability?array<>|
endpoint_id?array<>|
key_id?array<>|
agent_id?array<>|
workspace_id?array<>|
app_id?array<>|
client_name?array<>|
client_kind?array<>|
mode?array<>|
client_mode?array<>|
supply_mode?array<>|
credential?array<>|
error_code?array<>|
country?array<>|
cache?array<>|
billing_verdict?array<>|

Vendor billing verdicts; mismatch = charged_for_miss, double_charged_retry or price_mismatch

latency_min?|
Range0 <= value
latency_max?|
Range0 <= value
cost_min?|
Range0 <= value
cost_max?|
Range0 <= value
q?string

Search call, parent or run id, endpoint or error code (substring)

Match^[A-Za-z0-9_.-]{1,128}$
parent_id?string
Match^[A-Za-z0-9_.:/@-]{1,200}$
limit?integer
Range1 <= value <= 200
Default50
cursor?string

Opaque cursor from a previous page

Match^[A-Za-z0-9_-]{1,300}$

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/logs"
{  "items": [    {      "call_id": "string",      "parent_id": "string",      "attempt": 0,      "workspace_id": "string",      "app_id": "string",      "app_name": "string",      "key_id": "string",      "agent_id": "string",      "run_id": "string",      "supply_mode": "byok",      "capability": "string",      "endpoint_id": "string",      "provider": "string",      "mode": "string",      "client_mode": "sync",      "credential": "managed",      "outcome": "hit",      "error_code": "string",      "http_status": 0,      "upstream_status": 0,      "total_ms": 0,      "overhead_ms": 0,      "upstream_ms": 0,      "ttfb_ms": 0,      "queue_wait_ms": 0,      "bytes_in": 0,      "bytes_out": 0,      "cost_micro": 0,      "cache": "hit",      "saved_micro": 0,      "user_agent": "string",      "client_name": "string",      "client_version": "string",      "client_kind": "sdk",      "ip": "string",      "asn": 0,      "country": "string",      "colo": "string",      "meta": {        "property1": "string",        "property2": "string"      },      "request_hash": "string",      "effective_options": "",      "billing_verdict": "ok",      "billing_billable": null,      "vendor_expected_credits": null,      "vendor_reported_credits": null,      "vendor_balance_after": null,      "vendor_expected_micro": null,      "vendor_reported_micro": null,      "ts": "2019-08-24T14:15:22Z",      "has_body": true    }  ],  "next_cursor": "string"}