Cloudbeds API (v1.2)

Welcome to the documentation for Cloudbeds API Version v1.2! If you are looking to learn how to use the Cloudbeds API to access guest information, reservations, or similar data for your Cloudbeds customers, then you've come to the right place.

In this document you will find all the API methods we provide along with explanations for parameters and response examples.

If you have questions about different implementation steps (e.g. how to implement OAuth 2.0), please refer to our Integrations Portal.

Be sure to subscribe to the monthly Cloudbeds API announcement mailing list to receive information on new additions and improvements to the Cloudbeds API and related developer tools.

Endpoint: https://api.cloudbeds.com/api/v1.2/{method}

HTTPS: Our API requires HTTPS. We'll respond with an appropriate error if you're not using it.

Request Format: HTTP GET, POST and PUT (Content-Type: application/x-www-form-urlencoded)

Response Format: JSON

Response Header: X-Request-ID is added to response headers in all calls to help accelerate support and troubleshooting.

Run in Postman use this link to access our Public collection in Postman.

Download OpenAPI description
Languages
Servers
Mock server
https://tbg-api-docs.vacatia.com/_mock/cloudbeds/
https://api.cloudbeds.com/api/v1.2/

Authentication

Operations

Adjustment

Operations

AllotmentBlocks

Operations

AppSettings

Operations

Currency

Operations

CustomFields

Operations

Dashboard

Operations

Emails

Operations

Groups

Operations

Guest

Operations

Hotel

Operations

HouseAccount

Operations

Housekeeping

Operations

Integration

Operations

getAppState

Request

Get the current app integration state for a property.
This call is only available for third-party integration partners, and not for property client IDs. Read the Connecting/Disconnecting Apps guide to further understand the use cases.

Query
propertyIDstring

Property identifier to be queried

curl -i -X GET \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/getAppState?propertyID=string'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataobject

Integration state details

Response
application/json
{ "success": true, "data": { "app_state": "enabled" } }

postAppState

Request

Update app integration state for a property ID.
This call is only available for third-party integration partners, and not for property client IDs.
If an app is set to 'disabled', it will remove all active sessions Read the Connecting/Disconnecting Apps guide to further understand the use cases.

Bodyapplication/x-www-form-urlencoded
propertyIDstring or null

Property identifier to be updated

app_statestring

Current integration state between third-party and property.

Enum"enabled""disabled""installing""pending"
curl -i -X POST \
  https://tbg-api-docs.vacatia.com/_mock/cloudbeds/postAppState \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d propertyID=string \
  -d app_state=enabled

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

Response
application/json
{ "success": true }

postGovernmentReceipt

Request

Add a Government Receipt to a Reservation or House Account

Bodyapplication/x-www-form-urlencoded
propertyIDstring or null

Property identifier to be updated

reservationIDstring or null

Reservation identifier. It, or houseAccountID, is necessary.

houseAccountIDstring or null

House Account identifier. It, or reservationID, is necessary.

namestring

Name of the document. Will be used to describe document in MFD.

urlstring

URL for user to download document.

amountnumber

Value of posted document

identifierstring or null

Receipt Identifier of document. If not sent, a random identifier will be generated.

issueDatestring or null(date-time)

Datetime of document emission, if not sent, current datetime will be assumed.

curl -i -X POST \
  https://tbg-api-docs.vacatia.com/_mock/cloudbeds/postGovernmentReceipt \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d propertyID=string \
  -d reservationID=string \
  -d houseAccountID=string \
  -d name=string \
  -d url=string \
  -d amount=0 \
  -d identifier=string \
  -d issueDate=2019-08-24T14:15:22Z

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

messagestring or null

To be used in case any error occurs (if success = false). If success = true, it does not exist.

Response
application/json
{ "success": true, "message": "string" }

getAppSettings

Request

Get the current app settings for a property.

Query
propertyIDstring

Property identifier to be queried

curl -i -X GET \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/getAppSettings?propertyID=string'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataobject

Application settings details

Response
application/json
{ "success": true, "data": { "fullRevenueSync": true } }

postAppError

Request

Submit the error received by the hybrid integration from the partner to the MFD

Bodyapplication/x-www-form-urlencoded
propertyIDstring or null

Property identifier to be queried

timestampstring(date-time)

Date/time that the error was received by the middleware

eventTypestring

Description for the type of event that caused the error

Enum"create""delete""update""sync"
statusCodestring or null

HTTP error status code or other error code ID

descriptionstring or null

Description of the error

errorMessagestring or null

Detailed message for error

entityTypestring or null

Type of the entity related to the error

Enum"invoice""transaction""reservation"
entityIDstring or null

Unique ID for the entity related to the error

userIDstring or null

User ID for the user that triggered event that caused the error

curl -i -X POST \
  https://tbg-api-docs.vacatia.com/_mock/cloudbeds/postAppError \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -d propertyID=string \
  -d timestamp=2019-08-24T14:15:22Z \
  -d eventType=create \
  -d statusCode=string \
  -d description=string \
  -d errorMessage=string \
  -d entityType=invoice \
  -d entityID=string \
  -d userID=string

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataobject

Integration state details

Response
application/json
{ "success": true, "data": { "errorID": "string" } }

postWebhook

Request

Subscribe a webhook for a specified event. Read the Webhooks guide to see available objects, actions, payload info and more.

Bodyapplication/x-www-form-urlencoded
propertyIDstring or null

Property ID

objectstring

Event object

actionstring

Event action

endpointUrlstring

Endpoint URL

curl -i -X POST \
  https://tbg-api-docs.vacatia.com/_mock/cloudbeds/postWebhook \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -d propertyID=string \
  -d object=string \
  -d action=string \
  -d endpointUrl=string

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataobject

Subscription details

Response
application/json
{ "success": true, "data": { "subscriptionID": "string" } }

deleteWebhook

Request

Remove subscription for webhook. Read the Webhooks guide to see available objects, actions, payload info and more. ### Group account support

Query
propertyIDsstring

List of property IDs, comma-separated, i.e. 37,345,89

subscriptionIDstringrequired

Subscription ID

curl -i -X DELETE \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/deleteWebhook?propertyIDs=string&subscriptionID=string'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

Response
application/json
{ "success": true }

getWebhooks

Request

List webhooks for which the API client is subscribed to.

Query
propertyIDstring

Property ID

curl -i -X GET \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/getWebhooks?propertyID=string'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataArray of objects
Response
application/json
{ "success": true, "data": [ { … } ] }

Invoices

Operations

Item

Operations

Package

Operations

Payment

Operations

Rate

Operations

Reservation

Operations

Room

Operations

Taxes and Fees

Operations

User

Operations