Skip to main content
GET
/
api
/
v1
/
overview
Overview Analytics
curl --request GET \
  --url https://api.example.com/api/v1/overview
{
  "summary": {
    "tokens_today": {
      "value": 123,
      "trend_pct": 123,
      "sub_values": {
        "input": 123,
        "output": 123
      }
    },
    "cost_today": {
      "value": 123,
      "trend_pct": 123
    },
    "messages": {
      "value": 123,
      "trend_pct": 123
    },
    "services_hit": {
      "total": 123,
      "healthy": 123,
      "issues": 123
    }
  },
  "token_usage": [
    {
      "hour": "<string>",
      "date": "<string>",
      "input_tokens": 123,
      "output_tokens": 123
    }
  ],
  "cost_usage": [
    {
      "hour": "<string>",
      "date": "<string>",
      "cost": 123
    }
  ],
  "message_usage": [
    {
      "hour": "<string>",
      "date": "<string>",
      "count": 123
    }
  ],
  "cost_by_model": [
    {
      "model": "<string>",
      "tokens": 123,
      "share_pct": 123,
      "estimated_cost": 123
    }
  ],
  "recent_activity": [
    {
      "id": "<string>",
      "timestamp": "<string>",
      "agent_name": "<string>",
      "model": "<string>",
      "input_tokens": 123,
      "output_tokens": 123,
      "total_tokens": 123,
      "cost": {},
      "status": "<string>",
      "routing_tier": {},
      "routing_reason": {},
      "error_message": {}
    }
  ],
  "active_skills": [
    {
      "name": "<string>",
      "agent_name": {},
      "run_count": 123,
      "last_active_at": "<string>",
      "status": "<string>"
    }
  ],
  "has_data": true
}

Overview

The overview endpoint provides a complete snapshot of your agent’s performance metrics. It returns summary statistics, timeseries data for tokens/costs/messages, cost breakdown by model, recent activity, and active skills. This endpoint intelligently switches between hourly and daily aggregations based on the selected time range, providing optimal granularity for visualization.

Authentication

Requires session authentication (cookie) or API key via X-API-Key header.

Query Parameters

range
string
default:"24h"
Time range for analytics. Valid values: 1h, 6h, 24h, 7d, 30d
  • Hourly data returned for: 1h, 6h, 24h
  • Daily data returned for: 7d, 30d
agent_name
string
Filter analytics to a specific agent. If omitted, returns data for all agents.

Response Schema

summary
object
High-level metrics for the selected time range
token_usage
array
Timeseries data for token usage (hourly or daily based on range)
cost_usage
array
Timeseries data for costs (hourly or daily based on range)
message_usage
array
Timeseries data for message counts (hourly or daily based on range)
cost_by_model
array
Cost and token breakdown by model, ordered by token usage
recent_activity
array
Last 5 messages in the time range, ordered by timestamp descending
active_skills
array
Skills that were executed in the time range, ordered by run count
has_data
boolean
Whether any telemetry data exists for this user/agent

Example Request

cURL
curl -X GET "https://api.manifest.build/api/v1/overview?range=24h&agent_name=my-agent" \
  -H "X-API-Key: your-api-key"

Example Response

{
  "summary": {
    "tokens_today": {
      "value": 125840,
      "trend_pct": 12.5,
      "sub_values": {
        "input": 85000,
        "output": 40840
      }
    },
    "cost_today": {
      "value": 0.45,
      "trend_pct": 8.2
    },
    "messages": {
      "value": 42,
      "trend_pct": -5.0
    },
    "services_hit": {
      "total": 0,
      "healthy": 0,
      "issues": 0
    }
  },
  "token_usage": [
    {
      "hour": "2026-03-04 00:00:00",
      "input_tokens": 3500,
      "output_tokens": 1200
    },
    {
      "hour": "2026-03-04 01:00:00",
      "input_tokens": 4200,
      "output_tokens": 1800
    }
  ],
  "cost_usage": [
    {
      "hour": "2026-03-04 00:00:00",
      "cost": 0.018
    },
    {
      "hour": "2026-03-04 01:00:00",
      "cost": 0.024
    }
  ],
  "message_usage": [
    {
      "hour": "2026-03-04 00:00:00",
      "count": 5
    },
    {
      "hour": "2026-03-04 01:00:00",
      "count": 8
    }
  ],
  "cost_by_model": [
    {
      "model": "claude-4.5-sonnet",
      "tokens": 95000,
      "share_pct": 75.5,
      "estimated_cost": 0.32
    },
    {
      "model": "gpt-4o",
      "tokens": 30840,
      "share_pct": 24.5,
      "estimated_cost": 0.13
    }
  ],
  "recent_activity": [
    {
      "id": "msg_abc123",
      "timestamp": "2026-03-04T10:30:00Z",
      "agent_name": "my-agent",
      "model": "claude-4.5-sonnet",
      "input_tokens": 2500,
      "output_tokens": 1200,
      "total_tokens": 3700,
      "cost": 0.015,
      "status": "ok",
      "routing_tier": "smart",
      "routing_reason": "complex_task",
      "error_message": null
    }
  ],
  "active_skills": [
    {
      "name": "web-search",
      "agent_name": "my-agent",
      "run_count": 15,
      "last_active_at": "2026-03-04T10:25:00Z",
      "status": "active"
    }
  ],
  "has_data": true
}

Notes

  • Trend calculations: Compares current period vs. previous period of equal length. For example, 24h range compares last 24 hours vs. previous 24 hours.
  • Hourly vs. Daily: Ranges 1h, 6h, 24h return hourly timeseries. Ranges 7d, 30d return daily timeseries.
  • Caching: Responses are cached for 5 minutes (see DASHBOARD_CACHE_TTL_MS).
  • Multi-tenancy: Data is automatically filtered by authenticated user. Users only see their own agents’ data.
  • Cost sanitization: Negative costs (invalid pricing data) are treated as 0.

Build docs developers (and LLMs) love