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

# Dashboard

> Operator dashboard for approvals, ledger, and treasury management

The AXON dashboard is a React app in `platform/` backed by Supabase. It provides operator workflows for approvals, ledger browsing, treasury management, and seller operations.

**Local dev URL:** `http://127.0.0.1:5173`

**Hosted default:** `https://axon402.com/`

> [!NOTE]
>
> Use [Live Onboarding](https://docs.axon402.com/docs/getting-started/live-onboarding.md) first if you are bringing up AXON from a fresh clone.

> [!NOTE]
>
> The dashboard is the operator surface. Agents should use runtime MCP or REST credentials instead of a browser session.

## Operator Workflows

* **Approval queue** — Escalated SSAR requests with approve/deny actions
* **Ledger browsing** — Transaction status and forensic context
* **Decision traces** — Deterministic → Risk → Final event chain
* **Receipt linkage** — Challenge + settlement headers
* **Provider registry** — Provider metadata and health views
* **API key registry** — Organization-scoped key management
* **Emergency freeze** — Global freeze control in the app shell

## Routes

### Spend side (buyer governance)

| Route | Purpose |
| :- | :- |
| `/dashboard` | Redirects to `/dashboard/agent` |
| `/dashboard/agent` | Agent Workbench |
| `/dashboard/overview` | Command Center |
| `/wallets` | Agent list |
| `/wallets/:walletId` | Agent detail |
| `/workforce`, `/workforce/:walletId`, `/mandates`, `/policies` | Legacy redirects |
| `/ledger` | Spend transaction history |
| `/approvals` | Approval queue |
| `/vault` | Treasury management + auto-sweep history |
| `/providers` | Provider catalog, search, quote, test-buy, and use surface |
| `/providers/health` | Legacy redirect to `/providers` |
| `/settings/api-keys` | API key management |

## Approvals Workflow

**1. Request escalated**

Risk stage flags a request as `APPROVAL_REQUIRED`.

**2. Review in dashboard**

Dashboard shows pending approval with task, intent, host, risk context.

**3. Operator decides**

Click **Approve** or **Deny**.

**4. Token consumed**

Caller consumes approval via `POST /v1/approvals/:id/consume`.

**5. Retry completes**

Caller retries with same `idempotency_key` + `approval_token`.

### Approval States

| State | Description |
| :- | :- |
| `pending` | Awaiting operator review |
| `approved` | Ready for token consumption |
| `denied` | Rejected by operator |
| `expired` | TTL exceeded (default 5 minutes via `AXON_APPROVAL_EXPIRY_MINUTES`) |

## Ledger

For each transaction, operators can inspect:

* Transaction status and failure reason
* Related spend request (via wallet + idempotency key)
* Ordered decision events
* Latest receipt detail (`payment_receipts`)

## What Is Not In Scope

* Full enterprise admin/billing/RBAC control-plane
* Webhook settings UI (webhook runtime is implemented; config UI is not)
* Generic approval REST endpoint
* Daemon bootstrap bearer key management via dashboard


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.