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

Invoices

Operations

Item

Operations

Package

Operations

Payment

Operations

Rate

Operations

getRate

Request

Returns the rate of the room type selected, based on the provided parameters

Query
roomTypeIDstringrequired

Room Type ID

startDatestring(date)required

Check-in date

endDatestring(date)required

Check-out date

adultsinteger

Number of adults

childreninteger

Number of children

detailedRatesboolean

If the rates need detailed information

Default false
promoCodeboolean

Return information for one or more specific rate plans by promo code. This parameter is DEPRECATED and not recommended for usage. Use method getRatePlans instead

Default false
curl -i -X GET \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/getRate?adults=0&children=0&detailedRates=false&endDate=2019-08-24&promoCode=false&roomTypeID=string&startDate=2019-08-24' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataobject

Rates details

Response
application/json
{ "success": true, "data": { "rateID": "string", "isDerived": true, "roomRate": 0, "totalRate": 0, "roomsAvailable": 0, "daysOfWeek": [ … ], "roomRateDetailed": [ … ] } }

getRateJobs

Request

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.

Query
jobReferenceIDstring

Filter Rate Jobs by jobReferenceID

statusstring

Filter Rate Jobs based on status

curl -i -X GET \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/getRateJobs?jobReferenceID=string&status=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

hasNextPageboolean

Returns true if there is another page of results after this one

nextPagestring or null

The URL of the next page of results if there is one

dataArray of objects

Job details

Response
application/json
{ "success": true, "hasNextPage": true, "nextPage": "string", "data": [ { … } ] }

getRatePlans

Request

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

Query
propertyIDsstring

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

rateIDsstring

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

roomTypeIDstring

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

promoCodestring

List of Promo Codes, comma-separated, i.e. 37,345,89

includePromoCodeboolean

Include rate plans with promo code

Default true
startDatestring(date)required

Check-in date

endDatestring(date)required

Check-out date

adultsinteger

Number of adults

childreninteger

Number of children

detailedRatesboolean

If the rates need detailed information

Default false
curl -i -X GET \
  'https://tbg-api-docs.vacatia.com/_mock/cloudbeds/getRatePlans?adults=0&children=0&detailedRates=false&endDate=2019-08-24&includePromoCode=true&promoCode=string&propertyIDs=string&rateIDs=string&roomTypeID=string&startDate=2019-08-24' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-api-key: YOUR_API_KEY_HERE'

Responses

200 Response

Bodyapplication/json
successboolean

Returns if the request could be completed

dataArray of objects

Rates details

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, "data": [ { … } ], "message": "string" }

patchRate

Request

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.

Bodyapplication/x-www-form-urlencoded
ratesArray of objects

Array of rates to update

curl -i -X POST \
  https://tbg-api-docs.vacatia.com/_mock/cloudbeds/patchRate \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -d 'rates=[object Object]'

Responses

200 Response

Bodyapplication/json
successboolean

Returns true if the request could be completed

jobReferenceIDstring

ReferenceId ID for the job created for this update. This can be used to track success of the batch for this rate update. See getRateJobs or the Rate Batch Job Webhook

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, "jobReferenceID": "string", "message": "string" }

putRate

Request

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.

Bodyapplication/x-www-form-urlencoded
ratesArray of objects

Array of rates to update

curl -i -X POST \
  https://tbg-api-docs.vacatia.com/_mock/cloudbeds/putRate \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  -H 'x-api-key: YOUR_API_KEY_HERE' \
  -d 'rates=[object Object]'

Responses

200 Response

Bodyapplication/json
successboolean

Returns true if the request could be completed

jobReferenceIDstring

ReferenceId ID for the job created for this update. This can be used to track success of the batch for this rate update. See getRateJobs or the Rate Batch Job Webhook

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, "jobReferenceID": "string", "message": "string" }

Reservation

Operations

Room

Operations

Taxes and Fees

Operations

User

Operations