clave docs

Bookings

Read Bookings for what a seat and a hold are.

What a site takes bookings for

Call What it does
POST /v1/sites/{id}/bookable declares what the site takes bookings for
GET /v1/sites/{id}/bookable reads it back
DELETE /v1/sites/{id}/bookable stops taking bookings

A bookable carries its calendars, each with a capacity and an IANA time zone, and a notify_to address.

notify_to takes the same rule a form takes: an address on the account.

DELETE needs ?confirm=true. A calendar is archived rather than deleted, because the rows it holds are receipts.

What visitors booked

Call What it does
GET /v1/sites/{id}/bookings the site's bookings
GET /v1/bookings/{id} one booking
POST /v1/bookings/{id}/cancel cancels it and frees the seat

Clave keeps a hash of the visitor's address, not the address.

The visitor's own door

A visitor books from the site's page, with no token:

Call What it does
POST /b/{public_id} takes a booking
GET /b/{public_id} what this site takes bookings for
GET /b/{public_id}/days which days have room
GET /b/{public_id}/slots which times have room

Those four are for the site's own HTML. An agent uses the /v1 calls above.