Checkrd

Dashboard

Query aggregated telemetry stats, timeseries, top hosts, and paginated events.

Dashboard

Dashboard endpoints provide aggregated views of your telemetry data. These power the Checkrd dashboard UI and are available for programmatic access.


Get Stats

GET /v1/dashboard/stats

Auth: JWT (viewer+)

ParameterTypeRequiredDescription
hoursintegerNoLookback window (default 24, max 720).
bash
curl "https://api.checkrd.io/v1/dashboard/stats?hours=24" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Response 200 OK

json
{
  "total_agents": 12,
  "total_events": 45230,
  "unique_hosts": 8,
  "denied_requests": 127,
  "error_rate": 0.028,
  "p99_latency_ms": 342.5
}

Get Agent Stats

GET /v1/dashboard/agents

Auth: JWT (viewer+)

ParameterTypeRequiredDescription
hoursintegerNoLookback window (default 24, max 720).
bash
curl "https://api.checkrd.io/v1/dashboard/agents?hours=24" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Response 200 OK

json
[
  {
    "agent_id": "01916a3e-...",
    "agent_name": "sales-agent",
    "events": 12500,
    "denied_requests": 34,
    "error_rate": 0.015,
    "p99_latency_ms": 289.0
  }
]

Get Top Hosts

GET /v1/dashboard/hosts

Auth: JWT (viewer+)

ParameterTypeRequiredDescription
hoursintegerNoLookback window (default 24, max 720).
limitintegerNoNumber of hosts to return (default 10, max 50).
bash
curl "https://api.checkrd.io/v1/dashboard/hosts?hours=24&limit=5" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Response 200 OK

json
[
  { "host": "api.salesforce.com", "request_count": 8420, "error_rate": 0.012 },
  { "host": "api.stripe.com", "request_count": 3100, "error_rate": 0.005 },
  { "host": "api.openai.com", "request_count": 2800, "error_rate": 0.031 }
]

Get Timeseries

GET /v1/dashboard/timeseries

Auth: JWT (viewer+)

ParameterTypeRequiredDescription
hoursintegerNoLookback window (default 24, max 720).
bash
curl "https://api.checkrd.io/v1/dashboard/timeseries?hours=24" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Response 200 OK

json
[
  {
    "timestamp": "2026-04-12T08:00:00Z",
    "bucket_width_seconds": 3600,
    "events": 1250,
    "errors": 15,
    "denied": 8
  }
]

List Events

GET /v1/dashboard/events

Auth: JWT (viewer+)

ParameterTypeRequiredDescription
limitintegerNoResults per page (default 20, max 100).
cursorstringNoOpaque pagination cursor.
agent_idUUIDNoFilter by agent.
methodstringNoFilter by HTTP method.
hoststringNoFilter by target host.
status_codeintegerNoFilter by response status code.
policy_resultstringNoFilter by allowed, denied, or error.
fromISO 8601NoStart of time range.
toISO 8601NoEnd of time range.
trace_idstringNoFilter by W3C trace ID (32 hex chars).
bash
curl "https://api.checkrd.io/v1/dashboard/events?agent_id=01916a3e-...&policy_result=denied&limit=10" \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"

Response 200 OK

json
{
  "data": [
    {
      "request_id": "req_abc123",
      "agent_id": "01916a3e-...",
      "timestamp": "2026-04-12T09:15:00Z",
      "method": "DELETE",
      "host": "api.stripe.com",
      "path": "/v1/customers/{id}",
      "status_code": null,
      "latency_ms": null,
      "policy_result": "denied",
      "deny_reason": "block-all-deletes"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Denied requests have null for status_code and latency_ms because the request was blocked before reaching the external API.