CiaoBooking Public API (1.0.0)

Download OpenAPI specification:Download

Get started here

<strong>Getting started guide</strong>

Get started here

This is the CiaoBooking Public API


CiaoBooking provides many API products, tools, and resources that enable you to extend the functionalities and have a great experience with your PMS system.

Getting started guide

To start using the CiaoBooking API, you need to

  • Create a new user in CiaoBooking and assign to that user the role API - Pubbliche

Authentication

The auth endpoint is used to retrieve the the bearer token which must be used in the header of the requests

Authentication error response

If an token is missing, malformed, or invalid, you will receive an HTTP 401 Unauthorized response code.

Rate and usage limits

The limit is 300 requests per minute. Also, depending on your plan, you may have usage limits. If you exceed either limit, your request will return an HTTP 429 Too Many Requests status code.

503 response

An HTTP 503 response from our servers indicates there is an unexpected spike in API access traffic. The server is usually operational within the next five minutes. If the outage persists or you receive any other form of an HTTP 5XX error, contact support.

Need some help?

Contact us to info@ciaobooking.com

Auth

The CiaoBooking API connection is Bearer token protected.

To access any of the enpoints, you must first login to retrieve the bearer token, then you can use the Bearer token to authorize every request

Auth

Method to call to have access to API methods.
You can call this method before every call or using expiresAt timestamp, set the expiration date to avoid further logins.

Authorizations:
bearerAuth
header Parameters
locale
string
Example: {{locale}}
Request Body schema: multipart/form-data
email
string
password
string
source
string

Responses

Reservations

Here you will find the API to get the reservations in CiaoBooking

Schema

status INT

1 => CANCELED
2 => CONFIRMED
3 => PENDING

amount room price amount

cleaning_fee fees for the cleaning

extras sum of all the reservation extras amount

city_tax expected amount to be collected for the city tax

total_gross field is the sum of amount, cleaning_fee and extras

guests indicate the number of people which will require a bed. Children are included in this field

children numer of children of the reservation

infants number of infants of the reservation. Not included in guests

meal_plan

0 => ROOM_ONLY
1 => BREAKFAST
2 => HALF_BOARD
3 => FULL_BOARD
4 => ALL_INCLUSIVE

Reservations GET

The API request must include FROM/TO params or UPDATED_AT.

We suggest to have use FROM/TO params to pull initial data, then UPDATED_AT filter can be used to pass last api call datetime and the api will return only the diff between the last api call and the new one.

The limit is set to max 200 reservation per api call.

Authorizations:
bearerAuth
query Parameters
from
string
Example: from=2024-01-01
to
string
Example: to=2024-12-31
updated_at
string

Can be date or event datetime

status
string
limit
string
Example: limit=1
offset
string
Example: offset=5
property_id
string
Example: property_id=123456

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "meta": [ ]
}

RateCalendar

Calendar GET

The maximum limit of records is 500.

Authorizations:
bearerAuth
query Parameters
from
string
Example: from=2024-01-01
to
string
Example: to=2024-12-31
limit
string
Example: limit=400
offset
string
Example: offset=5
property_id
string
Example: property_id=

ID of the property container

room_type_id
string
Example: room_type_id=

Specific ID of the rate which is the combination of unit category and rate plan

unit_category_id
string
Example: unit_category_id=

Get all rates combinations assigned to a unit category ID

rate_plan_id
string
Example: rate_plan_id=

Get all rates of a rate plan ID

guests
string
Example: guests=

Number of guests rate

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "meta": [ ]
}

Property

Property Structure GET

The respose contain all the informations related to one or multiple properties, including unit categories, units and room types.

This is helpful if you want to get the whole structure of a property.

id or ids field are mandatory

Authorizations:
bearerAuth
query Parameters
id
string
Example: id=138750
ids[]
string
Example: ids[]=138750

Responses