Event Management


1. Overview

Event Management platforms are essential tools for hospitality businesses aiming to streamline and optimize their group bookings and event planning processes. This blueprint documents the integration with Cloudbeds' new Profiles & Events module, which introduces a more flexible hierarchical structure for managing group business.

Cloudbeds Groups & Events is an optional module and properties would require that add-on for the purpose of this integration functionality.

1.1 Prerequisites

• Cloudbeds Groups & Events module enabled on the property

• Valid API credentials with appropriate scopes

• Familiarity with REST API concepts and JSON data formats

1.2 New Architecture: Profile → Event → Allotment Block

The Profiles & Events module introduces a three-tier hierarchy that enables sophisticated management of group business:

LevelEntityDescription
1 (Top)ProfileThe account holder (company, agency, organizer, planner). Represents an ongoing business relationship.
2 (Middle)EventA specific occasion (conference, wedding, tour departure). Contains metadata like dates, property, and billing preferences.
3 (Bottom)Allotment BlockReserved inventory with specific room types, dates, rates, and billing routing. Multiple blocks per event support varied guest segments.

Key Benefit: A single Profile can manage multiple Events across different properties, and each Event can contain multiple Allotment Blocks with distinct billing configurations. This enables complex scenarios like corporate accounts with multiple annual events, travel agencies with recurring tour departures, or wedding planners managing multiple ceremonies.

2. Initial Setup (*)

2.1 Initial Pull

• Use getHotelDetails to retrieve the property and room configuration (Location, policies, descriptions, photos, features...). You can use getHotels to see details of accounts that belong to a group (read more in Supporting Group Accounts.

• Use getRoomTypes or getRooms to retrieve a list of rooms or map them to your rooms. Rooms are nested under room types.

• The roomTypeID identifies the room type (e.g. double room) and the roomID points out the specific physical room.

The roomTypeUnits parameter in getRoomTypes shows the total number of units of each accommodation type (regardless of the occupancy status) and can be used to build the total property inventory on your side.

2.2 Retrieve ARI from Cloudbeds

Availability, Rates, and Inventory (ARI) data is fundamental to the Event Management integration. Retrieving accurate ARI enables your platform to:

Generate accurate group quotes: Pull current rates to build proposals with correct pricing for different room types, date ranges, and occupancy configurations.

Check real-time availability: Verify room availability before committing inventory to allotment blocks, preventing overbooking and ensuring you can fulfill group requests.

Apply restrictions intelligently: Respect property-defined restrictions (CTA, CTD, minLOS, maxLOS) when proposing stay patterns for group business.

Sync inventory changes: Keep your Event Management system in sync with Cloudbeds as rates and availability change due to transient bookings or manual updates.

Support rate negotiation: Understand base rates and derived rate plans to offer appropriate discounts for group business while maintaining profitability.

Common Use Cases:

Group Sales Proposals: When building a quote for a corporate event, retrieve rates for the requested dates to calculate accurate totals including room rates, taxes, and fees.

Availability Calendars: Display a visual calendar showing which dates have sufficient inventory for the requested group size.

Rate Comparison: Show event planners multiple rate plan options (BAR, corporate negotiated, seasonal) for the same room types.

You can retrieve availability and rates with the following endpoints:

• Use getRatePlans to retrieve information on a full date range, or use getRatePlans or getRate with parameter detailedRates: true to also retrieve information and room availability on individual dates within a range.

• roomsAvailable informs of the rooms available. Cloudbeds availability is at room level, so all the rates linked to a particular room type (roomTypeID) will return the same availability in the roomsAvailable parameter.

To retrieve availability, rates and restrictions from Cloudbeds you can use the following endpoints: (*)

• You can retrieve ARI information with getRatePlans, including the startDate and endDate. Using the detailedRates parameter returns daily rates, availability, and restrictions (CTA, CTD, minLOS, maxLOS...)

• All Cloudbeds properties have a base rate (BAR rate) per room type and, optionally, additional standalone or derived rate plans linked to all or some room types. The additional rate plans can be identified with some parameters that do not show for the base rates (ratePlanID, ratePlanNamePublic and ratePlanNamePrivate).

• Based on the number of adults and children included in the request, roomRate shows the rate for the base occupancy and totalRate includes the supplements for any extra guests. If no occupancy is passed in the request, roomRate and totalRate will both show the default occupancy rate.

• The rateID parameter is unique per room type/rate combination across all Cloudbeds properties. You need to save it and include it on any rate update requests.

• When derived: true, the derivedType, derivedValue and baseRate parameters are displayed so you can work out the calculation. All rate plans are derived from the base rate for the corresponding room.

• If you only require information on base rates, you may use getRate with detailedRates: true instead of getRatePlans. Only the base rate of the roomTypeID included in the request will be returned.

Note: The rates returned in getRatePlans or getRate will be tax-inclusive or exclusive according to the property setup that can be retrieved via the getTaxesAndFees endpoint and in the currency you can get by calling getHotelDetails.

3.API Endpoints Reference

3.1 Profiles API

Base URL: https://api.cloudbeds.com/group-profile/v1/profiles

Profiles represent your business accounts - companies, agencies, organizers, or planners that have an ongoing relationship with your property.

MethodEndpointDescription
POST/profilesCreate a new profile (company, agency, etc.)
GET/profilesList all profiles with optional filters
GET/profiles/{profileId}Retrieve a specific profile by ID
PATCH/profiles/{profileId}Update profile attributes

3.1.1 Profile Contact Persons

Profiles can have multiple contact persons associated with them, each serving different roles within the organization. This enables properties to maintain relationships with the right people for different aspects of the group business.

Base URL: https://api.cloudbeds.com/group-profile/v1/contact-persons

Typical Contact Roles:

Primary Contact: The main point of contact for overall communications with the organization

Billing Manager: Handles invoicing, payment terms, and financial communications

Event Coordinator: Manages logistics, rooming lists, and on-site coordination for specific events

Executive Sponsor: Decision maker for contract negotiations and major changes

Travel Coordinator: Handles booking details and attendee communications

MethodEndpointDescription
GET/contact-personsSearch contact persons across organization
POST/profiles/{profileId}/contact-personsAdd contact person to a profile
GET/contact-persons/{contactPersonId}Get contact person by ID
PUT/contact-persons/{contactPersonId}Update contact person details
DELETE/contact-persons/{contactPersonId}Remove contact person from profile

Example: Corporate Profile with Multiple Contacts

PROFILE: Cloudbeds Corporate

├── Jane Smith (Primary Contact) - VP of Operations

├── Robert Chen (Billing Manager) - Accounts Payable

├── Maria Garcia (Event Coordinator) - HR Events Team

└── David Park (Travel Coordinator) - Corporate Travel

3.2 Events API

Base URL: https://api.cloudbeds.com/integration/v1/events

Events represent specific occasions linked to a Profile. Each event can span a property and contain multiple allotment blocks for different guest segments.

MethodEndpointDescription
POST/eventsCreate a new event under a profile
GET/eventsList events with optional profileId filter
GET/events/{eventId}Retrieve a specific event by ID
PATCH/events/{eventId}Update event attributes

3.3 Allotment Blocks API

Base URL: https://api.cloudbeds.com/api/v1.3

Allotment blocks reserve inventory with specific dates, room types, and rates. Each block belongs to an Event and can have distinct billing configurations.

MethodEndpointDescription
POST/createAllotmentBlockCreate a new allotment block under an event
GET/getAllotmentBlocksRetrieve all allotment blocks (filter by eventId)
POST/updateAllotmentBlockUpdate allotment block attributes

**3.4 Resources API (Meeting Spaces)**Coming Soon

Base URL: https://api.cloudbeds.com/resources/v1

Documentation: https://api.cloudbeds.com/resources/v1/docs/

Resources represent bookable meeting spaces and venues at a property, such as conference rooms, ballrooms, restaurants, and other function spaces.

MethodEndpointDescription
GET/resourcesList all available resources/meeting spaces
GET/resources/{resourceId}Retrieve details of a specific resource
GET/resources/availabilityCheck availability for resources by date range

4. Integration Workflow

4.1 Standard Integration Flow (*)

The following sequence represents the typical workflow for creating a complete group booking setup:

Step 1: Create Profile(*)

POST /group-profile/v1/profiles

Create the account holder (company, agency, planner). Capture business details, contact information, and billing preferences.

Step 2: Create Event(*)

POST /integration/v1/events

Create the specific occasion (conference, wedding, tour) linked to the profile. Include property ID, event dates, and event metadata.

Step 3: Create Allotment Block(s)(*)

POST /api/v1.3/createAllotmentBlock

Create inventory blocks under the event. Each block can have distinct room types, rates, dates, and billing routing (Master Folio vs Pay Own).

Step 4: Create Reservations(*)

POST /api/v1.3/postReservation

Create reservations against allotment blocks using the allotmentBlockCode. Blocks must have "Definite" status to accept reservations.

Step 5: Post Custom Items to Folio(Optional)

POST /api/v1.3/postCustomItem

Post additional charges such as Food & Beverage, meeting room rentals, AV equipment, or other event-related services directly to the reservation or group folio.

Step 6: Updates and Modifications (*)

Sync updates to Profiles, Events, Allotment Blocks and Reservations following guidelines above under API Endpoints Reference.


Use Cases:

Catering charges: Breakfast, lunch, dinner, coffee breaks for group events

Meeting room rental: Conference room fees, setup charges

AV equipment: Projectors, screens, microphones

Event services: Florals, decorations, entertainment

Accounting Integration: For more robust accounting integration, use the Cloudbeds Accounting API (/accounting/v1.0/transactions) which provides immutable transaction records, custom transaction codes, and general ledger integration. See: https://developers.cloudbeds.com/docs/accounting

4.2 Recommended Webhooks

Subscribe to these webhooks to maintain synchronization with Cloudbeds:

• allotmentBlock/created - New block created

• allotmentBlock/updated - Block inventory or dates changed

• allotmentBlock/deleted - Block removed

• reservation/created - Reservation booked against a block

• reservation/status_changed - Check-in, check-out, cancellation

• accounting/transaction - New transaction posted (for accounting integrations)


5. Integrations Examples

The following examples demonstrate real-world integration scenarios across different business types.

5.1 Example: Corporate Account

PROFILE: Westfield Technologies (Corporate Account)

├── Event 1: Westfield Tech Summit 2026 (Property A)

│ ├── Executive Team Block → Routed to Master Folio

│ ├── Engineering Attendees → Pay Own (room only)

│ └── Sponsored Partners → Individual Pay Own

├── Event 2: Q4 Sales Kickoff 2026 (Property B)

│ ├── Sales Leadership → Routed to Master Folio (full)

│ └── Regional Reps → Routed to Master Folio (room + tax)

5.2 Example: Travel Agency

PROFILE: Pacific Rim Travel Agency (Travel Agent)

├── Event 1: Japan Golden Route - October

│ ├── Group A: Oct 5-12 → Routed to Agency Folio

│ └── Group B: Oct 15-22 → Routed to Agency Folio

5.3 Example: Wedding Planner

PROFILE: Elegant Affairs Wedding Planning (Wedding Planner)

├── Event 1: Morrison-Chen Wedding - Sep 2025

│ ├── Bride's Family Block → Pay Own

│ ├── Groom's Family Block → Pay Own

│ └── Wedding Party Block → Routed to Couple's Folio

6. Appendix

6.1 Quick Reference: Endpoints Summary

6.2 Support & Resources

Developer Documentation: https://developers.cloudbeds.com

API Reference: https://developers.cloudbeds.com/reference

Contact Persons API: https://developers.cloudbeds.com/reference/searchcontactpersons

Accounting Blueprint: https://developers.cloudbeds.com/docs/accounting

Resources API Docs: https://api.cloudbeds.com/resources/v1/docs/

Partner Support: [email protected]

() Mandatory requirements for Events Management functionality certification.*