Reservations and packets
One booking. Four guests, two of them children. A rental agreement, house rules and a hot-tub waiver. One link, and one state your system can wait on.
Import the reservation
PUT /v1/subjects is keyed on (provider, external_id),
so it is safe to call on every webhook from your PMS. Send the guest list with
it and the packet is built in the same call.
{
"provider": "ownerrez",
"external_id": "RES-88213",
"label": "River Bend Cabin, 3–7 Oct",
"starts_on": "2026-10-03",
"facts": { "adults": 2, "minors": 2, "pets": 1, "amenities": ["hot_tub"] },
"participants": [
{ "ref": "a1", "full_name": "Dana Reyes", "email": "dana@example.com", "is_primary": true },
{ "ref": "c1", "full_name": "Sam Reyes", "date_of_birth": "2014-06-02", "guardian_ref": "a1" }
]
}
SignSealer is not a booking system. No availability, no rates, no calendar. A subject is a thin shadow of your record, and it stays that way on purpose: the day we grow a booking engine we start competing with the platforms this integrates with.
What each guest owes
A requirement answers whether a document is needed,
from the facts — a property with a hot tub needs the hot-tub waiver.
applies_to answers who owes it: the primary guest, every
adult, or a guardian for each minor. Two questions, kept apart, because folding
them together is how a rules engine becomes a programming language nobody can
debug.
Minors
Minority is judged on the arrival date, not the signing date. A seventeen-year-old booking for the week of their eighteenth birthday is still a minor when they get on the water. A blank date of birth is refused rather than read as an adult — that is the one wrong answer, and it files a child as an adult with nobody's signature behind them.
Readiness
A packet reports counts as well as a state, so a dashboard can say "3 of 5"
and a door lock can wait on ready without either of them guessing
what "partially complete" meant. A decline makes the packet
blocked, not "still waiting" — somebody already answered.
Subscribe to packet.ready and it fires the moment the last
required document completes. Not on a sweep: "ready ten minutes after the guest
finished" is a guest standing outside a locked door.
Ready to build? An API key takes a minute in the portal, and the free plan covers the first 25 agreements a month.
Get an API key