Resource Booking

Operations / Resource Booking โ Production view
Resource Booking gives your property team a real-time calendar of every bookable space and piece of equipment in your building. Review and approve tenant requests, create bookings on behalf of users, and manage your full resource inventory โ all in one place.
Overview
Navigate to HqO Admin > Operations > Resource Booking to access the module. The page opens on the Calendar tab, which displays all active resources in a scrollable timeline. Two additional tabs โ Requests and Resources โ give you a full view of booking requests and your resource inventory.
Tenants submit booking requests through the HqO mobile or web app. Depending on how each resource is configured, bookings may be auto-confirmed or held for admin approval.
๐ Permission required: Accessing Resource Booking requires Operations permissions in HqO Admin.
Calendar tab
The Calendar tab is your operational command center. Use it to see what's booked, what's available, and what needs attention.
Daily view
The default view shows all resources as rows in a scrollable 24-hour timeline. Resources can be reordered by dragging and dropping.
Controls:
- Use โ โ to navigate between days
- Filter by resource type using the category pills: All, Experts, Meeting Spaces, Microscopes, Wellness Spaces
- A red vertical line marks the current time
Booking block colors:
| Color | Status | Meaning |
|---|---|---|
| ๐ข Green | Accepted | Confirmed booking |
| ๐ Orange | Pending | Awaiting admin approval |
| โฌ Gray | Unavailable | Blocked โ no bookings allowed |
Click any booking block to open the booking detail panel. The panel shows the requester's name, the resource, date, start and end time, and current status. You can update the status using the dropdown at the top of the panel.
Monthly view
Switch to Monthly using the toggle in the top-right corner of the calendar. The monthly view shows a traditional week-based grid with green booking chips on each day. Days with more bookings than fit show a +N more link.
Use the Select resources dropdown to filter the monthly view to a specific resource.
Requests tab
The Requests tab (/resource-booking/schedule) shows every booking request across all resources in a sortable table.
Default filter: Upcoming bookings only. You can adjust filters to see past or all bookings.
Filters
| Filter | Options |
|---|---|
| Requested date range | Custom date range |
| Resource | Select a specific resource |
| Status | All, Pending, Approved, Declined, Cancelled |
Table columns
| Column | Description |
|---|---|
| Request submitted | Date the booking was submitted (sortable) |
| Resource | The space or equipment requested |
| Date & time | Booking date and time range (sortable) |
| Requester name | Tenant who made the request |
| Requester's email address | |
| Booking info | Additional notes submitted with the request |
| Status | Current status โ change inline using the dropdown |
| Price | Booking cost (sortable) |
| Payment | Payment status (e.g., Free, paid) |
Status options: Approved, Pending, Declined, Cancelled
Use Export .CSV to download the full list for reporting.
Resources tab
The Resources tab (/resource-booking/resources) shows your complete resource inventory as a card grid.
Each card displays:
- Photo of the space
- Resource name
- Capacity (maximum number of occupants)
- โฎ menu for edit and delete actions
- Combined badge for resources that combine multiple spaces, along with the count of component resources
Resource types
Resources are grouped into types when selecting or filtering. Common types include:
| Type | Examples |
|---|---|
| Large Conference Room | Boardroom, Conference Room |
| Small Conference Room | Small Conference Room |
| Roof Deck | Rooftop Terrace, Skyview Rooftop |
| Meeting Room | Meeting Room |
| Auditorium | Auditorium |
| Conference Hub | Central Conference Room, combined Theodore Rooms |
| Fitness Equipment | Pickleball Court, Sauna, Meditation Room |
| Lounge | The Theodore Lounge |
| Event Space | Multi-room combined spaces |
| Lab Equipment | Microscopes |
| Other | Custom resource types |
Core workflows
Book a resource on behalf of a tenant
- Go to HqO Admin > Operations > Resource Booking.
- Click Book resource (top-right).
- In the New Booking panel, fill in:
- Book on behalf of โ search by user name or email
- Resource โ select from the dropdown
- Date, Start Time, and End Time
- Optionally, add a booking note
- Choose a payment method for paid resources (availability depends on the user's and building's configuration):
- Credits โ deduct from the user's credit balance. Shows "Not available" if the user has no credits or the resource has no credit price; "Not enough credits" if the balance is insufficient.
- Invoice โ bill the tenant later. Shows "Not available" if invoicing isn't enabled for that tenant.
- Waive payment โ comp the booking at no charge (e.g., VIP guests or service recovery).
- Click Book resource. The booking is confirmed immediately.
Approve or decline a booking request
- Click the Requests tab.
- Find the booking request (use filters if needed).
- Click the Status dropdown on that row.
- Select Approved or Declined.
Alternatively, click a Pending booking block on the Calendar and update the status in the detail panel.
Add or edit a booking note
Booking notes are internal comments that keep your team aligned on a booking โ special requests, tenant preferences, setup requirements, or reminders (e.g., "Tenant got a promotion last week โ deliver coffee & pastries at 2 PM as congrats").
On a new booking:
- Click Book resource and fill in the booking details.
- Scroll to the Booking note field at the bottom of the form and enter your note.
- Save the booking.
On an existing or past booking:
- Click the booking on the Calendar to open the booking detail panel.
- Scroll to the Booking note section at the bottom.
- Click Add note to create a note, or edit the existing one, then click Save.
Things to know:
- Notes are internal only โ they are never visible to the end user who made the booking.
- Each booking has a single note field; everyone with resource booking permissions edits the same note, so the latest information is always in one place.
- Notes can be added or edited at any time โ before, during, or after the booking.
Create a collection
Collections group resources together for easier discovery in the tenant app.
- Click Create collection (top-right, on Calendar or Resources tab).
- Enter a Name โ choose something tenants will recognize.
- Toggle Show in product on to make it visible in the admin calendar, tenant web calendar, and booking filters.
- Select the resources to include, using Select all to quickly add a full resource type.
- Click Save.
Create a combined resource
Combined resources represent flexible spaces that can be divided or merged (e.g., two rooms with a movable wall bookable as one large space). The parent space automatically manages availability so no double bookings occur across connected rooms.
- On the Resources tab, open the create dropdown and select Create Combined Resource.
- Choose two or more existing spaces to combine โ create your smallest individual spaces first, then combine them.
- Select an existing resource to copy details from (photo, description, rules, and terms carry over).
- Update the name (e.g., "Conference and Collaboration Room") and type; capacity is calculated automatically.
- Save. Booking the combined space blocks its component rooms, and vice versa.
Create a new resource
- Go to the Resources tab.
- Click Create resource.
- Complete the Details tab:
- Upload a Resource image (PNG or JPG) โ the image cropper produces an 800 ร 512 px image (a 1.56:1 landscape ratio), so start from a photo at least that size. Smaller photos are enlarged and can look blurry; with a larger photo, you choose the area to keep. The cropped image is compressed before upload, so you don't need to reduce the original file size first.
- Enter the Resource name and optionally a subtitle, directions, and description
- Set the Resource type, Capacity, and Contact Email (for booking notifications)
- Add Terms & Conditions if required
- Check off available Amenities: TV/Projector, Phone, Wi-Fi, or custom
- Set Configuration Options:
- Auto-confirm all bookings โ skip the approval step
- Check in enabled โ require check-in on arrival. Users must check in within 30 minutes of the start time or the reservation is automatically released; reminders go out via push notification and email 15 minutes before and 25 minutes after the start time (timings aren't configurable). Check-in must also be enabled on the HqO integration (โ๏ธ icon > HqO integration).
- Visitor registration allowed โ allow guests to be registered for bookings
- Select the Buildings that can view and book this resource
- Click Next to configure Availability, Target audience, and User info fields. Availability rules support multi-day bookings, all-day bookings, minimum and maximum booking durations, buffers between bookings, and blackout dates.
- Click Create to publish the resource.
๐ก Tip: Paid resources can only be shared across buildings that have payments enabled.
Settings
Click the โ๏ธ gear icon next to the "Resource Booking" page title to access app-level settings.
Integrations tab
| Setting | Description |
|---|---|
| Active integrations | Lists all enabled integrations with a remove option |
| Add integration | Connect a new integration (e.g., calendar sync) |
Display options (HqO integration)
Instance-level settings that shape the tenant booking experience:
| Setting | Description |
|---|---|
| Default filter | Whether tenants browse resources by Resource Type or by Capacity by default |
| Sort floors on | Order floors by Floor level or Floor name |
| Available Now | Show currently available resources in an "Available Now" section on the booking landing page (otherwise tenants search by date and time) |
| Multi-day booking | Let tenants book a resource across multiple days โ available for free resources only |
| Compact UI | Minimal interface showing only key information |
| "All day" toggle | Shortcut for tenants to search and book resources available for the entire day |
App visuals tab
| Setting | Description |
|---|---|
| Location title | The name displayed in the tenant app for this location |
| Hide location in tenant app | Hides this building from the app's resource booking interface while still allowing bookings by users from other buildings |
Payments
Resource Booking supports two payment models. You can enable either or both at the same time.
Credit card payments
Instant payment at booking time, deposited into a connected Stripe account.
Setup:
- Go to Resource Booking > Settings.
- Toggle Paid Resources to On.
- Select Credit Card Payments.
- Connect your Stripe account. Contact your HqO account team if you need help linking an existing Stripe account.
Tenant experience:
- Tenants enter and save a credit card during booking.
- The card is charged immediately at the time of reservation.
- Cancellations within the allowed window trigger an automatic refund.
- Cancellations outside the window require a manual refund through Stripe.
Account-based payments
Deferred payment managed by your property team โ via rent statements, invoices, or other processes.
Setup:
- Go to Resource Booking > Settings.
- Toggle Paid Resources to On.
- Select Account-Based Payments.
- Add the tenant companies allowed to pay via invoice.
Tenant experience:
- During checkout, eligible tenants can select Invoice as the payment method.
- Your property team collects payment separately (rent statements, checks, etc.).
Tracking payments:
- Transactions tab โ shows completed account-based bookings, exportable to CSV for billing.
- Requests tab โ shows all bookings including upcoming ones, for operational management.
Automated emails
HqO automatically sends email notifications at key points in the booking lifecycle:
| Trigger | Recipient | |
|---|---|---|
| Booking Confirmation | Admin confirms a pending booking, or resource is set to auto-confirm | Tenant |
| Booking Requested | Tenant submits a booking request | Admin |
| Booking Requested | Tenant submits a booking request | Tenant (confirmation of T&Cs) |
| Booking Denied | Admin denies a request | Tenant |
| Booking Cancelled | Tenant cancels their booking | Tenant + Admin |
| Check-In Notification | Resource requires check-in and booking time is approaching | Tenant |
For select real-time events โ booking request approvals and denials โ a push notification is also sent to the HqO mobile app. Push notifications show an abbreviated title and message rather than the full email content.
Turning off automated emails:
- Go to the Resource Booking home page.
- Click the โ๏ธ settings gear.
- Open the HqO integration settings.
- Check Do not send HqO booking email notifications.
- Click Save.
Email branding: Customize resource booking emails with your property's logo and colors:
- Go to Resource Booking Settings.
- Under HqO integration settings, select Email Templates.
- Upload your logo and set your primary and secondary brand colors.
- Set your Send-from domain and Reply-to address.
- Click Save. All future booking emails reflect your branding.
Cancellation policy
Configure per-resource cancellation rules to control when and how tenants can cancel bookings.
Setup:
- Open the resource you want to configure in the Resources tab.
- Go to the Availability tab.
- Toggle on Cancellation policy.
Step 1 โ Set the late cancellation window Enter a time value and unit (Minutes, Hours, or Days). Anything cancelled within this window is treated as a late cancellation.
Step 2 โ Choose late cancellation behavior:
| Option | What happens |
|---|---|
| Allow late cancellations | Tenant can still cancel but itโs marked late. Set a refund % (0 = no refund, 100 = full refund). |
| No late cancellations | Cancel button is disabled once inside the window. |
Step 3 โ Allow cancellations after booking starts (optional) Toggle on and set a refund percentage for cancellations made after the booking start time.
Step 4 โ Add a cancellation message (optional) Enter a message shown to tenants when viewing or attempting to cancel a booking.
Things to know:
- Policy applies per resource โ different spaces can have different rules.
- Refund amounts are percentages; only applies to paid resources.
- Admins can always cancel on behalf of tenants regardless of policy, with the option to waive the cancellation penalty.
- Policy changes apply to new bookings only โ existing bookings are not affected.
- Tenants see the policy terms before confirming a booking, and the custom message (if set) appears when they view or attempt a cancellation.
Kiosk mode
Kiosk mode displays a dedicated booking interface on a touchscreen tablet in your building โ no app download or sign-in required. Tenants see real-time availability and can make instant reservations on the spot.
Set up a single-resource kiosk
- Go to Resource Booking and open the resource you want to display.
- Open the resource's Kiosk tab and configure the settings:
| Setting | Description |
|---|---|
| Read-only mode | Display availability only โ no booking from the kiosk |
| Show user name/company | Display who made each booking |
| Show QR code | Show a QR code tenants can scan to book via the app or web |
| Require user identification | Ask tenants to identify themselves before booking |
- Save your changes.
- Click the Kiosk button (top right) to launch the kiosk or copy its URL to the device.
Set up a collection kiosk
Display several resources on one kiosk by using a collection:
- Enable kiosk mode on each individual resource first โ a resource must have kiosk mode enabled before it can be added to a kiosk collection.
- Create or edit a collection and toggle Enable kiosk mode on.
- Select the resources to include and save the collection.
- Open Manage Collections to copy or open the collection's kiosk URL.
Deploy on a tablet
iPad (Guided Access):
- Open the kiosk URL in Safari and use the Share menu to add it to the Home Screen.
- Enable Guided Access under Settings > Accessibility and set a passcode (Face ID/Touch ID also supported).
- Open the kiosk from the Home Screen and triple-click the Side/Home button to start the Guided Access session. Circle any screen zones you want to disable.
- To exit, triple-click again and authenticate.
Android tablet (screen pinning):
- Enable Screen Pinning under Settings > Security.
- Create a Chrome home screen shortcut for the kiosk URL.
- Launch the shortcut, open Recent Apps, tap and hold the app card, and select Pin.
- To exit, press Back + Recent Apps simultaneously and enter the PIN.
For permanent installations, consider a device owner / dedicated kiosk-mode setup instead.
Compatible hardware:
| Category | Devices |
|---|---|
| Apple | iPad (standard), iPad Mini, iPad Air |
| Samsung | Galaxy Tab A8, Tab A9/A9+, Tab S9/S10, Tab S9 FE/S10 FE, Tab Active series (8") |
| Enterprise displays | Elo Touch Solutions, CDS (Commercial Display Systems) |
Wall and stand mounts are available from Maclocks, Armodilo, VidaBox, and Mount-it.
Things to know:
- Kiosk bookings are attributed to the user who generated the kiosk URL. Create a dedicated kiosk user account so bookings aren't tied to a personal admin account.
- Paid resources display as read-only on the kiosk โ tenants complete paid bookings in the app or on the web.
- Tripleseat resources are also read-only on the kiosk.
- Availability on the kiosk refreshes in real time.
Outlook / Microsoft 365 integrations
Resource Booking connects to Microsoft 365 in two ways: Outlook calendar sync and the Microsoft Exchange integration. Both need a room calendar in Outlook for each resource. Both show the resource in HqO and keep availability in sync between HqO and Outlook.
Both are set up from the Resource Booking settings in HqO Admin. They differ in how people book the room from Outlook and how you connect. Outlook calendar sync uses a Microsoft sign-in. The Exchange integration uses app credentials from your IT team, which makes it the better fit for corporate tenants.
- Outlook calendar sync. Each resource has its own calendar. To book from Outlook, people open that room's calendar in Outlook and add an event to it directly. You create and manage the resources in HqO Admin. A building admin connects once with a Microsoft 365 account, ideally a dedicated service account, and no app registration is needed.
- Microsoft Exchange integration. Each resource is an Exchange room mailbox. To book from Outlook, people add the room to a meeting invite, the same way they'd invite a person. Your IT team manages the rooms in Exchange and registers an app in Microsoft Entra ID. Users sign in to HqO with Microsoft SSO.
| Outlook calendar sync | Microsoft Exchange integration | |
|---|---|---|
| Best for | Spaces managed by the property team, such as amenity rooms, landlord meeting rooms and flex space | Corporate occupiers whose employees already book rooms from Outlook meeting invites |
| Each resource needs | Its own Outlook calendar, shared with the connected account | Its own Exchange room mailbox |
| Booking from Outlook | Open the room's calendar and add an event to it | Add the room to a meeting invite |
| Booking from HqO | Creates an event on the room's calendar | Creates a meeting with the room on the user's calendar |
| How resources get into HqO | Create them in HqO Admin, then map each one to a calendar | Import them from your Exchange tenant; HqO creates the resources |
| Who sets it up | A building admin, often with IT | IT registers the app; a building admin connects it and imports rooms |
| Microsoft access | Delegated: one Microsoft 365 account and the calendars it can see | Application access with tenant-wide admin consent |
| End-user sign-in | Any HqO login | Microsoft SSO required for bookings to reach Outlook |
| Room details | Managed in HqO: photos, amenities, capacity, rules | Name and capacity come from Exchange; add photos, a description and a type in HqO; booking rules stay on the mailbox |
| Paid resources | Supported; payment isn't collected for bookings made in Outlook | Not supported |
| How you connect | โ๏ธ > HqO > Calendar sync: click Connect, sign in with Microsoft and approve access | โ๏ธ > Integrations > Add integration > Microsoft Exchange: enter the Tenant ID, Client ID and client secret |
โ ๏ธ Note: Choose before you configure. Switching a building from one integration to the other means setting up its rooms again.
โน๏ธ Outlook Visitor Invitations is a separate feature in Visitor Management. It turns meeting invites into visitor records and isn't part of Resource Booking.
Outlook calendar sync
Outlook calendar sync keeps availability accurate in both HqO and Outlook. A booking made in HqO creates an event on the mapped Outlook calendar. An event created in Outlook blocks that time in HqO. Cancelling on either side cancels on the other. The integration uses the Microsoft Graph API with OAuth 2.0 delegated permissions, so HqO never sees your Microsoft credentials.
โ ๏ธ Note: Paid resources can be synced with Outlook, but payment isn't collected for bookings made in Outlook.
Prerequisites:
- An active Microsoft 365 account (Business, Enterprise or Education plan, with Exchange/Outlook).
- Building Admin access in HqO Admin. If the person with Outlook access, often IT, doesn't have an HqO account yet, invite them first under Admin > Users > Invite User.
- Read/write access to the Outlook calendars you plan to map. The calendars must exist in Outlook before you map them.
- If your Microsoft 365 tenant requires admin consent for third-party apps, a Microsoft 365 Global Admin or Application Admin approves the HqO app first, under Enterprise Applications in the Microsoft Entra admin center.
- Network access to
https://graph.microsoft.com.
Supported calendars include calendars owned by the connected account, calendars created for a resource (e.g., "Board Room 4A"), and calendars shared with that account. Don't use the account's primary calendar.
Requested Microsoft Graph scopes (delegated):
| Scope | Used for |
|---|---|
Calendars.ReadWrite | Reading availability and creating, updating and cancelling events |
Calendars.ReadWrite.Shared | Managing events on calendars shared with the connected account |
User.Read | Identifying the connected account |
offline_access | Keeping the connection active without signing in again |
Setup:
- Create resource calendars in Outlook if they don't exist yet. Right-click My Calendars > Add calendar and name each calendar after its physical resource. Share them with the person who will do the mapping.
- Connect Microsoft 365 in HqO. Open Resource Booking and click the โ๏ธ gear icon next to the page title. Go to HqO > Calendar sync and click Connect on the Microsoft 365 tile. Sign in with the account that has access to the resource calendars, then approve the requested permissions. The tile shows the connected email and a Connected status.
- Map resources to calendars. In the resource sync section, use the dropdowns to pair each HqO resource with its Outlook calendar. Resources marked Not synced aren't mapped yet. Click Save.
- Validate. Create a test booking in HqO and check it appears in Outlook. Create a test event in Outlook and check the slot shows as unavailable in HqO. Cancel the test event and confirm it clears in both systems.
- Go live. Keep resources hidden in HqO until validation passes, then make them visible to tenants.
How bookings are attributed: when someone books directly in Outlook, HqO matches the organizer's email to an HqO user in the building. If there's no match, HqO tries to match the email domain to a single company in the building. If that fails too, the booking is assigned to the building's default user. Invite users to HqO to keep attribution accurate.
Security and access scoping:
- OAuth 2.0 authorization code flow, with short-lived tokens that are encrypted at rest, and TLS 1.2+ in transit.
- HqO can only reach calendars visible to the connected account, and it only uses the calendars you explicitly map.
- Recommended: connect a dedicated service account (e.g.,
hqo-integration@yourcompany.com) that has only the resource calendars shared with it, not a personal admin account. - If the connected account's consent is revoked or its password is reset, sync pauses. Reconnect under Calendar sync to resume.
- Activity is covered by HqO's internal audit logging and by your Microsoft Purview audit trail.
Limitations:
- Microsoft 365 group calendars and automatic room mailbox discovery aren't supported. For room mailboxes, use the Microsoft Exchange integration.
Microsoft Exchange integration (room mailboxes)
The Microsoft Exchange integration shows your organization's Exchange room mailboxes in the HqO app, so employees can book the same rooms they add to Outlook meeting invites. Rooms are managed in Exchange. A booking made in HqO appears on the room's Outlook calendar, and an Outlook booking appears under My Bookings in HqO. Cancelling on either side cancels on the other. HqO connects through an app your IT team registers in Microsoft Entra ID, and a building admin then picks which rooms to import.
Prerequisites:
- Microsoft 365 with Exchange Online, and every bookable room set up as an Exchange room mailbox with its own email address.
- A Microsoft 365 Global Administrator or Privileged Role Administrator to grant tenant-wide admin consent for the Microsoft Graph application permissions.
- Microsoft OpenID Connect (OIDC) SSO for HqO. SAML SSO alone does not provide the Microsoft token this integration needs. Users must sign in to HqO through Microsoft OIDC for their bookings to reach Outlook. Contact your HqO team to enable SSO for your email domains.
- Every person who books has a Microsoft 365 mailbox, and an HqO account with the same email address.
- At least one test user account to check the setup.
Requested Microsoft Graph permissions:
| Permission | Type | Used for |
|---|---|---|
Calendars.ReadWrite | Application | Reading room availability and managing room bookings |
Place.Read.All | Application | Listing your room mailboxes and their capacity and details |
User.Read.All | Application | Reading room and user details |
Group.Read.All | Application | Checking group membership used by room booking permissions |
MailboxSettings.Read | Application | Reading each room's working hours |
Calendars.ReadWrite | Delegated | Creating and cancelling bookings as the signed-in user |
User.Read | Delegated | Identifying the signed-in user |
openid | Delegated | Signing users in to HqO with Microsoft SSO |
email | Delegated | Matching the Microsoft account to the HqO user by email |
profile | Delegated | Reading the user's name at sign-in |
offline_access | Delegated | Keeping users signed in without re-entering credentials |
Redirect URIs (use the values for your HqO region):
| Platform | North America | Europe |
|---|---|---|
| Web โ HqO app | https://www.hqoapp.com/api/sso/v1/callback/oidc | https://ffm.hqoapp.com/api/sso/v1/callback/oidc |
| Web โ HqO Admin | https://gohqo.co/login/callback | https://ffm.gohqo.co/login/callback |
| Web โ Tenant web app | https://[your-tenant-web].hqo.co/login/callback | https://[your-tenant-web].ffm.hqo.co/login/callback |
| iOS / macOS bundle ID | com.hqoapp.www | ffm.hqoapp.com |
Replace [your-tenant-web] with the tenant web subdomain provided by HqO, without brackets. For example, use https://acme.hqo.co/login/callback in North America or https://acme.ffm.hqo.co/login/callback in Europe.
Android works without a redirect URI.
Setup โ your IT team, in Microsoft 365:
- Create a room mailbox for each resource in the Exchange admin center. Each room or desk needs its own room mailbox with a unique email address. Set the capacity and available hours on each one. See Microsoft's guide to managing resource mailboxes.
- Register an app in the Microsoft Entra admin center under App registrations > New registration. For supported account types, we recommend Accounts in any organizational directory (Multitenant). Leave the redirect URI blank for now. Note the Tenant ID on the directory overview page.
- Add redirect URIs. Under Authentication > Add a platform, choose Web and add the web redirect URIs above for your region. Click Save. Then add an iOS / macOS platform with the bundle ID for your region.
- Add the permissions. Under API permissions > Add a permission > Microsoft Graph, add the application permissions above, then the delegated permissions. Click Grant admin consent.
- Add optional claims. Under Token configuration > Add optional claim, choose ID and select
email,family_nameandgiven_name. - Create a client secret under Certificates & secrets. Copy the secret value and note its expiry date.
- Share the app details with the HqO admin setting up the integration: the Tenant ID, the Application (Client) ID and the client secret value.
Setup โ a building admin, in HqO Admin:
- Connect the integration. Open Resource Booking, click the โ๏ธ gear icon, go to the Integrations tab and click Add integration. Select Microsoft Exchange, enter the Tenant ID, Client ID and client secret, and save.
- Import rooms. HqO lists the room mailboxes in your tenant. Select only the rooms you want to offer at this building and import them. HqO creates a resource for each one, so you don't need to create resources first.
- Finish each resource. Rename it if needed, and add images, a description and a resource type. Imported resources appear alongside your native HqO resources.
- Validate. Sign in to the HqO app with Microsoft SSO as a test user. Check that the expected rooms appear. Book a room in HqO and confirm the meeting appears in Outlook. Add the room to an Outlook meeting invite and confirm the booking appears under My Bookings. Cancel on each side and confirm it clears on the other.
- Go live. Once testing is signed off, make the rooms visible to all users.
Security and access scoping:
- HqO stores the tenant ID, client ID and client secret encrypted, and calls Microsoft Graph over TLS 1.2+.
- The
Calendars.ReadWriteapplication permission can read and change calendars across all mailboxes in the tenant by default. Importing only selected rooms limits which rooms HqO displays and books, but doesn't narrow the app registration's Microsoft Graph access. - Review this access with your security team before you grant admin consent. HqO checks room availability through the signed-in user's mailbox as well as the room mailbox, so limiting the app to room mailboxes only (for example, with Exchange Online RBAC for Applications) can stop availability from loading. Contact your HqO team before you restrict the app's mailbox access.
- Bookings are made with the signed-in user's own Microsoft token, so Exchange applies that user's booking permissions.
- Booking windows, approvals and who can book are managed on each room mailbox in Exchange, not in HqO Admin.
- When the client secret expires, the integration stops working. Rotate the secret before it expires and update it in the integration settings.
Limitations:
- Users who don't sign in with Microsoft SSO, or who have no Microsoft 365 mailbox, can't complete an Exchange room booking because HqO needs the signed-in user's Microsoft token. Make sure everyone who books Exchange rooms signs in with SSO.
- Exchange doesn't separate rooms from desks. Set the resource type in HqO after importing.
- Availability refreshes about every 15 minutes. Changes to rooms in Exchange, such as a new room or updated capacity, can take up to 24 hours to reach HqO because of caching.
- Conditional Access policies, MFA rules or location restrictions in your Microsoft 365 tenant can block sign-in or bookings from the HqO app. If testing fails, ask your IT team to check the Entra sign-in logs for the test users.
- On the Outlook calendar, the meeting subject uses the HqO booking name and the booking shows as Busy.
Tripleseat integration
Connect HqO Resource Booking to your Tripleseat account so Tripleseat-managed event spaces appear alongside your standard HqO resources with real-time availability. Tenants browse availability in HqO and click Book to open your Tripleseat lead form; the request is then managed entirely within Tripleseat.
How it works:
- Availability syncs in real time โ Tripleseat events automatically block calendar slots in HqO.
- After a tenant submits the lead form, a confirmation message (configured in Tripleseat) is shown.
- Admins cannot book Tripleseat resources on behalf of users โ the admin calendar view for these resources is intentionally disabled.
- Slots only block once a lead is converted to an event in Tripleseat, so multiple tenants can submit leads for the same time before the slot blocks.
- Tenants can request times outside the displayed availability windows, since booking happens via the lead form.
Prerequisite: Native HqO Resource Booking must be activated first.
Setup:
- Activate in HqO Admin. Go to Resource Booking > Settings, activate the Tripleseat integration, and copy the Redirect URI shown.
- Create an OAuth application in Tripleseat. In Tripleseat, go to Settings > Tripleseat API & Webhook Details > OAuth 2.0 Client Applications and create an application:
- Name: HQO Integration
- Description:
HQO <-> Tripleseat integration for resource/event booking synchronization - Information URL:
https://www.hqo.com - Redirect URI: the URI copied from step 1
- Write permissions: Events, Bookings, Tasks, Documents
- Read permissions: Leads, Contacts, Accounts, Payments, Users, Locations, Notes, Guest Room Blocks, Menus, Menu Items, Menu Updates, Webhooks, Payment Reports, PMS, Sites
- Create a webhook in Tripleseat pointing to
https://webhooks-service.use1.hqo-production.com/webhooks/events/tripleseat/event, with these permissions enabled:- Event actions: Create Event, Delete Event, Update Event, Reassign Event Location, Status Change Event, Change Event Datetime
- Room actions: Update Room, Delete Room
- Complete activation in HqO. Copy the UID and Secret from the Tripleseat OAuth application into the HqO activation form, then approve the authorization when redirected to Tripleseat.
- Configure and import resources. Select the default location, enter the Lead Form URL, and choose the resources to import โ optionally adjusting each Display Name and Resource Type โ then click Import. After import, configure each resource's images, descriptions, sharing, availability, and kiosk mode as usual.
๐ก Tip: A Tripleseat resource can only be imported to one building.
Floor plan booking
Tenants can also book desks and meeting rooms directly from a floor plan โ viewing availability for a chosen date and time, selecting a resource on the plan, and completing the booking flow. This reduces confusion about resource location and availability.
- Floor plans must be clearly labeled, one floor per page, provided as PDF.
- Supported with HqO Built-In Resource Booking, Microsoft Exchange, and Nexudus integrations.
- Contact your HqO team to enable floor plans or update an existing plan.
Parking
Parking spots are booked through Resource Booking โ tenants view and book available spots in the app, see upcoming reservations, and cancel them; your team creates and manages the spots in Admin.
- Create (or use) an HqO Resource Booking instance for the building.
- Add a resource with Resource Type: Parking Spot and fill in the required fields.
- Choose the acceptance mode: reservation requests can be automatically accepted or require manual approval by an admin.
- Optionally set a notification email to receive an alert whenever a new reservation is submitted.
Booking requests can be viewed and exported from Admin with details like submission date, resource name, and request status.
FAQ
Do tenants need approval for every booking? Not necessarily. Per resource, you can enable Auto-confirm all bookings in the resource's Configuration Options. When enabled, bookings are confirmed immediately without admin review.
How do tenants make a booking? Tenants open the HqO mobile or web app, browse available resources, and select a time slot. The request appears in your Requests tab (and as a Pending block on the Calendar) until approved or auto-confirmed.
Can I see who booked a specific resource? Yes. Click any booking block on the Calendar to see the requester's name, email, and booking details in the side panel. The Requests tab shows all bookings in a searchable, sortable table.
What does the "Combined" badge mean on a resource? Combined resources are made up of two or more individual spaces that can be booked together (e.g., The Theodore Room - Part I + Part II = The Theodore Room - Combined). The badge shows how many component resources are included.
Can I export booking data? Yes. On the Requests tab, click Export .CSV to download all booking data for the current filter view.
What's the difference between a resource type and a collection? Resource types are system categories set when you create a resource (e.g., Auditorium, Fitness Equipment). Collections are custom groups you create to organize resources for tenant discovery in the app โ for example, "Executive Floor" might include multiple conference rooms from different categories.
Which Outlook integration should I use? If your rooms are Exchange room mailboxes that employees add to meeting invites, use the Microsoft Exchange integration. If the property team manages the spaces in HqO and each room has its own calendar that people open in Outlook, use Outlook calendar sync.
Does Outlook calendar sync need tenant-wide admin consent? No, unless your tenant blocks users from consenting to third-party apps. It uses delegated permissions for one account and only the calendars you map.
Can HqO see every calendar in our tenant?
With Outlook calendar sync, no. HqO only reaches calendars visible to the connected account, and only uses the ones you map. With the Microsoft Exchange integration, the Calendars.ReadWrite application permission can access calendars across all mailboxes by default. HqO only displays and books the rooms an admin imports, but selecting rooms during import doesn't narrow the app registration's Microsoft Graph access.
Why can't a user complete an Exchange room booking? The user may not have signed in to HqO with Microsoft SSO, or their Microsoft account may not have a mailbox. Ask them to sign out and sign back in with their Microsoft account. For Outlook calendar sync issues, check that the connection still shows Connected.
I added a new room in Exchange. Why isn't it in HqO? New room mailboxes aren't added automatically. Open the Microsoft Exchange integration in Resource Booking settings and import the new room. A new mailbox can take up to 24 hours to appear in the import list.
Can I switch from one Outlook integration to the other later? Yes, but the rooms need to be set up again, and existing mappings don't carry over. Choose before you go live.
Need help?
Contact your HqO account team or email appsupport@hqo.co.