Skip to content

Keyboard shortcuts & navigation

The rail on the left lists hubs (Home, Properties, Inbox, Calendar, Pricing, Reservations, Guests, Operations, Channels, Automation, Finance, Reports, Partners, Support, Audit, Billing, Setup). A hub opens its first page and shows its other pages as a tab bar across the top. A hub you can open only one page of opens straight to it. Which hubs and pages you see follows your role - see Roles and the shape of your app.

One chord, everywhere in the app (in these docs, the same keys open the docs search). The palette jumps to any page, named tab or workspace setting your seat can reach.

Keys Does
Ctrl+K / ⌘K Open the palette (also via Search & jump… at the top of the rail)
↑ / ↓ Move through results
Home / End Jump to the first / last result
Enter Open the selected page, tab or setting
Esc Close

How the search behaves - worth knowing, because it rewards lazy typing:

  • Empty query lists your pages hub by hub - the palette opens as a jump list of your own rail. Tabs appear once you type.
  • Every word must match. “settings approvals” narrows to one row rather than returning everything mentioning either word.
  • Fuzzy is fine. Subsequences match (“brk” finds Monthly Break-even), exact and prefix matches rank higher, and shorter names win ties. A page outranks its identically-named tab (the Approvals page beats Settings’ Approvals tab).
  • Settings rows by name. For a seat that can open Settings, each Operations row (“Default check-out time”, “Listing hold (minutes)”, “Inspection after cleaning”…) is a result of its own and opens on that row. “Guest cash needs a second approval” opens the Approvals tab, and “Send rule prices to channels” opens Price rules.
  • It never widens what you can see. The index is built from your own rail - a page your role lacks is absent from search too. A page your plan hasn’t unlocked shows locked and Enter takes you to Billing instead; locked pages contribute no tab rows.
  • At most 12 rows show; refine the query rather than scrolling.

Seven pages have named tabs, and each is deep-linkable by appending ?tab=<id> to the page’s URL - the same links the palette produces. These are shareable and bookmarkable.

Page Tabs (id → label)
/approvals pending → Pending · decided → Decided
/agents (Agent Hub) agents → Built-in · authored → Your automations · auto-responses → Auto-responses · coming-soon → Coming soon · runs → Run history
/breakeven (ROI) actuals → Actuals · forecast → Forecast calculator
/housekeeping cleaning → Cleaning · inspections → Inspections · damage → Damage · upcoming → Upcoming
/reservations inquiries → Inquiries · bookings → Bookings · past-stays → Past stays · extensions → Extensions
/settings general → General · operations → Operations · payments → Payment channels · approvals → Approvals
/site (Booking website) general → General · design → Design · properties → Properties · pages → Pages · collections → Collections · rooms → Rooms · promos → Promo codes · translations → Translations · metrics → Metrics

Example: /settings?tab=approvals opens Settings on the Approvals tab, and /reservations?tab=past-stays opens Reservations on Past stays.

Two forgiving behaviors:

  • A page may render fewer tabs than it registers. Housekeeping shows Inspections, Damage, and Upcoming only when there’s something on them (and only to seats that may see them). A ?tab= value the page isn’t currently rendering falls back to that seat’s own opening tab - never a blank page.
  • An unknown or misspelled value falls back the same way.

The old addresses still work: /inquiries, /bookings, /past-stays and /extensions open the matching Reservations tab, /settings?tab=whatsapp opens Channels → WhatsApp, and /bank-accounts opens Treasury’s Property bank accounts dialog.

On Calendar, the night cells form one grid you can drive from the keyboard. Tab into it once; the grid keeps a single stop, so Tab again leaves it.

Keys Does
← / → Previous / next night on the same unit
↑ / ↓ The same night on the unit above / below
Home / End First / last night in view on that unit
Enter or Space Select a night; press again on another night to select the range between them (across several units too) and open the selection sheet
F2 Edit that night’s price in place
Esc Cancel a half-made selection

A screen reader hears each cell’s unit, night and price, the same as the eye reads them.

A reservation’s record has sections too (Payments, Access, Screening, Messages, History and so on), but they exist once per record - those deep-link by path, /reservations/<id>/<section>, which is the form notifications use, rather than by ?tab=.