How to use it?
HTTP Methods
The API is accessible only through the Https protocol and only accepts HTTP GET requests.
It's made to retrieve information only – and not to modify it in any way.
UAT base URL:
"https://rec-api.accor.com/catalog"
PRO base URL:
"https://api.accor.com/catalog/"
UAT Example: "https://rec-api.accor.com/catalog/v1/hotels/3434/surroundings"
HTTP Response codes
We use conventional HTTP response codes to indicate the success or failure of an API request.
- Codes in the 2xx range indicate success.
- Codes in the 4xx range indicate an error.
- Codes in the 5xx range indicate an server error.
Some 4xx errors that could be handled programmatically include an error code that briefly explains the error reported.
Squiggly Filter
Our API supports Squiggly, the Squiggly Filter is a Jackson JSON PropertyFilter, which selects properties of an object/list/map using a subset of the Facebook Graph API filtering syntax.
The easiest way to use this feature is to filter fields on the querystring like so:
- ?fields=type,formats.format
HTTP ACCEPT-LANGUAGE
Our API supports, with certain qualifications, the ability to specify languages as part of an HTTP request, using the ACCEPT-LANGUAGE HTTP header. The Hotel surroundings API honors this header where possible, selecting a language from the ACCEPT-LANGUAGE header and returning messages in that language.
When the ACCEPT-LANGUAGE header contains no language or a language that the API can't support, messages are returned in a default language, in this case it will be English.
Example
Using CATALOG Hotel Surroundings
This service will provide you with the surroundings informations of a hotel .
{
"surroundings": [
{
"category": {
"code": "ARTS_CULTURE_ENTERTAINMENT",
"label": "Arts, culture and entertainment"
},
"places": [
{
"name": "ROYAL FESTIVAL HALL",
"orientation": {
"code": "NE",
"label": "North east"
},
"type": {
"code": "CINE",
"label": "Cinema district"
},
"access": {
"distance": {
"km": 4,
"miles": 2.490000009536743
},
"duration": {
"walk": {
"value": 35,
"unit": "MINUTES"
},
"drive": {
"value": 15,
"unit": "MINUTES"
}
},
"transports": []
}
},
{
"name": "MME TUSSAUD MUSEUM",
"orientation": {
"code": "E",
"label": "East"
},
"type": {
"code": "CULT",
"label": "Cultural centre"
},
"access": {
"distance": {
"km": 1.5,
"miles": 0.9300000071525574
},
"duration": {
"walk": {
"value": 12,
"unit": "MINUTES"
},
"drive": {
"value": 4,
"unit": "MINUTES"
}
},
"transports": []
}
}
]
},
{
"category": {
"code": "NATURAL_PLACE",
"label": "Natural places"
},
"places": [
{
"name": "Natural Hotel",
"orientation": {
"code": "E",
"label": "East"
},
"type": {
"code": "LAKE",
"label": "Lake"
},
"access": {
"distance": {
"km": 0.019999999552965164,
"miles": 1.2400000095367432
},
"duration": {
"walk": {
"value": 20,
"unit": "MINUTES"
},
"drive": {
"value": 5,
"unit": "MINUTES"
}
},
"transports": [
{
"code": "SHUTTLE",
"label": "Shuttle",
"paying": false,
"details": {
"information": "Destination natural",
"frequency": 12,
"types": [
{
"code": "ON_CALL",
"label": "Shuttle on call"
},
{
"code": "SCHEDULED",
"label": "Shuttle scheduled"
}
],
"schedules": [
{
"type": "OPEN",
"name": "Testing",
"from": "2022-01-03",
"to": "2023-02-23",
"days": []
}
]
}
},
{
"code": "LIMOUSINE",
"label": "Limousine",
"cost": 5.010000228881836,
"paying": true
},
{
"code": "TAXI",
"label": "Taxi",
"cost": 0.05000000074505806,
"paying": true
}
]
}
}
]
},
{
"category": {
"code": "TRANSPORTATION",
"label": "Transportation"
},
"places": [
{
"name": "LGW",
"orientation": {
"code": "N",
"label": "North"
},
"type": {
"code": "HEXI",
"label": "Highway exit"
},
"access": {
"distance": {
"km": 56,
"miles": 34.79999923706055
},
"duration": {
"walk": {
"value": 0,
"unit": "MINUTES"
},
"drive": {
"value": 75,
"unit": "MINUTES"
}
},
"transports": []
}
},
{
"name": "WEMBLEY",
"orientation": {
"code": "SE",
"label": "South east"
},
"type": {
"code": "NPT1",
"label": "Domestic airport 1 - full name"
},
"access": {
"distance": {
"km": 15,
"miles": 9.319999694824219
},
"duration": {
"walk": {
"value": 0,
"unit": "MINUTES"
},
"drive": {
"value": 45,
"unit": "MINUTES"
}
},
"transports": []
}
}
]
}
]
}
Error example :
{
"title": "HOTEL_NOT_FOUND",
"status": "404",
"detail": "The hotel does not exist",
"requestId": "dc33f7a3-6958-4b8b-907b-843cf61072fb"
}