Tables can be booked in a number of different ways, each having their own use case. Tables come in 3 flavors:
Book by seat
Book by table
Variable occupancy tables
You can choose the table type from Designer.
Book By Seat
Tables that are book-by-seat are normal tables. Ticket buyers can select and book individual seats.
Each seat has a specific label (e.g. Table A-1
, Table A-2
, etc), which are used when booking the seats (just like you would book seats in rows):
{
"objects": ["Table A-1", "Table A-2"]
}
Booking a seat at a book-by-seat does not make the rest of the table seats unavailable, so multiple groups can sit at the same table.
Book By Table
Tables that are book-by-table can only be booked as a whole. Ticket buyers can only select and book the whole table in one go.
When booking, it's the table itself that gets booked, so you'll use the table label when when issuing the API call to book it:
{
"objects": ["Table A"]
}
Since you're booking the table itself, the table becomes unavailable once booked.
Variable Occupancy Tables
Variable occupancy tables are tables on which ticket buyers can select a number of places, rather than specific seats. You can limit the selection to a range between a minimum occupancy value, and the maximum which is the number of places at the table.
โ
For instance, on this table, ticket buyers can select between 3 and 6 places:
When booking any number of places on a variable occupancy table, the table becomes unavailable for other ticket buyers.
This allows for a one-group-per-table setup, like for example in restaurants.
When booking places on a variable occupancy table, you pass in the table label a number of times, i.e. the number of places you want to book:
{
"objects": ["Table A", "Table A", "Table A"]
}
Or using a quantity:
{
"objects": [
{"objectId": "Table A", "quantity": 3}
]
}
Note: functionally speaking, variable occupancy tables behave in much the same way as variable occupancy areas. They just look like tables with seats instead.