DE | ES
Help us grow our integration pool and get access to a large amount of potential customers which might be interested in your products and services.
For the best possible UX and acceptance of your integration among our customers please read the following instructions carefully.
Our API uses graphQL. If you´re not familiar with graphQL please visit https://graphql.org. Use a compliant tool to query it.
Contact us and explain us your usecase. We´ll hook up a demohotel and provide you with an api_key so you can start querying and build your integration.
Your are done, great! Depending on the type of your integration we might ask you to demonstrate to us some capabilities and/or functions. Don´t worry, we don´t bite. We only want to make sure that our customers will enjoy the best UX.
As with many situations, there is a few do´s and dont´s we´re asking you to adhere to:
Data privacy is essential. Although our customers have to authorize your integration for you being able to actually query data, we expect you to comply to GDPR and handle data with care.
Throttling applies. Don´t query the API >30x per minute or your IP will be banned temporarily. And no, it doesn´t mean you have to query it up to threshold level.
Keep your integration up to date. We´re happy to support you promoting your integration to our customers through various channels such as listing on our website, newsletters, social media and other marketing channels.
However we´d like to ask you to make sure your integration works seamless and is well maintained. If you decide to discontinue offering your integration please let us know.
There is some particularities about the datastructure that is important to understand:
[client] is referring to the reservation owner, which can be a company or a person.
If the reservation owner is a company, a person can additionally be defined as contact person [contact]. Each reservation may contain 1 (= single room booking) or more (= group booking) rooms.
Keep in mind that the reservation owner is the legal contracting party responsible for the reservation but doesn't necessarily be the traveller which will eventually arrive at the hotel.
[guests] returns the name of the persons which will eventually physically arrive at the hotel, therefore [guests] can only be a person, never a company. [first_guest] is the name a room is booked on, the other names are co-travellers in each room.
If your integration is related to some in-room devices, such as digital guest folders or smart-TV´s or tied to particular guests you might want to consider adding self-checkout capabilities to it.
If enabled [selfcheckout] returns a url which leads to a page displaying all room orders in a invoice preview and enables to execute the checkout himself including the payment. Self-Checkout happens on room-level not reservation level.
Note that not all fields are exposed by default. Some may be activated by the customers in their hotel account, some only through our support.
If your integration requires additional data feel free to contact us. One of the big advantages of graphQL is that there is no versioning. We can add new fields anytime if needed.
Keep in mind that graphQL´s main principle is: you get what you ask for, so it´s up to you to ask the right questions.
{
{
room_stays(filter: { date: "2019-09-18" }, first: 2) {
edges {
node {
id
room_setup {
name
}
guests {
...Guest
}
first_guest {
...Guest
}
reservation_from
reservation_to
check_in
check_out
selfcheckout_enabled
selfcheckout_url
}
cursor
}
pageInfo {
startCursor
endCursor
hasNextPage
hasPreviousPage
}
}
}
fragment Guest on Client {
firstname
lastname
}
{
{
room_stays(filter: { date: "2019-09-18" }, first: 2) {
edges {
node {
id
room_setup {
name
}
guests {
...Guest
}
first_guest {
...Guest
}
reservation_from
reservation_to
check_in
check_out
selfcheckout_enabled
selfcheckout_url
}
cursor
}
pageInfo {
startCursor
endCursor
hasNextPage
hasPreviousPage
}
}
}
fragment Guest on Client {
firstname
lastname
}
you´re done, great! Let´s promote it.
Once you have completed building your integration, depending on what your integration is build for, we might ask you to demonstrate certain capabilities of it.
Parallel to it please provide us a short company description (max 400 chars) for our partner listing page.
As better we understand what your product is doing, as better we can advice our customers and share with them the benefits of your product(s). Therefore please provide a integration description for our sales team so they understand what your integration does and to whom it may be helpful.