Smart Door Access with Brivo
What Brivo Does
Brivo is a cloud-based access control platform. When connected to Co-Desk, it automatically manages who can open which doors and when:
- Bookings — members get time-bound door access for the duration of their booking
- Plans / Subscriptions — members get ongoing access while their subscription is active
- Manual grants — admins can give any member access to any door, with optional start and end dates
Members can unlock doors from the My Keys page in the Member Portal.
Prerequisites
- An active Brivo account with your access points and groups already configured in the Brivo dashboard
- Brivo API credentials: Client ID, Client Secret, and API Key — obtained from the Brivo Developer Portal
Step 1 — Connect Brivo
- Go to Settings > Integrations
- Click Add next to Brivo Access Control
- Click the + button to assign it to your location(s) (if you have only one location, it is assigned automatically)
- Click Settings to open the configuration modal
- Enter your Client ID, Client Secret, and API Key
- Click Test Connection to verify the credentials work — you should see a green checkmark with your site information
- Click Save
If the test shows an error, verify your credentials in the Brivo Developer Portal. Ensure the API application has the required scopes for access points, groups, and users.
Step 2 — Map Doors
Door mappings tell Co-Desk which Brivo access points or groups correspond to your spaces. There are two ways to set them up.
Option A: Sync from Brivo (recommended)
- Navigate to Door Mappings from the admin sidebar
- Click the Sync from Provider action (top of the list)
- Co-Desk pulls all access points and groups from your Brivo account and creates mappings automatically
- Review the synced mappings and assign each one to the correct Location and Space (for locks)
Option B: Create manually
- Navigate to Door Mappings and click Create Door Mapping
- Fill in:
- Location — which location this door belongs to
- Resource Type — Lock (Door) for a single access point, or Group for a Brivo group
- Space — the Co-Desk space this door protects (only required for Locks; Groups apply to the whole location)
- Provider Resource — select the access point or group from the dropdown (pulled live from Brivo)
- Provider Resource Name — auto-filled, or enter a friendly name
- Save
Access Points vs Groups
- An Access Point (Lock) is a single physical door or reader. Map it to a specific space (e.g., "Office 101 Reader" mapped to the Office 101 space).
- A Group is a collection of access points in Brivo (e.g., "Common Areas" containing the main entrance, elevator, and parking gate). Map it to a location — all members at that location with an active booking or plan get access to the entire group.
You can use the Test Connection action (wifi icon) on any door mapping to verify it is reachable in Brivo.
Step 3 — Assign Door Access to Plans
You can configure which doors a plan grants access to. When a member purchases that plan, they automatically get access.
- Go to the Plan detail page
- Click the Door Access tab
- Click the Add Door Access action
- Select the door mapping from the dropdown
- Save
When a member subscribes to this plan, they receive door access automatically. When their subscription ends, access is revoked.
Step 4 — Grant Manual Access to Members
Admins can grant door access to any member independently of bookings or plans.
- Go to the Member detail page
- Click the Door Access tab
- Click the Grant Door Access action (lock icon in the toolbar)
- Select a door or group from the dropdown
- Optionally set Starts At and Ends At dates (leave blank for immediate, indefinite access)
- Click Grant Access
The member will see the door in their My Keys page immediately.
To revoke, click the Revoke action (X icon) next to the access record. To restore a revoked grant, click Restore.
How Access Is Granted
| Source | When | Duration |
|---|---|---|
| Booking | Automatically when a booking is confirmed | Time-bound (booking start to end) |
| Plan / Subscription | Automatically when a membership is created | Until subscription ends (or indefinite) |
| Manual | When an admin grants access via the Door Access tab | Custom start/end dates, or indefinite |
All access records appear in the Door Access tab on the member's detail page, with badges showing the source (Booking, Plan, Manual) and status (Active, Revoked, Expired).
How Access Is Revoked
- Bookings — access is automatically revoked when the booking period ends
- Subscriptions — access is revoked when the subscription is cancelled or expires
- Manual grants — admin clicks Revoke on the member's Door Access tab
- Scheduled expiry — an hourly background job automatically expires grants that have passed their end date
If booking or subscription dates are updated, the access window in Brivo is automatically updated to match the new dates.
Member Portal — My Keys
Members can unlock doors directly from the My Keys page in their Member Portal.
- The page shows a flat list of all doors the member can currently access, regardless of source
- Groups are expanded into individual doors, so the member sees actual door names
- Each door has an Unlock button — tap to unlock the door remotely
- The info tip reminds members to be near the door when tapping
Health Monitoring
Co-Desk automatically checks the Brivo connection every 15 minutes. If the connection fails:
- An alert banner appears on all dashboard pages
- An email notification is sent to all admin users
- The integration card on the Integrations page shows an orange warning with the error details
When the connection is restored, the alert clears automatically on the next health check.
Troubleshooting Access Issues
Member says they cannot get in:
- Go to the member's detail page and check the Door Access tab — is there an active record for the correct door?
- Check that the door mapping exists and is assigned to the correct space/location
- Check the Access Logs tab on the door mapping for any failed grant attempts
- Verify the member's booking or subscription is in a confirmed/active state
- In the Brivo dashboard, check the member's user record and group assignments
Access was not revoked after booking ended:
- Check the member's Door Access tab — the record should show status "Expired" or "Revoked"
- If it still shows "Active", you can manually revoke it from the Door Access tab
Test Connection fails:
Verify your Client ID, Client Secret, and API Key in the Brivo Developer Portal. Ensure the OAuth application has the required API scopes enabled.
Removing the Brivo Integration
Go to Settings > Integrations, find Brivo Access Control, and click Remove. This removes the API connection. Door mappings remain saved but are inactive until you reconnect.
Common Questions
What is the difference between an Access Point and a Group? An Access Point is a single door or reader. A Group is a collection of access points configured in Brivo. If you want to give a member access to multiple doors at once (e.g., all common areas), use a Group.
How does Brivo authentication work? Brivo uses OAuth2 Client Credentials flow (machine-to-machine). Co-Desk automatically manages token refresh — you only need to enter your credentials once.
Can I use both Kisi and Brivo at the same time? Yes — Co-Desk supports multiple access control providers simultaneously. Each door mapping is tied to a specific integration. Members see all their doors in one flat list on the My Keys page, regardless of which provider manages the door.
Can I give a member access without a booking or plan? Yes — use the Grant Door Access action on the member's detail page. You can set custom start/end dates or leave them blank for indefinite access.
What happens if Brivo is down? Co-Desk bookings are not affected. Door unlock via the Member Portal may be unavailable. The health monitoring system will alert you within 15 minutes if the connection is lost.
Can I see who was granted access to which door? Access logs are available on each door mapping's detail page under the Access Logs tab, showing the member, action, status, and timestamp for every grant and revoke operation.