AgencyUSB-Hotel API
Modified on: 2025-08-11 21:42
TABLE OF CONTENTS
- Introduction
- Hotel List(Pull Mode)
- Hotel Products(Pull Mode)
- Hotel Products(Push Mode)
- Retrieve Hotel Products (Push Mode)
Introduction
Notes: Please note that Push Hotel Mode can only be used with Push ARI Mode. Therefore, if you select pushing ARI to the Go platform, you must choose Push Hotel Mode. Conversely, if you select Pull ARI Mode, only Pull Hotel Mode can be combined with it.
DerbySoft Go provides two methods for communicating hotel lists and product information between hotel suppliers and the DerbySoft Go platform.
PULL Hotel Mode:
In this mode, DerbySoft uses Pull APIs to periodically retrieve the list of hotels and products from the hotel provider. Hotel suppliers can manage the status of hotels and products through this API. This set includes two mandatory APIs (indicated by a "☆" symbol).
PUSH Hotel Mode:
In this mode, the hotel supplier proactively pushes hotel products to the DerbySoft Go platform. This set also includes two APIs: one for pushing hotel products to the Go platform and another for hotel suppliers to search for hotel products that are already saved on the Go platform. As in the Pull mode, APIs marked with a "☆" are mandatory to implement.
PULL Hotel APIs:
- ☆ Hotel List (/hotels) - Get all hotels for a specific distributor.
- ☆ Hotel Products (/hotel/{hotelId}) - Get all available products of one hotel to a specific distributor.
PUSH Hotel APIs:
- ☆ Hotel Products(/hotel/{distributorId}) - The Hotel Products API allows hotel suppliers to periodically push hotel information to DerbySoft, which updates this information in real-time.
- Retrieve Hotel Products(/hotel/{supplierId}/{hotelId}) - This API allows hotel suppliers to view activated products for one hotel on the DerbySoft Go platform.
Hotel List(Pull Mode)
This is an API for DerbySoft to call the Supplier's system to get all hotel summary information for a specific distributor.
GET /hotels HTTP/1.1 URL: {{endpoint}}/hotels?distributorId={{distributorId}} Authorization: 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc Accept-Encoding: gzip Content-Encoding: gzip Content-Type: application/json;charset=utf-8
Request Parameters
Name | Description | Required | Type | Example |
---|---|---|---|---|
distributorId | Distributor ID in DerbySoft‘s system | Yes | string | HOTELBEDS |
Response Example
- Success Response (HTTP Status 200)
[ { "hotelId": "100001", "hotelName": "This is a test hotel", "distributorId": "GTA", "status": "Actived" } ]
- Error Response (HTTP Status 500)
{ "errorCode": "InvalidField", "errorMessage": "Invalid Message" }
Response Specification
Attribute | Type | Required | Description | Example |
---|---|---|---|---|
distributorId | string | Yes | Distributor ID in DerbySoft's system | GTA |
hotelId | string | Yes | Hotel ID provided by hotel suppliers, only the following characters are allowed. 1. Digits (0-9) 2. Uppercase letters (A-Z) 3. Hyphen ('-') | 100001 NYABO 00016 PEP-B3T2 B8W7 |
hotelName | string | No | Hotel Name | Test hotel |
status | enum | Yes | Enum: [ Actived, Deactived ] Status in supplier's system | Actived |
Hotel Products(Pull Mode)
This is an API for DerbySoft to call the Supplier's system to get all products of one hotel to a specific distributor. Fee & Cancel Policy are optional fields because some distributors get this information offline instead of through the API.
GET /hotel/{hotelId} HTTP/1.1 URL: {{endpoint}}/hotel/{{hotelId}}?distributorId={{distributorId}} Authorization: 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc Accept-Encoding: gzip Content-Encoding: gzip Content-Type: application/json;charset=utf-8
Request Parameters
Name | Description | Required | Type | Example |
---|---|---|---|---|
hotelId | Hotel ID provided by hotel suppliers, only the following characters are allowed. 1. Digits (0-9) 2. Uppercase letters (A-Z) 3. Hyphen ('-') | Yes | string | 100001 NYABO 00016 PEP-B3T2 B8W7 |
distributorId | Distributor ID in DerbySoft's system | Yes | string | HOTELBEDS |
Response Example
- Success Response (HTTP Status 200)
{ "hotelId": "100001", "hotelName": "This is a test hotel", "distributorId": "GTA", "status": "Actived", "chainCode": "Marriott", "brandCode": "Courtyard", "longitude": 41.40338, "latitude": 2.17403, "city": "string", "country": "string", "state": "string", "currency": "USD", "address": [ "AddressLine1", "AddressLine2", "AddressLine3", "AddressLine4", "AddressLine5" ], "phone": { "countryAccessCode": "string", "areaCityCode": "string", "phoneNumber": "string" }, "settings": { "key1": "value1", "key2": "value2" }, "ariType": "Daily", "timezone": "America/Los_Angeles", "rateType": "AmountBeforeTax", "maxChildAge": 17, "childRateType": "ByAge", "products": [ { "roomId": "10000101", "roomDescription": "Soak in city views in our Deluxe room, which features a well-appointed ensuite bathroom and up-to-date entertainment offerings.", "rateId": "123456", "rateDescription": "Begin your day with a hearty meal.", "stayType": "OverNightRoom", "status": "Actived", "roomName": "Double Room", "rateName": "Bar Rate", "occupancy": { "maxAdult": 3, "maxChild": 2, "maxOccupancy": 3 }, "paymentType": "PayNow", "guarantee": { "guaranteeType": "CCG" }, "cancelPolicies": [ { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-12-31" }, "cancelPolicy": { "code": "AD100P_100P", "description": "Non Refundable" } } ], "fees": [ { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-12-31" }, "fee": { "name": "Service Charge", "type": "Exclusive", "amount": 10, "amountType": "Percent", "chargeType": "PerRoomPerNight", "paymentType": "PayNow", "collectBy": "Distributor" } }, { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-12-31" }, "fee": { "name": "City Tax", "type": "Exclusive", "amount": 5, "amountType": "Fix", "chargeType": "PerPersonPerNight", "paymentType": "PayLater", "collectBy": "Property" } } ] } ] }
- Error Response (HTTP Status 500)
{ "errorCode": "InvalidField", "errorMessage": "Invalid Message" }
Response Specification
hotelId | string | Yes | Hotel ID provided by hotel suppliers, only the following characters are allowed. 1. Digits (0-9) 2. Uppercase letters (A-Z) 3. Hyphen ('-') | 100001 |
hotelName | string | No | Hotel name | This is a test hotel |
distributorId | string | Yes | Distributor ID in DerbySoft's system | GTA |
status | enum | Yes | Enum: [ Actived, Deactived ] Status in supplier's system | Actived |
chainCode | string | No | The chain code may identify a hotel chain or management group, e.g. Hyatt, Hilton. The hotel chain code is decided between suppliers and is optional if the hotel is an independent property that can be identified by the hotelId field alone. | Marriott |
brandCode | string | No | The brand code may identify the brand within a chain, e.g. Courtyard, Hampton Inn. This field is optional if the hotel is an independent property that can be identified by the hotelId field alone. | Courtyard |
longitude | string | No | The information for hotel location. | 41.40338 |
latitude | string | No | The information for hotel location. | 2.17403 |
city | string | No | The information for hotel location. |
|
country | string | No | The information for hotel location. |
|
state | string | No | The information for hotel location. |
|
currency | string | No | The currency code of the hotel. | USD |
address | array[string] | No | Support up to five enumeration values | [ "AddressLine1", "AddressLine2", "AddressLine3", "AddressLine4", "AddressLine5" ] |
phone | object | No | / | / |
@countryAccessCode | string | Yes | / | / |
@areaCityCode | string | No | / | / |
@phoneNumber | string | Yes | / | / |
settings | object | Yes | A common extension object for extra attributes like account, extra setting required by a distributor, etc. | "settings": { |
ariType | enum | Yes | Emun:[ Daily, LOS ] Indicates which ARI model to be used for ARI API. | Daily |
timezone | string | Yes | Timezone of property | America/Los_Angeles |
rateType | enum | Yes | Enum: [ AmountBeforeTax, AmountAfterTax, Both ]
| Both |
maxChildAge | integer | No | If childRateType is set as ByAge, max child age must be provided and greater than zero. | 17 |
childRateType | enum | No | Enum: [ Normal, ByAge, Free, AsAdult ] Indicates which child rate type will be used in ARI OccupancyRate.
| ByAge |
products | array[object] | Yes | / | / |
@roomId | string | Yes | Room ID in supplier's system | 10000101 |
@roomDescription | string | No | / | Soak in city views in our Deluxe room, which features a well-appointed ensuite bathroom and up-to-date entertainment offerings. |
@rateId | string | Yes | Rate ID in supplier's system | 123456 |
@rateDescription | string | No | / | Begin your day with a hearty meal. |
@stayType | enum | No | Enum: [ OverNightRoom, DayUseRoom ] Indicates if the product is specifically for day-use or regular overnight use. The default value is OverNightRoom. | OverNightRoom |
@status | enum | Yes | Enum: [ Actived, Deactived ] | Actived |
@roomName | string | No | Room type name | Double Room |
@rateName | string | No | Rate plan name | Best Available Rate |
products/occupancy | object | Yes | / | / |
@maxAdult | integer | Yes | Max adult count | 3 |
@maxChild | integer | Yes | Max child count | 2 |
@maxOccupancy | integer | Yes | Max occupancy | 3 |
@paymentType | enum | No | Enum: [ PayLater, PayNow ] Indicates the product is prepaid to hotel(PayNow) or pay at hotel(PayLater) | PayNow |
products/guarantee | object | No | / | / |
@guaranteeType | string | Yes | Guarantee information for this room rate. | CCG |
products/cancelPolicies | array[object] | No | / | / |
cancelPolicies/dateRange | object | No | / | / |
@startDate | string | Yes | Start date of date range, format with yyyy-MM-dd | 2018-01-01 |
@endDate | string | Yes | End date of date range, format with yyyy-MM-dd | 2018-01-04 |
cancelPolicies / cancelPolicy | object | No | / | / |
@code | string | Yes | Cancel policy maxLength: 128 | AD100P_100P |
@description | string | No | The description of the cancellation policy maxLength: 1024 | Non Refundable |
products/fees | / | No | / | / |
fees/dateRange | / | No | / | / |
@startDate | string | Yes | Start date of date range, format with yyyy-MM-dd | 2018-01-01 |
@endDate | string | Yes | End date of date range, format with yyyy-MM-dd | 2018-01-04 |
fees/fee | object | No | / | / |
@name | string | Yes | The name of fee or tax | Service Charge |
@type | enum | Yes | Enum: [ Inclusive, Exclusive ] The fee or tax is included in the amount before tax or not. | Exclusive |
@amount | number | Yes | Amount value of fee or tax | 10 |
@amountType | enum | Yes | Enum: [ Fix, Percent ] Indicates how to charge the tax, 10% per room per night in this example. | Percent |
@chargeType | enum | Yes | Enum: [ PerRoomPerNight, PerPersonPerNight, PerRoomPerStay, PerPersonPerStay ] | PerRoomPerNight |
@paymentType | enum | No | Enum: [Distributor, Property] Indicates that the fee (e.g., City Tax, Tourist Tax) should be collected by the hotel(Property) at check-in or by distributors when guests make a reservation(Distributor). Note: The 'paymentType' field will be replaced by 'collectBy' and removed from the API in the future. | PayNow |
@collectBy | enum | No | Enum: [Distributor, Property] Indicates that the fee (e.g., City Tax, Tourist Tax) should be collected by the hotel(Property) at check-in or by distributors when guests make a reservation(Distributor). | Distributor |
Hotel Products(Push Mode)
This is an API for suppliers to call the DerbySoft system to push hotel information to DerbySoft periodically. DerbySoft would update the hotel information in real-time.
POST /hotel/{distibutorId}HTTP/1.1 URL: {DerbySoft-Go-Endpoint}/hotel/{distibutorId} Authorization: 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc Accept-Encoding: gzip Content-Encoding: gzip Content-Type: application/json;charset=utf-8
Request Example
{ "header": { "sourceId": "HHBIJSOPLS", "distributorId": "GTA", "version": "v4", "token": "18393849028490234" }, "hotelId": "100001", "hotelName": "This is a test hotel", "status": "Actived", "chainCode": "Marriott", "brandCode": "Courtyard", "longitude": "41.40338", "latitude": "2.17403", "city": "string", "country": "string", "state": "string", "currency": "USD", "address": [ "AddressLine1", "AddressLine2", "AddressLine3", "AddressLine4", "AddressLine5" ], "phone": { "countryAccessCode": "string", "areaCityCode": "string", "phoneNumber": "string" }, "settings": { "key": "value" }, "ariType": "Daily", "timezone": "America/Los_Angeles", "rateType": "AmountBeforeTax", "maxChildAge": 17, "childRateType": "ByAge", "products": [ { "roomId": "10000101", "roomDescription": "Soak in city views in our Deluxe room, which features a well-appointed ensuite bathroom and up-to-date entertainment offerings.", "rateId": "123456", "rateDescription": "Begin your day with a hearty meal.", "stayType": "OverNightRoom", "status": "Actived", "roomName": "Double Room", "rateName": "Bar Rate", "occupancy": { "maxAdult": 3, "maxChild": 2, "maxOccupancy": 3 }, "paymentType": "PayNow", "guarantee": { "guaranteeType": "CCG" }, "cancelPolicies": [ { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-01-04" }, "cancelPolicy": { "code": "AD100P_100P", "description": "Non Refundable" } } ], "fees": [ { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-01-04" }, "fee": { "name": "Service Charge", "type": "Exclusive", "amount": 10, "amountType": "Percent", "chargeType": "PerRoomPerNight", "collectBy": "Distributor" } } ] } ] }
Request Specification
Attribute | Type | Required | Description | Example |
---|---|---|---|---|
header | / | Yes | object | / |
@sourceId | Supplier ID in DerbySoft's system Max Length: 32 | Yes | string | PEGASUA |
@distributorId | Distributor ID in DerbySoft's system Max Length: 32 | Yes | string | TUI |
@version | Version of API Max Length: 20 | Yes | string | v4 |
@token | Echo Token Max Length: 64 | Yes | string | 18393849028490234 |
hotelId | string | Yes | Hotel IDs provided by hotel suppliers contain the following characters only: 1. Digits (0-9) 2. Uppercase letters (A-Z) 3. Hyphen ('-') | GATHI |
hotelName | string | No | Hotel name in supplier's system | This is a test hotel |
supplierId | string | Yes | Supplier ID in DerbySoft's system | HILTON |
status | enum | Yes | Enum: [ Actived, Deactived ] Status in supplier's system | Actived |
chainCode | string | No | The chain code may identify a hotel chain or management group, e.g. Hyatt, Hilton. The hotel chain code is decided between suppliers and is optional if the hotel is an independent property that can be identified by the hotelId field alone. | Marriott |
brandCode | string | No | The brand code may identify the brand within a chain, e.g. Courtyard, Hampton Inn. This field is optional if the hotel is an independent property that can be identified by the hotelId field alone. | Waldorf |
longitude | string | No | The information for hotel location. | 41.40338 |
latitude | string | No | The information for hotel location. | 2.17403 |
city | string | No | / | / |
country | string | No | / | / |
state | string | No | / | / |
currency | string | No | The currency code of the hotel. | USD |
address | array | No | Support up to five enumeration values | [ "AddressLine1", "AddressLine2", "AddressLine3", "AddressLine4", "AddressLine5" ] |
phone | object | No | / | / |
@countryAccessCode | string | Yes | / | / |
@areaCityCode | string | No | / | / |
@phoneNumber | string | Yes | / | / |
settings | object | No | An additional field is used for transmitting extra settings, accounts, etc that are required by Distributors | { "key": "value" } |
ariType | enum | Yes | Emun:[ Daily, LOS ] Indicates which ARI model be used for ARI API | Daily |
timezone | string | Yes | Timezone of property | America/Los_Angeles |
rateType | enum | Yes | Emun:[ AmountBeforeTax, AmountAfterTax, Both ] Indicates which rate will be used in ARI and Reservation.
| AmountBeforeTax |
maxChildAge | integer | No | maxChildAge will be provided If childRateType is ByAge. | / |
childRateType | enum | No | Enum: [ Normal, ByAge, Free, AsAdult ] Indicates which child rate type will be used in ARI OccupancyRate.
| ByAge |
products | array | Yes | / | / |
@roomId | string | Yes | Room ID in supplier's system | King |
@roomName | string | No | Room type name Max length: 256 | King Room |
@roomDescription | string | No | / | Soak in city views in our Deluxe room, which features a well-appointed ensuite bathroom and up-to-date entertainment offerings. |
@rateId | string | Yes | Rate ID in supplier's system | BAR |
@rateName | string | No | Rate plan name Max length: 256 | Best Available Rate |
@rateDescription | string | No | / | Begin your day with a hearty meal |
@stayType | enum | No | Enum: [ OverNightRoom, DayUseRoom ] This tag indicates if the product is specifically for day-use or regular overnight use. The default is OverNightRoom. | OverNightRoom |
@status | enum | Yes | Enum: [ Actived, Deactived ] | Actived |
products/occupancy | / | Yes | / | / |
@maxAdult | integer | Yes | Max adult count | 3 |
@maxChild | integer | Yes | Max child count | 2 |
@maxOccupancy | integer | Yes | Max occupancy | 3 |
@paymentType | enum | No | Enum: [ PayLater, PayNow ] Indicates the product is prepaid to the hotel(PayNow) or pay at the hotel(PayLater). | PayNow |
products/guarantee | / | No | / | / |
@guaranteeType | string | Yes | Guarantee information for this room rate. | CCG |
products/cancelPolicies | / | No | / | / |
cancelPolicies/dateRange | object | No | / | / |
@startDate | string | Yes | Start date of date range, format with yyyy-MM-dd | 2018-01-01 |
@endDate | string | Yes | End date of date range, format with yyyy-MM-dd | 2018-01-04 |
cancelPolicies/cancelPolicy | object | No | / | / |
@code | string | Yes | Code of cancel policy Max Length: 128 | AD100P_100P |
@description | string | No | The description of the cancellation policy Max Length: 1024 | Non Refundable |
products/fees | / | No | / | / |
fees/dateRange | / | No | / | / |
@startDate | string | Yes | Start date of date range, format with yyyy-MM-dd | 2018-01-01 |
@endDate | string | Yes | End date of date range, format with yyyy-MM-dd | 2018-01-04 |
fees/fee | object | No | / | / |
@name | string | Yes | The name of the fee or tax | Service Charge |
@type | enum | Yes | Enum: [ Inclusive, Exclusive ] Indicates fees or tax is included in the amount before tax or not. | Exclusive |
@amount | number | Yes | The amount of fee or tax | 10 |
@amountType | enum | Yes | Enum: [ Fix, Percent ] Indicates how to charge the tax, 10% per room per night in this example. | Percent |
@chargeType | enum | Yes | Enum: [ PerRoomPerNight, PerPersonPerNight, PerRoomPerStay, PerPersonPerStay ] | PerRoomPerNight |
@collectBy | enum | No | Enum: [Distributor, Property] Indicates that the fee (e.g., City Tax, Tourist Tax) should be collected by the hotel(Property) at check-in or by distributors when guests make a reservation(Distributor). | Distributor |
Response Example
- Success Response (HTTP Status 200)
{ "header": { "sourceId": "HHBIJSOPLS", "distributorId": "GTA", "version": "v4", "token": "18393849028490234" }, "hotelId": "GATHI" }
- Error Response (HTTP Status 401)
{ "errorCode": "InvalidField", "errorMessage": "Invalid token" }
- Error Response (HTTP Status 500)
{ "errorCode": "InvalidField", "errorMessage": "Invalid Message" }
Response Specification
Name | Description | Required | Type | Example |
---|---|---|---|---|
header | / | Yes | object | / |
@sourceId | Supplier ID in DerbySoft's system Max Length: 32 | Yes | string | PEGASUA |
@distributorId | Distributor ID in DerbySoft's system Max Length: 32 | Yes | string | TUI |
@version | Version of API Max Length: 20 | Yes | string | v4 |
@token | Echo Token Max Length: 64 | Yes | string | 18393849028490234 |
hotelId | Hotel ID in Supplier's system | Yes | string | 10001 |
Retrieve Hotel Products (Push Mode)
This API will be used by the supplier to see what products have been activated on the DerbySoft side for one hotel.
GET /hotel/{supplierId}/{hotelId}?distributorId={distributorId} HTTP/1.1 URL: {DerbySoft-Go-Endpoint}/hotel/{supplierId}/{hotelId}?distributorId={distributorId} Authorization: 53ac07777cdffac2d53000002d698728ce964432d7167596bc005c5fc Accept-Encoding: gzip Content-Encoding: gzip Content-Type: application/json;charset=utf-8
Request Parameters
Attribute | Type | Required | Description | Example |
---|---|---|---|---|
supplierId | string | Yes | Supplier ID in DerbySoft's system | TUI |
hotelId | string | Yes | Hotel ID provided by hotel suppliers, only the following characters are allowed. 1. Digits (0-9) 2. Uppercase letters (A-Z) 3. Hyphen ('-') | 100001 NYABO 00016 PEP-B3T2 B8W7 |
distributorId | string | Yes | Distributor ID in DerbySoft's system | Test hotel |
Response Example
- Success Response (HTTP Status 200)
{ "hotelId": "100001", "hotelName": "This is a test hotel", "distributorId": "GTA", "status": "Actived", "chainCode": "Marriott", "brandCode": "Courtyard", "longitude": "41.40338", "latitude": "2.17403", "city": "string", "country": "string", "state": "string", "currency": "USD", "address": [ "AddressLine1", "AddressLine2", "AddressLine3", "AddressLine4", "AddressLine5" ], "phone": { "countryAccessCode": "string", "areaCityCode": "string", "phoneNumber": "string" }, "settings": { "key": "value" }, "ariType": "Daily", "timezone": "America/Los_Angeles", "rateType": "AmountBeforeTax", "maxChildAge": 17, "childRateType": "ByAge", "products": [ { "roomId": "10000101", "roomDescription": "Soak in city views in our Deluxe room, which features a well-appointed ensuite bathroom and up-to-date entertainment offerings.", "rateId": "123456", "rateDescription": "Begin your day with a hearty meal.", "stayType": "OverNightRoom", "status": "Actived", "roomName": "Double Room", "rateName": "Bar Rate", "occupancy": { "maxAdult": 3, "maxChild": 2, "maxOccupancy": 3 }, "paymentType": "PayNow", "guarantee": { "guaranteeType": "CCG" }, "cancelPolicies": [ { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-01-04" }, "cancelPolicy": { "code": "AD100P_100P", "description": "Non Refundable" } } ], "fees": [ { "dateRange": { "startDate": "2018-01-01", "endDate": "2018-01-04" }, "fee": { "name": "Service Charge", "type": "Exclusive", "amount": 10, "amountType": "Percent", "chargeType": "PerRoomPerNight", "collectBy": "Distributor" } } ] } ] }
- Error Response (HTTP Status 401)
{ "errorCode": "InvalidField", "errorMessage": "Invalid token" }
- Error Response (HTTP Status 500)
{ "errorCode": "InvalidField", "errorMessage": "Invalid Message" }
Response Specification
Attribute | Type | Required | Description | Example |
---|---|---|---|---|
header | / | Yes | object | / |
@sourceId | Supplier ID in DerbySoft's system Max Length: 32 | Yes | string | PEGASUA |
@distributorId | Distributor ID in DerbySoft's system Max Length: 32 | Yes | string | TUI |
@version | Version of API Max Length: 20 | Yes | string | v4 |
@token | Echo Token Max Length: 64 | Yes | string | 18393849028490234 |
hotelId | string | Yes | Hotel IDs provided by hotel suppliers contain the following characters only: 1. Digits (0-9) 2. Uppercase letters (A-Z) 3. Hyphen ('-') | GATHI |
hotelName | string | No | Hotel name in supplier's system | This is a test hotel |
supplierId | string | Yes | Supplier ID in DerbySoft's system | HILTON |
status | enum | Yes | Enum: [ Actived, Deactived ] Status in supplier's system | Actived |
chainCode | string | No | The chain code may identify a hotel chain or management group, e.g. Hyatt, Hilton. The hotel chain code is decided between suppliers and is optional if the hotel is an independent property that can be identified by the hotelId field alone. | Marriott |
brandCode | string | No | The brand code may identify the brand within a chain, e.g. Courtyard, Hampton Inn. This field is optional if the hotel is an independent property that can be identified by the hotelId field alone. | Waldorf |
longitude | string | No | The information for hotel location. | 41.40338 |
latitude | string | No | The information for hotel location. | 2.17403 |
city | string | No | / | / |
country | string | No | / | / |
state | string | No | / | / |
currency | string | No | The currency code of the hotel. | USD |
address | array | No | Support up to five enumeration values | [ "AddressLine1", "AddressLine2", "AddressLine3", "AddressLine4", "AddressLine5" ] |
phone | object | No | / | / |
@countryAccessCode | string | Yes | / | / |
@areaCityCode | string | No | / | / |
@phoneNumber | string | Yes | / | / |
settings | object | No | An additional field is used for transmitting extra settings, accounts, etc that are required by Distributors | { "key": "value" } |
ariType | enum | Yes | Emun:[ Daily, LOS ] Indicates which ARI model be used for ARI API | Daily |
timezone | string | Yes | Timezone of property | America/Los_Angeles |
rateType | enum | Yes | Emun:[ AmountBeforeTax, AmountAfterTax, Both ] Indicates which rate will be used in ARI and Reservation.
| AmountBeforeTax |
maxChildAge | integer | No | maxChildAge will be provided If childRateType is ByAge. | / |
childRateType | enum | No | Enum: [ Normal, ByAge, Free, AsAdult ] Indicates which child rate type will be used in ARI OccupancyRate.
| ByAge |
products | array | Yes | / | / |
@roomId | string | Yes | Room ID in supplier's system | King |
@roomName | string | No | Room type name Max length: 256 | King Room |
@roomDescription | string | No | / | Soak in city views in our Deluxe room, which features a well-appointed ensuite bathroom and up-to-date entertainment offerings. |
@rateId | string | Yes | Rate ID in supplier's system | BAR |
@rateName | string | No | Rate plan name Max length: 256 | Best Available Rate |
@rateDescription | string | No | / | Begin your day with a hearty meal |
@stayType | enum | No | Enum: [ OverNightRoom, DayUseRoom ] This tag indicates if the product is specifically for day-use or regular overnight use. The default is OverNightRoom. | OverNightRoom |
@status | enum | Yes | Enum: [ Actived, Deactived ] | Actived |
products/occupancy | / | Yes | / | / |
@maxAdult | integer | Yes | Max adult count | 3 |
@maxChild | integer | Yes | Max child count | 2 |
@maxOccupancy | integer | Yes | Max occupancy | 3 |
@paymentType | enum | No | Enum: [ PayLater, PayNow ] Indicates the product is prepaid to the hotel(PayNow) or pay at the hotel(PayLater). | PayNow |
products/guarantee | / | No | / | / |
@guaranteeType | string | Yes | Guarantee information for this room rate. | CCG |
products/cancelPolicies | / | No | / | / |
cancelPolicies/dateRange | object | No | / | / |
@startDate | string | Yes | Start date of date range, format with yyyy-MM-dd | 2018-01-01 |
@endDate | string | Yes | End date of date range, format with yyyy-MM-dd | 2018-01-04 |
cancelPolicies/cancelPolicy | object | No | / | / |
@code | string | Yes | Code of cancel policy Max Length: 128 | AD100P_100P |
@description | string | No | The description of the cancellation policy Max Length: 1024 | Non Refundable |
products/fees | / | No | / | / |
fees/dateRange | / | No | / | / |
@startDate | string | Yes | Start date of date range, format with yyyy-MM-dd | 2018-01-01 |
@endDate | string | Yes | End date of date range, format with yyyy-MM-dd | 2018-01-04 |
fees/fee | object | No | / | / |
@name | string | Yes | The name of the fee or tax | Service Charge |
@type | enum | Yes | Enum: [ Inclusive, Exclusive ] Indicates fees or tax is included in the amount before tax or not. | Exclusive |
@amount | number | Yes | Amount value of fee or tax | 10 |
@amountType | enum | Yes | Enum: [ Fix, Percent ] Indicates how to charge the tax, 10% per room per night in this example. | Percent |
@chargeType | enum | Yes | Enum: [ PerRoomPerNight, PerPersonPerNight, PerRoomPerStay, PerPersonPerStay ] | PerRoomPerNight |
@collectBy | enum | No | Enum: [Distributor, Property] Indicates that the fee (e.g., City Tax, Tourist Tax) should be collected by the hotel(Property) at check-in or by distributors when guests make a reservation(Distributor). | Distributor |
Notes:
Please follow the process below to activate/deactivate hotels or products. If the process doesn't work for you, please kindly share with us your actual scenario.
*** Please note that when deactivating a hotel or product, please indicate the status as Deactived for the hotel or product through the API rather than removing it from the response. Otherwise, the hotel or product will be processed as Deactivated by default, and will be close out for the rooms.
- To Activate or Deactivate hotels, GO Suppliers activate or deactivate hotels in their system. Upon returning the status of each hotel is either Actived or Deactived on the response of the Hotel List and Hotel Product API.
- To Activate or Deactivate products, GO Suppliers activate or deactivate products in their system. Upon returning the status of each product is either Actived or Deactived on the response of the Hotel Product API.
Did you find it helpful? Yes No
Send feedback