Skip to content

Floor plan — read

List the brand’s floor plans with their dining areas. Use `get_floor_plan` for the full table layout.

Required scope: floor-plan.read

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.

Fetch a single floor plan with all tables (name, shape, party bounds, dining area). Pass `floorPlanId` from `list_floor_plans`.

Required scope: floor-plan.read

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.
floorPlanId string yes

Flatten all tables across the brand’s floor plans into a single list — id, name, shape, party bounds, owning floor plan and dining area.

Required scope: floor-plan.read

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.

List active or upcoming table blocks for the brand within a time window. Defaults to the next 24 hours.

Required scope: floor-plan.read

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.
fromMs number no
toMs number no

Block a single table for a time window with an optional reason. The FOH conflict engine treats blocks as occupied — assign attempts during the block window are rejected. `floorPlanId` is optional; if omitted we look up which floor plan the table belongs to. `startMs`/`endMs` default to “now → +2h” if omitted.

Required scope: floor-plan.write

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.
tableId string yes Table ID from list_tables.
floorPlanId string no Optional. Auto-resolved from `tableId` when omitted; pass explicitly only if you already have it from a prior list_floor_plans call.
startMs number no Block start (Unix ms). Defaults to now.
endMs number no Block end (Unix ms). Defaults to now + 2 hours.
reason string no
idempotencyKey string no

Remove a previously created table block by id.

Required scope: floor-plan.write

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.
blockId string yes

Snapshot of the brand right now: counts of active reservations by status (confirmed / pending_confirmation / arrived / seated), table block count, total tables. Use as a quick health check before staff hand-off.

Required scope: floor-plan.read

Parameter Type Required Description
brand string no Brand slug. Optional in JWT mode (auto-resolved from session); required in API-key mode when key grants multiple brands — call list_brands to see them.