---
title: "Router Usage Seal"
method: POST
path: "/billing/admin/router-usage/seal"
---

# Router Usage Seal

`POST /billing/admin/router-usage/seal`

## Request

- Base URL: `https://api-docs.session-exchange.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api-docs.session-exchange.com/billing/admin/router-usage/seal`
- Auth: none declared

Seal closed months of the router usage ledger on demand (the daily overage sweep does it
too) — including a BACKFILL of already-closed months. Body: {month?, tenant?, dry_run?}.
Idempotent: a sealed (month, tenant) reports `already_sealed` and is never re-sealed; change
one only via /billing/admin/router-usage/correct. See collector/store/usage_seals.py.

## Response `200`

Successful Response

- unknown

---

[API](https://skmtc.dev/session-exchange/apis/a4sx.md) · [All operations](https://skmtc.dev/session-exchange/apis/a4sx/llms.txt) · [OpenAPI document](https://skmtc.dev/session-exchange/apis/a4sx/revisions/abaefc33dfc7?raw)
