Cloudbeds integrationCloudbeds logo

Cloudbeds integration for AI agents.

Cloudbeds integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Cloudbeds tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.

What your agents can do

Real Cloudbeds actions, managed and audited.

Your user connects Cloudbeds once; your agent can then secure AI-agent actions — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.

  1. 1

    Your user grants Cloudbeds access once (OAuth) — the token lands in the vault.

  2. 2

    Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.

  3. 3

    Every routed call appends a hash-chained audit record — nothing leaves your infra.

Tools & triggers

Supported Cloudbeds tools.

115 tools are generated from the published Cloudbeds catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.

Showing 115 tools. All published catalog entries are included in this page's server-rendered HTML.

deleteAdjustment
Voids the AdjustmentID transaction on the specified reservationID
Adjustment
deleteGuestNote
Archives an existing guest note.
Guest
deleteReservationNote
Archives an existing reservation note.
Reservation
deleteWebhook
Remove subscription for webhook. Read the [Webhooks guide](https://integrations.cloudbeds.com/hc/en-us/articles/360007612553-Webhooks) to see available objects, actions, payload info and more. ### Group account support
Integration
getAllotmentBlocks
Retrieve allotment blocks
AllotmentBlocks
getAppPropertySettings
Returns the app property settings
AppSettings
getAppSettings
Get the current app settings for a property.<br />
Integration
getAppState
Get the current app integration state for a property.<br /> This call is only available for third-party integration partners, and not for property client IDs. Read the [Connecting/Disconnecting Apps guide](https://integrations.cloudbeds.com/hc/en-us/articles/360007613213-Connecting-Disconnecting-Apps) to further understand the use cases.
Integration
getAvailableRoomTypes
Returns a list of room types with availability considering the informed parameters ### Group account support
Room
getCurrencySettings
Get currency settings
Currency
getCustomFields
Gets custom fields list<br /> ¹ data.displayed = "booking" - Display this field to guests on the booking engine.<br /> ¹ data.displayed = "reservation" - Add this field to the reservation folio for use by staff.<br /> ¹ data.displayed = "card" - Make this field available for registration cards.<br />
CustomFields
getDashboard
Returns basic information about the current state of the hotel
Dashboard
getEmailSchedule
Returns a list of all existing email scheduling. This call is only available for third-party integration partners, and not for property client IDs.
Emails
getEmailTemplates
Returns a list of all existing email templates. This call is only available for third-party integration partners, and not for property client IDs.
Emails
getFiles
Returns a list of files attached to a hotel or group profile, ordered by creation date
Hotel
getGroupNotes
Returns group notes
Groups
getGroups
Returns the groups for a property
Groups
getGuest
Returns information on a guest specified by the Reservation ID parameter
Guest
getGuestList
Returns a list of guests, ordered by modification date ### Group account support
Guest
getGuestNotes
Retrieves a guest notes
Guest
getGuestsByFilter
Returns a list of guests matching the selected parameters ### Group account support
Guest
getGuestsByStatus
Returns a list of guests in the current status (Not Checked In, In House, Checked Out or Cancelled), sorted by modification date. If no date range is passed, it returns all guests with the selected status. ### Group account support
Guest
getGuestsModified
Returns a list of guests based on their modification date. Note that when a guest checks in or checks out of a room, their record is modified at that time. If no date range is passed, only the records for the current day are returned. Also note that if the guest is assigned to multiple rooms, it will result in multiple records. ### Group account support
Guest
getHotelDetails
Returns the details of a specific hotel, identified by "propertyID"
Hotel
getHotels
Returns a list of hotels, filtered by the parameters passed ### Group account support
Hotel
getHouseAccountList
Pulls list of active house accounts
HouseAccount
getHousekeepers
Returns a list of housekeepers ### Group account support
Housekeeping
getHousekeepingStatus
Returns the current date's housekeeping information The housekeeping status is calculated basing on the set of fields roomOccupied | roomCondition | roomBlocked | vacantPickup | roomBlocked | refusedService The available statuses are: - Vacant and Dirty (VD): false | “dirty” | false | false | false | false - Occupied and Dirty (OD): true | “dirty” | false | false | false | false - Vacant and Clean (VC): false | “clean” | false | false | false | false - Occupied and Clean (OC): true | “clean” | false | false | false | false - Occupied and Clean Inspected (OCI): true | “inspected” | false | false | false | false - Vacant and Clean Inspected (VCI): false | “inspected” | false | false | false | false - Do Not Disturb (DND): if doNotDisturb is true - Refused Service (RS): if refusedService is true - Out of Order (OOO): if roomBlocked is true - Vacant and Pickup (VP): if vacantPickup is true
Housekeeping
getItem
Gets the details for the one itemID<br /> <sup>1</sup> only if data.stockInventory = true<br> <sup>2</sup> Taxes, fees and totals will show up only if an item has assigned tax or fee.<br>
Item
getItemCategories
Gets the item category list
Item
getItems
Gets all the items and their prices the hotel has created in myfrontdesk<br> <sup>1</sup> only if data.stockInventory = true<br> <sup>2</sup> Taxes, fees and totals will show up only if an item has assigned tax or fee.<br>
Item
getPackageNames
Return a list of billing package names for a property
Package
getPackages
This efficient method allows you to retrieve the collection of packages associated with a property. Packages here define a group of features that a property has the ability to utilize or access. By invoking this API method, developers will get a comprehensive view of the feature sets that are available and active for a specific property. The getPackages method boasts a seamless execution that offers essential information, vital in enhancing property management, understanding available functionalities and ultimately, optimizing user experience.
Package
getPaymentMethods
Get a list of active methods for a property, or list of properties
Payment
getPaymentsCapabilities
Lists the payment capabilities of a given property
Payment
getRate
Returns the rate of the room type selected, based on the provided parameters
Rate
getRateJobs
Returns a list of Rate Jobs. Rate jobs are only returned within 7 days of creation, after 7 days they will not be returned in the response. Requests which do not provide a jobReferenceID will be filtered by the client ID of the request's token.
Rate
getRatePlans
Returns the rates of the room type or promo code selected, based on the provided parameters. If no parameters are provided, then the method will return all publicly available rate plans. ### Group account support
Rate
getReservation
Returns information on a booking specified by the reservationID parameter
Reservation
getReservationAssignments
Returns a list of rooms/reservations assigned for a selected date.
Reservation
getReservationNotes
Retrieves reservation notes based on parameters
Reservation
getReservationRoomDetails
Returns information about particular room in reservation by its subReservationID
Room
getReservations
Returns a list of reservations that matched the filters criteria.<br /> Please note that some reservations modification may not be reflected in this timestamp. ### Group account support
Reservation
getReservationsWithRateDetails
Returns a list of reservations with added information regarding booked rates and sources.<br /> Please note that some reservations modification may not be reflected in this timestamp.
Reservation
getRoomBlocks
Returns a list of all room blocks considering the informed parameters.
Room
getRoomTypes
Returns a list of room types filtered by the selected parameters ### Group account support
Room
getRooms
Returns a list of all rooms considering the informed parameters. If Check-in/out dates are sent, only unassigned rooms are returned. ### Group account support
Room
getRoomsFeesAndTaxes
Get applicable fees and tax to a booking. This is meant to be used on checkout to display to the guest.
Room
getRoomsUnassigned
Returns a list of unassigned rooms in the property. Call is alias of [getRooms](#api-Room-getRooms). Please check its documentation for parameters, response and example. ### Group account support
Room
getSources
Gets available property sources
Reservation
getTaxesAndFees
Returns the taxes and fees set for the property. Read the [Rate-Based tax (Dynamic Tax) guide](https://myfrontdesk.cloudbeds.com/hc/en-us/articles/360014103514-rate-based-tax-dynamic-tax) to understand its usage.
Taxes and Fees
getUsers
Returns information on the properties' users ### Group account support
User
getWebhooks
List webhooks for which the API client is subscribed to.
Integration
listAllotmentBlockNotes
List notes added to an allotment block
AllotmentBlocks
metadata
In the context of properties being distributed across multiple localizations, this endpoint serves to retrieve the precise location of the property associated with the provided access token. Further information can be found in the [Authentication guide](https://integrations.cloudbeds.com/hc/en-us/sections/14731510501915-Authentication).
Authentication
userinfo
Returns information on user who authorized connection
Authentication
access_token
Query the authorization server for an access token used to access property resources.</br> If the automatic delivery method for API keys is used, the grant type `urn:ietf:params:oauth:grant-type:api-key` needs to be used to request an API key. This grant type requires `grant_type=urn:ietf:params:oauth:grant-type:api-key`, `client_id`, `client_secret`, `redirect_uri` and `code`.</br> For OAuth 2.0., two different grant types (`authorization_code`, `refresh_token`) are supported. Authorization code grant type requires `grant_type=authorization_code`, `client_id`, `client_secret`, `redirect_uri`, `code`. Refresh token grant type requires `grant_type=refresh_token`, `client_id`, `client_secret`, `refresh_token`.</br> Read the [Authentication guide](https://integrations.cloudbeds.com/hc/en-us/sections/14731510501915-Authentication) for implementation tips, user flows and testing advice.
Authentication
appendCustomItem
Append single, or multiple, custom items and their associated payments to an existing one in a Reservation, House Account, or Group.
Item
createAllotmentBlock
Retreive allotment blocks @apiQuery {Integer} propertyID Property ID
AllotmentBlocks
createAllotmentBlockNotes
Add a note to an allotment block
AllotmentBlocks
deleteAllotmentBlock
Delete allotment blocks
AllotmentBlocks
deleteAppPropertySettings
deleteAppPropertySettings
AppSettings
deleteRoomBlock
Deletes a room block
Room
patchGroup
Updates an existing group with information provided. At least one information field is required for this call.
Groups
patchRate
Update the rate of the room based on rateID selected, based on the provided parameters. You can make multiple rate updates in a single API call. Providing a startDate and/or endDate will update rates only within the interval provided. Only non derived rates can be updated, requests to update a derived rate will return an error. This endpoint performs updates asynchronously, rate updates are added to a queue and the endpoint returns a job reference ID. This job reference ID can be used to track job status notifications or to look up details of the update once it is completed. The API is limited to 30 interval per update, sending more than 30 will return an error.
Rate
postAdjustment
Adds an adjustment to a reservation
Adjustment
postAppError
Submit the error received by the hybrid integration from the partner to the MFD
Integration
postAppPropertySettings
postAppPropertySettings
AppSettings
postAppState
Update app integration state for a property ID. <br /> This call is only available for third-party integration partners, and not for property client IDs. <br /> If an app is set to 'disabled', it will remove all active sessions Read the [Connecting/Disconnecting Apps guide](https://integrations.cloudbeds.com/hc/en-us/articles/360007613213-Connecting-Disconnecting-Apps) to further understand the use cases.
Integration
postCharge
Use a payment method to process a payment on a reservation, group profile, accounts receivable ledger, or house account.
Payment
postCreditCard
Returns the rate of the room type selected, based on the provided parameters
Payment
postCustomField
Sets custom fields. The call should only be made once to add the field to the system.
CustomFields
postCustomItem
Adds single, or multiple, custom items and their associated payments to a Reservation or House Account as a single transaction.
Item
postCustomPaymentMethod
Add a Custom Payment Method to a property. This call does not allow to add Payment Methods: credit cards, bank transfer or Pay Pal.
Payment
postEmailSchedule
Creates a new email schedule for existing email template. Email template can be scheduled based on two parameters: reservationStatusChange and reservationEvent. Only one of the parameters can be used. *reservationStatusChange* schedules email to be sent when reservation status transitions to a specific one, for instance: `confirmed`. *reservationEvent* schedules email to be sent number of days prior or after a specific event, for instance: `after_check_out` at a given time This call is only available for third-party integration partners, and not for property client IDs.
Emails
postEmailTemplate
Creates a new email template. See the full list of available language parameters <a href="https://integrations.cloudbeds.com/hc/en-us/articles/360007144993-FAQ#methods-and-parameters">here</a>. This call is only available for third-party integration partners, and not for property client IDs.
Emails
postFile
Attaches a file to a hotel
Hotel
postGovernmentReceipt
Add a Government Receipt to a Reservation or House Account
Integration
postGroupNote
Adds a group note
Groups
postGuest
Adds a guest to reservation as an additional guest.
Guest
postGuestDocument
Attaches a document to a guest
Guest
postGuestNote
Adds a guest note
Guest
postGuestPhoto
Attaches a photo to a guest
Guest
postGuestsToRoom
Assigns guest(s) to a room in a reservation and adds these guests as additional guests.
Guest
postHousekeeper
Add New Housekeeper
Housekeeping
postHousekeepingAssignment
Assign rooms (single or multiple) to an existing housekeeper
Housekeeping
postHousekeepingStatus
Switches the current date's housekeeping status for a specific room ID to either clean or dirty The housekeeping status is calculated basing on the set of fields roomOccupied | roomCondition | roomBlocked | vacantPickup | roomBlocked | refusedService The available statuses are: - Vacant and Dirty (VD): false | “dirty” | false | false | false | false - Occupied and Dirty (OD): true | “dirty” | false | false | false | false - Vacant and Clean (VC): false | “clean” | false | false | false | false - Occupied and Clean (OC): true | “clean” | false | false | false | false - Occupied and Clean Inspected (OCI): true | “inspected” | false | false | false | false - Vacant and Clean Inspected (VCI): false | “inspected” | false | false | false | false - Do Not Disturb (DND): if doNotDisturb is true - Refused Service (RS): if refusedService is true - Out of Order (OOO): if roomBlocked is true - Vacant and Pickup (VP): if vacantPickup is true
Housekeeping
postItem
Adds an item either to a reservation or to a house account.
Item
postItemCategory
Adds new items category
Item
postItemsToInventory
Adds new items batch<br /> ¹ only if item.stockInventory = true<br />
Item
postNewHouseAccount
Add a new House Account
HouseAccount
postPayment
Add a payment to a specified reservation, house account, or group. If multiple IDs are provided, precedence is reservationID, then houseAccountID, then groupCode.
Payment
postReservation
Adds a reservation to the selected property
Reservation
postReservationDocument
Attaches a document to a reservation
Reservation
postReservationNote
Adds a reservation note
Reservation
postRoomAssign
Assign/Reassign a room on a guest reservation
Room
postRoomBlock
Adds a room block to the selected property.
Room
postRoomCheckIn
Check-in a room already assigned for a guest
Room
postRoomCheckOut
Check-out a room already assigned for a guest. If all rooms are checked out, the reservation status will update accordingly to "Checked Out" as well.
Room
postVoidItem
Voids the itemID transaction on the specified Reservation ID, House Account ID, or Group. If payments were sent in calls [postItem](https://developers.cloudbeds.com/reference/post_postitem) or [postCustomItem](https://developers.cloudbeds.com/reference/post_postcustomitem), they will be deleted too.
Item
postVoidPayment
Voids a payment (using paymentID) to a specified reservation or house account.
Payment
postWebhook
Subscribe a webhook for a specified event. Read the [Webhooks guide](https://integrations.cloudbeds.com/hc/en-us/articles/360007612553-Webhooks) to see available objects, actions, payload info and more.
Integration
putAppPropertySettings
putAppPropertySettings
AppSettings
putGroup
Adds a group to the property. Please note that the default setting for 'Route to Group Folio' will be 'No,' and the 'Reservation Folio Configuration' will be set as the default folio configuration. You can edit these settings through the user interface (UI).
Groups
putRate
Update the rate of the room based on rateID selected, based on the provided parameters. You can make multiple rate updates in a single API call. Providing a startDate and/or endDate will update rates only within the interval provided. Only non derived rates can be updated, requests to update a derived rate will return an error. This endpoint performs updates asynchronously, rate updates are added to a queue and the endpoint returns a job reference ID. This job reference ID can be used to track job status notifications or to look up details of the update once it is completed. The API is limited to 30 interval per update, sending more than 30 will return an error.
Rate
updateAllotmentBlock
Update an allotment block @apiQuery {Integer} propertyID Property ID
AllotmentBlocks
updateAllotmentBlockNotes
Update a note on an allotment block
AllotmentBlocks
putGuest
Updates an existing guest with information provided. At least one information field is required for this call.
Guest
putGuestNote
Updates an existing guest note.
Guest
putHouseAccountStatus
Change specific house account to either open or closed.
HouseAccount
putHousekeeper
Edit Housekeeper Details
Housekeeping
putItemToInventory
Updates an item with information provided<br /> ¹ only if item.stockInventory = true<br />
Item
putReservation
Updates a reservation, such as custom fields, estimated arrival time, room configuration and reservation status.
Reservation
putReservationNote
Updates an existing reservation note.
Reservation
putRoomBlock
Updates a room block.
Room
FAQ

Cloudbeds integration, answered

How do AI agents use Cloudbeds through Open Connector?
Your user connects Cloudbeds once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Cloudbeds tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
Is this a Cloudbeds MCP server?
Yes. Open Connector can serve Cloudbeds as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Cloudbeds actions with credentials injected server-side.
Where do Cloudbeds credentials live?
In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.

Give your agents Cloudbeds — keep the keys.

Open source, self-hostable, with Cloudbeds credentials that never leave your infrastructure. Run it from source today.