---
title: "The approval page's facts"
method: GET
path: "/approvals/a/{approvalId}"
tags: ["approvals"]
---

# The approval page's facts

`GET /approvals/a/{approvalId}`

## Request

- Base URL: `https://api.bubblio.dev`
- URL: `https://api.bubblio.dev/approvals/a/{approvalId}`
- Auth: none declared

Renders facts and writes NOTHING — link scanners and chat prefetchers GET links,
so approval acts only on POST after a human gesture. Includes the mandate context
(#37: `standing` = the live mandate's remaining budget, `offer` = the checkbox's
server-authored terms) and, for connect ceremonies (#38), the connect step's state.

## Path parameters

- `approvalId` string, required

## Response `200`

The approval's facts.

- object
  - `approval` object, required
    - `id` string, required
    - `code` string, required: The short human-checkable code the agent relayed.
    - `status` 'pending' | 'approved' | 'declined' | 'revoked' | 'expired', required
    - `kind` 'action' | 'connect', required
    - `connect` object: Connect ceremonies only.
      - `connected` boolean
      - `login_url` string, uri, nullable
    - `platform` string, required: The door's display label.
    - `callback_origin` string, nullable: The platform's verified callback origin at mint time.
    - `action` string, required
    - `args` object, required
    - `args_hash` string, required
    - `amount` string, nullable: Display amount for priced actions.
    - `agent` object
      - `presented` string, nullable: The claimed Signature-Agent header, verbatim.
      - `verified` boolean: Whether Web Bot Auth PROVED the identity.
      - `verified_agent` string: The proven origin, present only when verified.
    - `tier` 'anonymous' | 'keyed', required
    - `created_at` string, date-time, required
    - `expires_at` string, date-time, required
    - `approved_at` string, date-time, nullable
    - `mandate` object, nullable
      - `standing` object: The live mandate covering this door, with remaining budget.
      - `offer` object: Server-authored terms the checkbox would mint.

## Other responses

- `404`: UNIFORM: unknown, malformed, foreign, and lagged approvals all read the same.
- `429`: Per-IP ceiling tripped.

---

[API](https://skmtc.dev/bubblio/apis/bubblio-agent-door-api.md) · [All operations](https://skmtc.dev/bubblio/apis/bubblio-agent-door-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bubblio/apis/bubblio-agent-door-api/revisions/d858aff9c01d?raw)
