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

# Verified Closing Rooms: shareable live-status closing pages

> One shareable, live-status page per closing: how Verified Closing Rooms work, why the link is a bearer credential, how rotation works, and per-tier room quotas.

A **Verified Closing Room** is one shareable page per transaction that bundles the deal's orders — documents, signers, notarization, sealing, and shipping — with live status and verifiable evidence links. You create rooms with your partner API key; the parties to the deal view them by holding the room link. No accounts on either side of the glass.

## What a room shows

Every room page (and the matching `GET /api/rooms/{roomCode}` JSON) renders from live order records at read time:

* **Room header** — room name, your file reference, and the firm that presented it.
* **Progress strip** — X of Y documents signed, sealed, and delivered.
* **One card per document** — your label, a status pill, masked signer progress chips, an [evidence badge](/evidence-model), a `Verify seal` link when a verifiable seal exists, a link into the order's own page, and carrier tracking once shipped.
* **Activity timeline** — a merged feed of order milestones across the whole deal, derived from an explicit allowlist of audit actions. Signer emails are masked; internal identifiers never appear.
* **Closing Passport card** — the latest sealed [Closing Passport](/closing-passport), when one exists.

Statuses are read from the order records on every request — never replayed from an event stream — so the page can lag reality only by your refresh interval, not by queue depth. A status the platform does not recognize renders as *open*, never as complete: a room must not look finished on a status it does not understand.

## Bearer links and rotation

The room code is a 40-character hex string minted from a cryptographically secure random generator. It rides in the room URL:

```text Room link theme={null}
https://signsealship.com/rooms/{roomCode}
```

Possession of the link is the only credential. That is a deliberate tradeoff — parties join a closing with zero friction — and it has a consequence you should treat seriously:

<Warning>
  One link grants deal-wide visibility: every attached document's status, masked signer progress, evidence badges, tracking, and drill-down into each order page. Share it with the parties to the deal and no one else. Never post it publicly, embed it in a page, or put it anywhere a crawler can find it.
</Warning>

If a link leaks or you simply want to cut off everyone who has it, rotate it:

```bash Rotate the room code theme={null}
curl -X POST https://signsealship.com/api/rooms/{roomCode}/rotate \
  -H "Authorization: Bearer sss_pk_your_key_here"
```

```json Response theme={null}
{
  "roomCode": "a1b2c3d4e5f60718293a4b5c6d7e8f9012345678",
  "roomUrl": "/rooms/a1b2c3d4e5f60718293a4b5c6d7e8f9012345678"
}
```

Rotation reissues the bearer code: every previously shared link stops working immediately, at every cache layer (the public read is served `cache: no-store`). Share the new link with the parties who should still have access. Per-party scoped links are on the roadmap; today, rotation is the containment tool.

## Room lifecycle

<Steps>
  <Step title="Create">
    `POST /api/rooms` with a `name` (1-200 characters) and an optional `reference` — your own file or matter number, shown on the room header. The room opens with status `open`.
  </Step>

  <Step title="Attach orders">
    `POST /api/rooms/{roomCode}/orders` with the order's public code. Possession of the code is the authorization: if you hold it, you may bind that order to your room. Attaching is idempotent, and a room holds at most 50 orders.
  </Step>

  <Step title="Share and monitor">
    Hand every party the room link. Read the same live JSON from `GET /api/rooms/{roomCode}`, or subscribe to [webhooks](/webhooks-guide) to be pushed `room.order_attached` and `room.passport_sealed` events.
  </Step>

  <Step title="Detach when needed">
    `DELETE /api/rooms/{roomCode}/orders/{orderCode}` removes a document from the room without touching the order itself.
  </Step>

  <Step title="Seal a Closing Passport">
    `POST /api/rooms/{roomCode}/passport` mints a versioned, sealed evidence manifest for everything in the room. See [Closing Passport](/closing-passport).
  </Step>
</Steps>

Full request and response shapes are in the [rooms API reference](/api-reference/rooms).

## Two ways to operate rooms

Everything above works identically through two front doors backed by the same service:

* **Partner API key** — `Authorization: Bearer sss_pk_...` against the `/api/rooms` routes. Built for your systems.
* **Partner dashboard** — sign in at [signsealship.com/partner](https://signsealship.com/partner), link your firm once by pasting your API key, then create rooms, attach orders, rotate links, and seal passports in the UI. Linking works only by proving possession of a valid key — never by email matching.

Rooms belong to your firm either way: a room created in the dashboard is visible to your API key and vice versa, and no other partner can see or touch it.

## Tiers and quotas

Room quotas count **open rooms only** — close a room and it stops counting. The quota is enforced when you create a room, with a clear error telling you the limit you hit.

| Tier        | Price    | Active room quota |
| ----------- | -------- | ----------------- |
| Trial       | Free     | 5                 |
| PartnerLink | \$49/mo  | 5                 |
| ProOffice   | \$149/mo | 25                |
| ClosingDesk | \$399/mo | Unlimited         |

Two more limits apply regardless of tier:

* **50 orders per room** — keeps the live room view fast for every reader.
* **20 Closing Passport versions per room** — each seal is a dated snapshot; see [Closing Passport](/closing-passport).

<Note>
  New partner keys start on the trial tier. Contact SignSealShip to activate a paid tier; self-serve billing is coming.
</Note>

## What a room never does

* It never claims evidence it does not hold — the badge vocabulary is locked to SEALED, RECORDED, and "no evidence yet". See the [evidence model](/evidence-model).
* It never exposes signer email addresses, internal identifiers, or another partner's data.
* It never marks a document complete on an unrecognized status.
