> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agentbot.raveculture.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Admin Summary API

> Admin dashboard summary with service health, trial stats, and agent status

# Admin Summary API

Retrieve a consolidated admin dashboard summary including service health, trial statistics, and agent status breakdowns.

## Get admin summary

```http theme={"dark"}
GET /api/admin/summary
```

Requires session authentication with an admin email. Returns service health checks, active trial counts, expiring trial users, agent status totals, and recent agent errors.

### Authentication

The authenticated user's email must be in the `ADMIN_EMAILS` environment variable (comma-separated list). Non-admin users receive a `403` response.

### Response

```json theme={"dark"}
{
  "serviceHealth": [
    { "name": "Agentbot API", "status": "ok", "detail": "ok" },
    { "name": "Tempo Soul", "status": "ok", "detail": "ok" },
    { "name": "x402 Gateway", "status": "degraded", "detail": "HTTP 502" }
  ],
  "trial": {
    "active": 12,
    "expiringSoon": [
      {
        "id": "user_abc123",
        "email": "user@example.com",
        "endsAt": "2026-04-04T00:00:00.000Z",
        "daysLeft": 2
      }
    ]
  },
  "agents": {
    "totals": {
      "running": 8,
      "stopped": 3,
      "error": 1
    },
    "recentErrors": [
      {
        "id": "agent_xyz",
        "name": "my-agent",
        "userId": "user_abc123",
        "updatedAt": "2026-04-02T12:00:00.000Z",
        "status": "error"
      }
    ]
  },
  "timestamp": "2026-04-02T12:00:00.000Z"
}
```

### Response fields

| Field                             | Type   | Description                                                                                                                                 |
| --------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceHealth`                   | array  | Health status of monitored platform services. See [dashboard health](/api-reference/health#dashboard-health) for the service health format. |
| `serviceHealth[].name`            | string | Service display name                                                                                                                        |
| `serviceHealth[].status`          | string | Service status: `ok`, `degraded`, or `down`                                                                                                 |
| `serviceHealth[].detail`          | string | Additional detail such as an HTTP status code or error message                                                                              |
| `trial.active`                    | number | Number of users on the free plan with an active trial                                                                                       |
| `trial.expiringSoon`              | array  | Users whose trial expires within the next 3 days, ordered by expiration date. Returns up to 12 entries.                                     |
| `trial.expiringSoon[].id`         | string | User ID                                                                                                                                     |
| `trial.expiringSoon[].email`      | string | User email                                                                                                                                  |
| `trial.expiringSoon[].endsAt`     | string | ISO 8601 trial expiration timestamp                                                                                                         |
| `trial.expiringSoon[].daysLeft`   | number | Days remaining on the trial                                                                                                                 |
| `agents.totals`                   | object | Agent counts grouped by status. Keys are status values (for example `running`, `stopped`, `error`) and values are counts.                   |
| `agents.recentErrors`             | array  | Up to 5 most recently updated agents in the `error` state                                                                                   |
| `agents.recentErrors[].id`        | string | Agent ID                                                                                                                                    |
| `agents.recentErrors[].name`      | string | Agent name                                                                                                                                  |
| `agents.recentErrors[].userId`    | string | Owner's user ID                                                                                                                             |
| `agents.recentErrors[].updatedAt` | string | ISO 8601 timestamp of the last status update                                                                                                |
| `agents.recentErrors[].status`    | string | Always `error`                                                                                                                              |
| `timestamp`                       | string | ISO 8601 timestamp of when the summary was generated                                                                                        |

### Errors

| Code | Description                                                 |
| ---- | ----------------------------------------------------------- |
| 403  | Unauthorized — user is not authenticated or is not an admin |
