Skip to main content
This guide takes you from no access to a sealed, publicly verifiable Closing Passport. You need a terminal with curl; every call runs against https://signsealship.com.
Partner API keys start with sss_pk_ and are shown to you exactly once — SignSealShip stores only a SHA-256 hash. Keep yours in a secret manager, never in code or version control.
1

Request access

Go to signsealship.com/partner and use the Request access form: firm name, contact name, work email, your role, expected volume, and what you plan to build.You can also submit the same request over the API:
Request access
curl -X POST https://signsealship.com/api/partner/request \
  -H "Content-Type: application/json" \
  -d '{
    "firmName": "Maple Title Co.",
    "contactName": "Jordan Alvarez",
    "workEmail": "jordan@mapletitle.example",
    "role": "Escrow officer",
    "expectedVolume": "20 closings/month",
    "useCase": "Live closing status pages for buyers, sellers, and lenders."
  }'
Requests from a business email with a coherent title, escrow, legal, or lending use case are approved automatically; everything else goes to a human. Either way the response is immediate:
Response
{ "status": "issued", "message": "Your Closing Rooms access is ready - check your email." }
A "pending" status means a person is reviewing your request and you will hear back by email.
2

Receive your key by email

Approved requests get an email at the work address you provided containing your sss_pk_ partner API key and onboarding steps. The key appears in that email once and nowhere else.
If you lose the key, request a replacement — it cannot be recovered, because only its hash is stored.
3

Link your firm (dashboard) or use the API directly

You can drive everything below from the partner dashboard instead of curl. Sign in at signsealship.com/partner and paste your API key into the Link your firm form. Linking proves possession of the key and connects your login to the firm; the first person to link becomes the owner.Prefer the API? Skip linking entirely — every remaining step works with the key as a bearer token:
Auth header
-H "Authorization: Bearer sss_pk_your_key_here"
4

Create a room

A Closing Room is one shareable page per transaction. Create one with a name and, optionally, your own file number as reference:
Create a room
curl -X POST https://signsealship.com/api/rooms \
  -H "Authorization: Bearer sss_pk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{ "name": "1428 Maple St - Refinance", "reference": "TC-88412" }'
Response
{
  "roomCode": "3f8c1a9b2e4d5f60718293a4b5c6d7e8f9012345",
  "roomUrl": "/rooms/3f8c1a9b2e4d5f60718293a4b5c6d7e8f9012345",
  "name": "1428 Maple St - Refinance",
  "reference": "TC-88412",
  "status": "open",
  "createdAt": "2026-07-13T17:04:12Z"
}
The roomCode is a random 40-hex bearer code — whoever holds it can view the room. Your trial tier allows 5 open rooms; see tiers and quotas.
5

Attach orders

Attach each order in the deal by its public order code — the same code from the order’s /orders/{code} link. Possession of the code is the authorization to attach it. An optional label names the document on the room page:
Attach an order
curl -X POST https://signsealship.com/api/rooms/3f8c1a9b2e4d5f60718293a4b5c6d7e8f9012345/orders \
  -H "Authorization: Bearer sss_pk_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{ "orderCode": "your-order-public-code", "label": "Seller deed package" }'
Response
{ "ok": true, "alreadyAttached": false }
Attaching is idempotent — repeating the call returns "alreadyAttached": true and changes nothing. A room holds up to 50 orders.
6

Share the room link

Every party to the deal views the same live page — no accounts, no logins:
Room link
https://signsealship.com/rooms/3f8c1a9b2e4d5f60718293a4b5c6d7e8f9012345
Your systems can read the identical live JSON:
Read the room
curl https://signsealship.com/api/rooms/3f8c1a9b2e4d5f60718293a4b5c6d7e8f9012345
The room link is a bearer credential: one link grants deal-wide visibility. Share it only with the parties to the deal. If it leaks, rotate it — the old link dies instantly. See bearer links and rotation.
7

Seal a Closing Passport

When you want a verifiable snapshot of everything cryptographically true about the room, seal a Closing Passport:
Seal a passport
curl -X POST https://signsealship.com/api/rooms/3f8c1a9b2e4d5f60718293a4b5c6d7e8f9012345/passport \
  -H "Authorization: Bearer sss_pk_your_key_here"
Response
{
  "version": 1,
  "verifyCode": "b7e2c4a1d9f0e8b6a5c3d2e1f0a9b8c7",
  "verifyUrl": "/v/room/b7e2c4a1d9f0e8b6a5c3d2e1f0a9b8c7",
  "manifestSha256": "9d377b10ce778c4938b3c7e2c63a229a33884810d7743fbe4b5f2b7657b706da",
  "prevManifestSha256": null,
  "sealedSha256": "4f9a1c2b3d4e5f60718293a4b5c6d7e8f90123456789abcdef0123456789abcd",
  "createdAt": "2026-07-13T17:22:47Z"
}
Anyone can now verify the passport at https://signsealship.com/v/room/{verifyCode} — no account and no trust in SignSealShip required. Repeat calls mint new versions by design (each is a dated snapshot, chained to the last; quota 20 versions per room). See Closing Passport for how the manifest and hash chain work.
You created a room, attached orders, shared one live link with every party, and sealed a verifiable evidence manifest for the whole closing.

Next steps

Closing Rooms in depth

Bearer-link security, rotation, room lifecycle, and tier quotas.

Subscribe to webhooks

Get signed room.order_attached and room.passport_sealed events pushed to your systems.

Understand the evidence

What SEALED and RECORDED actually mean, and how to verify independently.

API reference

Full request and response shapes for every endpoint used above.