Skip to main content

Book

The Book operation requests a booking confirmation for the specified optionId obtained from the Quote. It provides a concise summary of the option, along with the reservation status. Please note that the returned information may vary depending on the Seller. The returned fields include:

  • holder
  • hotel
  • price
  • cancelPolicy
  • bookingID
  • status (Make sure you add this field to your Query in order to receive the reservation status in the book response.)
  • clientReference (The booking locator in your system - alphanumerical value.)
  • supplierReference (Make sure you add this field to your Query in order to receive the provider locator in the book response.)

Mutation Overview​

This mutation offers versatility in book options, with certain fields marked as mandatory (optionRefId, clientReference, holder etc.) and others as optional (language, deltaPrice, paymentCard etc.). This flexibility empowers you to create a personalized Book Multation, tailoring the requested fields to your specific needs.

When creating your book mutation, you have two different inputs to fill based on your specific needs:

  1. Input
  2. Settings
mutation {
hotelX {
book
input: {}
settings: {}
}
}
Remember
It's important to note that even if certain fields in the "criteria" or "settings" inputs are labeled as optional, we still need to use some value internally. This value will either come from your query/mutation request or your default settings. You have the ability to manage your default API settings by visiting the API Settings section on our website.

1. Input​

To specify your book input you need to use the input HotelBookInput in your mutation variables:

{
"bookInput" : {
"optionRefId" : "11!11?1$241028?241029?1?1?0?ES?ES?es?EUR?0?2?1?1?1?0?15091142?BAR[%@BAR?146.0$0$false$EUR$$0$?1|30#30|1|2024-10-28|1|4132467|4132468|1|11|0?2269!2269?30$30??Double Standard?1??After$146.0!Before$146.0!ExpireDate$29/10/2024!mercado$ES!tgx_sess$f6152cba-f792-4e81-a2c1-e73ca63ecd02?OK?Sith?0?",
"clientReference" : "test_0123456789",
"deltaPrice" : {
"amount" : 10,
"percent" : 10,
"applyBoth" : true
},
"holder" : {
"name" : "Jane",
"surname" : "Doe"
},
"remarks" : "This is just a test booking! Feel free to include any extra information in the remarks section that you'd like the supplier to know.",
"rooms" : [
{
"occupancyRefId" : 1,
"paxes" : [
{
"name" : "Jane",
"surname" : "Doe",
"age" : 30
},
{
"name" : "John",
"surname" : "Smith",
"age" : 30
}
]
}
]
}
}

Mandatory input:

  • optionRefId (Identifier of the option used in Quote.)
  • clientReference (Booking ID in client's system.)
  • holder
  • rooms

Optional input:

  • language
  • deltaPrice (Indicates price variation permitted by the Buyer.)
  • paymentCard (If the payment is done by credit card, it's mandatory to specify the payment type and the credit card information, unless you're using our VCC Plugin to generate virtual credit cards. Know more about VCC payments here.)
  • remarks (Any customer comments for the supplier to consider.)
Key Recommendations
  • Customize the timeout according to your needs, taking into consideration the maximum values in Book is 180,000ms.

  • Consider that the deltaPrice sets the price tolerance between Quote and Book. For instance, if the Quote stage displays a price of 100€ and the deltaPrice is 5, a change up to 105€ will still secure a confirmed booking.

Payment Card​

If the option or rate you want to book has a payment type such as DIRECT, CARD_BOOKING, or CARD_CHECK_IN, it is mandatory to provide payment card information when making the booking. This should be done using the PaymentCardInput in the book mutation.

Note that isVCC, virtualCreditCard and threeDomainSecurity, are all optionals.

{
"type": "VI",
"holder": {
"name": "test_name",
"surname": "test_surname"
},
"number": "4874495143042809",
"CVC": "330",
"expire": {
"month": 9,
"year": 2028
},
"isVCC": true,
"virtualCreditCard": {
"activationDate": "2020-10-02",
"deactivationDate": "2021-01-02",
"currentBalance": 50.58,
"currencyCode": "EUR"
},
"threeDomainSecurity": {
"version": "1.0.1",
"DSTransactionID": "transaction 1",
"XID": "id123456",
"ECI": "05",
"CAVV": "CAVV",
"payerResponse": "base64xml response",
"payerResponseStatus": "AUTHENTICATION_SUCCESS",
"cardEnrolledStatus": "CARD_ENROLLED",
"merchantName": "test_name",
"signatureStatus": "SIGNATURE_NOT_VALIDATED"
}
}
Possible values for the threeDomainSecurity fields
Visa, American Express, Diners Club and JCB
ECI ValueDescription
053DS authentication was successful, transactions are secured by 3DS.
06Authentication was attempted but was not or could not be completed; possible reasons being either the card or its Issuing Bank has yet to participate in 3DS.
073DS authentication is either failed or could not be attempted; possible reasons being both card and Issuing Bank are not secured by 3DS, technical errors, or improper configuration.

Mastercard
ECI ValueDescription
003DS authentication is either failed or could not be attempted; possible reasons being both card and Issuing Bank are not secured by 3DS, technical errors, or improper configuration.
013DS authentication was attempted but was not or could not be completed; possible reasons being either the card or its Issuing Bank has yet to participate in 3DS, or cardholder ran out of time to authorize.
023DS authentication is successful.
Payer response status
Status ValueDescription
AUTHENTICATION_SUCCESSSuccessful Authentication.
AUTHENTICATION_FAILEDFailed Authentication.
AUTHENTICATION_INCOMPLETEUnable to complete Authentication.
TRANSACTION_ATTEMPT_SUCCESS_ASuccessful Attempts Transaction.
TRANSACTION_ATTEMPT_SUCCESS_BYou can proceed to authorisation using the information received.
AUTHENTICATION_REJECTEDAuthentication Rejected.
Card enrollment status
Status ValueDescription
CARD_ENROLLEDCardholder is enrolled. Bank is participating in 3-D Secure protocol and will return the ACSUrl.
CARD_NOT_ENROLLEDCardholder Not Participating – Cardholder is not enrolled.
CANT_AUTHENTICATEUnavailable. The DS or ACS is not available for authentication at the time of the request.
Signature verification status
Status ValueDescription
SIGNATURE_VALIDATEDSignature of the PARes has been validated successfully.
SIGNATURE_NOT_VALIDATEDPARes could not be validated.

2. Settings​

Settings are the common configurations used to construct requests to the supplier/s. By default, we apply the same configuration to all Hotel-X clients.

To specify your quote settings you need to use the HotelSettingsInput input in your query variables:

{
"settings": {
"client": "client_demo",
"context": "HOTELTEST",
"testMode": true,
"auditTransactions": false,
"timeout": 60000
}
}

Mandatory Settings:

  • client
  • context (You have the flexibility to choose between using the supplier's context or your own, depending on which codes you want to see in the response. If you prefer to receive responses with your custom codes, please ensure that your context code is linked to the mapping files that you've previously uploaded to your FTP account.)
  • timeout (Timeout in milliseconds for the supplier connection. Won't close client connection if exceeded.)

Optional Settings:

  • group
  • auditTransactions
  • suppliers (Each one contains its own code, settings and accesses.)
  • plugins
  • testMode (This flag allows only the accesses checked as test.)
  • clientTokens (Used to identify the origin of the request, this is only used in plugins.)
  • businessRules
Key Recommendations
  • Customize the timeout according to your needs, taking into consideration the maximum values in Book is 180,000ms.

  • Set the auditTransaction to "true" in Book when investigating errors.

Important: Test Bookings

For development and testing purposes, you are provided with the supplier test HOTELTEST (accessCode 2). We recommend using this during your development phase.

However, if you prefer testing with real suppliers, please note that any bookings made using test access but involving live suppliers are your responsibility, and must be cancelled in order to avoid any booking costs from Travelgate. This also means that the Buyer must handle any costs directly with the supplier if bookings are not canceled. Even if an access is labeled as "live" or "production" but uses test credentials internally, you're still responsible for any bookings made and not cancelled. Please keep this in mind when using our API services.

Response Considerations​

Here are some key points to keep in mind about the response received:

Book Status​

Once a Book (Reservation) method is run, our API response will provide its book status. This status represents the current status of the reservation and can be categorized into four possible values:

StatusDescription
OKThe reservation was successfully completed without any issues.
ON_REQUESTPlease note that a Book status may change over time: you may receive an ON_REQUEST status in Book response, and after running a Booking Query some seconds later the status may have already changed to OK.
UNKNOWNDuring the reservation process, an issue led to an unknown reservation status. The Buyer is responsible for verifying with the Seller that the booking has been confirmed.
CANCELLEDThe booking attempt was unsuccessful, and due to a supplier error or timeout, the system has automatically canceled the reservation to prevent further issues.

Query Inputs​

HotelSettingsInput (INPUT_OBJECT)
Settings are the common configurations used to construct requests to the supplier/s. By default, we apply the same configuration to all Hotel-X clients in our back system.

context (String)
Indicates the context of the I/O codes (hotel, board, room and rates)

client (ID)
Client name set in TGX, present only if the authorization header is of the JWT type. It is used to modify the user initially set in the preload.

timeout (Int)
Specifies the time limit, in milliseconds, for connecting with suppliers. If multiple suppliers are involved, this timeout applies to all of them. If a supplier exceeds this time limit, the connection to that supplier will be cut. However, Travelgate will keep the connection with the client even if this timeout is exceeded. If not set, the value saved in your Hotel-X API default settings will be used.

operationTimeout (Int)
Defines the maximum time, in milliseconds, before an operation is cancelled by our system. Once this time is reached, the operation will be aborted and an error will be returned. This timeout is for the Hotel-X layer and should be set to a higher value than the timeout for suppliers. For example, you could specify timeout as 20000ms and operationTimeout as 22000ms. This means that we will send a timeout of 20000ms to the suppliers and will close the connection at 22000ms if the operationTimeout is exceeded. Optional. @deprecated(reason: "deprecated from 2024-11-11.")

auditTransactions (Boolean)
Returns all the transactions exchanged with the supplier.

businessRules (BusinessRulesInput)
Business rules

optionsQuota (Int)
The maximum number of options returned per board in the search query. If not set, the value saved in your Hotel-X API default settings will be used.

businessRulesType (Enum of BusinessRulesType)
Different business rules to filter the returned options.
Possible values:
CHEAPER_AMOUNT
ROOM_TYPE

suppliers (HotelXSupplierInput)
Array of suppliers. Each one contains its own code, settings and accesses.

settings (SettingsBaseInput)
You can configure an special settings for any supplier. This level overwrites the avail settings level but not the access settings level.

timeout (Int)
Milliseconds before the connection is closed.

auditTransactions (Boolean)
Specifies if the exachanged transactions with the supplier have to be logged or not.

businessRules (undefined)
Business rules

currency (Currency)
Currency in ISO 4217 standard

commitRequired (Boolean)
Indicates if the book will be confirmed in 1 or 2 steps

codeΒ  *Β  (String)
Code that represents a supplier in our system. This information is mandatory.

accesses (HotelXAccessInput)
Array of accesses that can overwrite an existing access information or include a new access for this avail.

accessIdΒ  *Β  (ID)
The accessID used to identify the existing access in our Back Office in order to overwrite it. Acts as an identifier in this search. It can either exist or not.

configuration (ConfigurationInput)
Information required to access the supplier s system.

username (String)
User name for the connection.

password (String)
Password for the connection

urlsΒ  *Β  (UrlsInput)
URL or endpoint for the connection.

search (URI)
Specific URL for Availability method.

quote (URI)
Specific URL for Reservation method.

book (URI)
Specific URL for Valuation method.

generic (URI)
Supplier URL used for multiple methods.

parameters (ParameterInput)
List of parameters with additional required information.

keyΒ  *Β  (String)
Contains the keyword/Id to identify a parameter. This information is mandatory.

valueΒ  *Β  (String)
Contains the parameter values. This information is mandatory.

markets (String)
Source Markets allowed for the Access (use ISO3166_1_alfa_2).

rateRules (Enum of RateRulesType)
RateRules allowed for the access.
Possible values:
NORMAL
PACKAGE
OLDER55
OLDER60
OLDER65
CANARY_RESIDENT
BALEARIC_RESIDENT
LARGE_FAMILY
HONEYMOON
PUBLIC_SERVANT
UNEMPLOYED
NON_REFUNDABLE
MOBILE
WARRANTY
ESSENTIAL_WORKER
NEGOTIATED
CUSTOM

settings (undefined)
You can configure an special settings for any access. This level overwrites the search and supplier settings levels.

plugins (PluginStepInput)
Array of plugins to execute.

step (Enum of PluginStepType)
Indicates where the plugin will be executed.
Possible values:
REQUEST
REQUEST_ACCESS
RESPONSE_OPTION
RESPONSE_ACCESS
RESPONSE

pluginsType (PluginsInput)
Indicates the plugin that will be executed.

type (Enum of PluginType)
Type of the plugin to execute
Possible values:
PRE_STEP
HOTEL_MAP
BOARD_MAP
ROOM_MAP
CURRENCY_CONVERSION
MARKUP
AGGREGATION
POST_STEP
COMMISSION
MARKETS_GROUP
AMENITY_MAP
PROMOTION_MAP

nameΒ  *Β  (String)
Name of the plugin to execute

enable (Boolean)
Activates or deactivates the plugin behaviour

parameters (undefined)
Parameters of the plugin

testMode (Boolean)
This flag is only allowed to be used for the access checked as 'TEST.' By default, it is set to 'LIVE.'

clientTokens (String)
Used to identify the origin of the request. This is solely used in plugins.

commitRequired (Boolean)
Indicates if the book will be confirmed in 1 or 2 steps. It only should be used in Book.

HotelXFilterInput (INPUT_OBJECT)

plugin (HotelXPluginFilterInput)
Only is possible to specify one of this filters, it allows to filter which plugins have to be executed or excluded

includes (HotelXFilterPluginTypeInput)
Plugins to be only executed

stepΒ  *Β  (Enum of PluginStepType)
The Step of the plugin to filter
Possible values:
REQUEST
REQUEST_ACCESS
RESPONSE_OPTION
RESPONSE_ACCESS
RESPONSE

typeΒ  *Β  (String)
The Type of the plugin to filter

nameΒ  *Β  (String)
The Name of the plugin to filter

excludes (undefined)
Plugins to exclude

HotelBookInput (INPUT_OBJECT)
Offers versatility in book options, with certain fields marked as mandatory (optionRefId, clientReference, holder etc.) and others as optional (language, delta price, payment card etc.). This flexibility empowers you to create a personalized Book Multation, tailoring the requested fields to your specific needs.

optionRefIdΒ  *Β  (String)
OptionRefID is a unique identifier assigned to each option. It is important to note that this identifier should not be modified or used externally, as it is an internal system identifier. Additionally, it is crucial to understand that the OptionRefID value should not be interpreted in any other way beyond its use within the system.

language (Language)
Language to be used in the request.

clientReferenceΒ  *Β  (String)
Booking ID in the client's system.

deltaPrice (DeltaPriceInput)
Input delta price, indicates price variation permitted by the client An error will be returned if the new price does not abide to DeltaPrice. If DeltaPrice is not sent and the integration implements it, we assume that the price range is 0 and the process will continue price is lower or equal to the price showed in valuation. This field is implemented if its native to the supplier or if another availability/valuation request needs to be done in Reservation. In case the supplier blocks the option in valuation, reservation

amount (Float)
The amount that will be accepted by the client to be higher than the Quote price. It is returned in the currency of the option.

percent (Float)
The percentage accepted by the client to be higher than the Quote price.

applyBothΒ  *Β  (Boolean)
If applyBoth = false: Indicates that one of the conditions (amount or percentage) has to meet the criteria before reservation. If applyBoth = true: Indicates that the new price cannot exceed the amount or percentage indicated by the client.

paymentCard (PaymentCardInput)
If the payment is done by credit card, it's mandatory to specify the payment type and the credit card information.

type (Enum of PaymentCardType)
Indicates the supported card type, the supported card for this option is shown in Quote step.
Possible values:
VI
AX
BC
CA
CB
CU
DS
DC
T
R
N
L
E
JC
TO
S
EC
EU
TP
OP
ER
XS
O

holderΒ  *Β  (HolderInput)
Contains owner's name.

nameΒ  *Β  (String)
The card holder's name.

surnameΒ  *Β  (String)
The card holder's surname.

title (Enum of PersonalTitleType)
Holder’s title.
Possible values:
MR
MRS
MISS
MS
NOT_SPECIFIED

contactInfo (ContactInfoInput)
Holder's contact info.

email (Email)
Email contact

phone (PhoneInput)
Phone contact

countryCodeΒ  *Β  (DialingCountryCode)
The combination of one, two or three digits identifying a specific country, countries in an integrated numbering plan, or a specific geographic area (1 to 3 digits)

numberΒ  *Β  (PhoneSubscriberNumber)
Identifies a subscriber for a particular global service

numberΒ  *Β  (String)
Contains credit card number.

CVCΒ  *Β  (String)
Contains credit card CVC.

expireΒ  *Β  (ExpireDateInput)
Contains credit card expiration date.

monthΒ  *Β  (Int)
Month MM

yearΒ  *Β  (Int)
Year yy

isVCC (Boolean)
Indicates if it is a virtual card

virtualCreditCard (VirtualCreditCardInput)
Virtual Credit Card data

activationDate (Date)
The Date from when the card can be charged

deactivationDate (Date)
The date from when the card will no longer be chargeable.

currentBalance (Float)
The amount which can be charged to the card.

currencyCode (Currency)
The ISO currency code of the CurrentBalance.

threeDomainSecurity (ThreeDomainSecurityInput)
Three Domain Security data

version (String)
Three Domain Security Version

DSTransactionID (String)
Universally unique transaction identifier assigned by the Directory Server (DS) to identify a single transaction.

XID (String)
Transaction identifier resulting from authentication processing. Uniquely identifies a 3D Secure check request.

ECI (String)
Electronic Commerce Indicator

CAVV (String)
Cardholder Authentication Verification Value

payerResponse (String)
Payer Authentication Response. It is the response to the Payer Authentication Request. The Payer Authentication Response has an XML structure with the information from the response of the authentication, and it contains a digital certificate as a sign of authenticity.

payerResponseStatus (Enum of PayerResponseStatusType)
Payer Authentication Response status
Possible values:
AUTHENTICATION_SUCCESS
AUTHENTICATION_FAILED
AUTHENTICATION_INCOMPLETE
TRANSACTION_ATTEMPT_SUCCESS_A
TRANSACTION_ATTEMPT_SUCCESS_B
AUTHENTICATION_REJECTED

cardEnrolledStatus (Enum of ThreeDSCardEnrolledStatusType)
Result of enrollment status of the service request
Possible values:
CARD_ENROLLED
CARD_NOT_ENROLLED
CANT_AUTHENTICATE

merchantName (String)
Merchant Name

signatureStatus (Enum of ThreeDSSignatureStatusType)
Signature value
Possible values:
SIGNATURE_VALIDATED
SIGNATURE_NOT_VALIDATED

remarks (String)
Any customer comments for the supplier to consider.

holderΒ  *Β  (undefined)
Holder's basic information.

roomsΒ  *Β  (BookRoomInput)
Rooms within this option.

occupancyRefIdΒ  *Β  (Int)
The room s reference in the booking

paxesΒ  *Β  (BookPaxInput)
The list or lists of paxes of the room

nameΒ  *Β  (String)
Passenger first name

surnameΒ  *Β  (String)
Passenger last name

ageΒ  *Β  (Int)
Passenger age on the day of the check-in

title (undefined)
Passenger title.

Returned Fields​

HotelBookPayload (OBJECT)

stats (StatsRequest)
Application stats in string format

totalΒ  *Β  (Stat)
Total transaction time

startΒ  *Β  (DateTime)
Start UTC

endΒ  *Β  (DateTime)
End UTC

duration (Float)
Difference between start and end in miliseconds

validationΒ  *Β  (undefined)
Request validation time

processΒ  *Β  (undefined)
Process time. Contains communication time, parse time and plugin time.

configurationΒ  *Β  (undefined)
Build access time

requestΒ  *Β  (undefined)
Request time

responseΒ  *Β  (undefined)
Response time

requestPlugin (StatPlugin)
Plugin execution time

nameΒ  *Β  (String)
Plugin name

totalΒ  *Β  (undefined)
total plugin time

responsePlugin (undefined)
Plugin execution time

hotelsΒ  *Β  (Int)
Number of hotels

zonesΒ  *Β  (Int)
Number of zones

citiesΒ  *Β  (Int)
Number of cities

dockerIDΒ  *Β  (String)
Docker Id

AccessesΒ  *Β  (StatAccess)
Detail access time

nameΒ  *Β  (String)
Access name

totalΒ  *Β  (undefined)
Total access time

staticConfiguration (undefined)
Static configuration time

hotelsΒ  *Β  (Int)
Number of hotels

zonesΒ  *Β  (Int)
Number of zones

citiesΒ  *Β  (Int)
Number of cities

requestAccess (undefined)
Access request time

responseAccess (undefined)
Access response time

transactionsΒ  *Β  (StatTransaction)
Detail transaction time

referenceΒ  *Β  (String)
Extra information about transaction.

totalΒ  *Β  (undefined)
Total transaction time

buildRequestΒ  *Β  (undefined)
Build request time

workerCommunicationΒ  *Β  (undefined)
Worker connection time

parseResponseΒ  *Β  (undefined)
Parse response time

plugins (undefined)
Plugin execution time

auditData (AuditData)
Data sent and received in the supplier's native format.

transactionsΒ  *Β  (Transactions)
List of the transactions data.

requestΒ  *Β  (String)
Transaction Request.

responseΒ  *Β  (String)
Transaction Response.

timeStampΒ  *Β  (DateTime)
Time when the request has been processed.

timeStampΒ  *Β  (DateTime)
Timestamp.

processTimeΒ  *Β  (Float)
Process time of the transaction data in milliseconds (ms).

booking (HotelBookingDetail)
Information about booking

supplierCode (String)
Supplier code of the booking

accessCode (String)
Access code of the booking

referenceΒ  *Β  (Reference)
Booking ID references codes.

client (String)
Client reference booking.

supplier (String)
Supplier reference booking.

hotel (String)
Hotel reference booking

hotelConfirmationNumberStatus (String)
Process Status in order to obtain the hotel confirmation number. If this field is null or empty that means that the status is UNKNOWN. Possible values: "P" => (pending): The booking hasn't been assinged to any operator yet, or it has but the operator did not make the call yet. "R" => (retrying): The operator tried to call the hotel but, for some reason, the call couldn't be completed because of external factors. This means the operator will try to call again later. "NA" => (no answer): The operator tried to call the hotel several times but the hotel did not answer. "C" => (cancelled): The operator has been informed by the hotel that the reservation has been cancelled. "DNE" => (does not exist): The operator has been informed by the hotel that the reservation does not exist. "F" => (fetched): The operator called the hotel and they got the hotel confirmation number (a truly succesful call) "I" => (issued): The operator called the hotel but there were issues. Maybe the hotel is closed, maybe natural disaster situations are alerted for the check-in date, etc.

bookingID (String)
HotelX's booking reference. The BookingID is a unique identifier for each reservation that can be used to perform Booking queries and Cancel mutations in the system. It is not recommended to modify or use this value externally, although it may be useful for identifying and managing reservations within the system. It is important to note that the BookingID value should not be interpreted in any other way beyond its use within the system.

amendmentID (String)
HotelX's amend booking reference

holder (Holder)
Holder's name and surname

nameΒ  *Β  (String)
Holder's name.

surnameΒ  *Β  (String)
Holder's surname.

title (Enum of PersonalTitleType)
Holder's title, if return.
Possible values:
MR
MRS
MISS
MS
NOT_SPECIFIED

contactInfo (ContactInfo)
Holder's contact information.

email (String)
Email contact

phone (String)
Phone contact

hotel (BookingHotel)
Information about the hotel.

bookingDate (Date)
Creation date of the booking. Format: YYYY-MM-DD

start (Date)
Check-in date for booking Format: YYYY-MM-DD

end (Date)
Check-out date for the booking. Format: YYYY-MM-DD

hotelCode (String)
Code of the hotel in the context selected.

hotelName (String)
Name of the hotel.

boardCode (String)
Code of the board in the context selected.

occupancies (Occupancy)
List of occupancies for the request

idΒ  *Β  (Int)
Unique ID room in this option.

paxesΒ  *Β  (Pax)
List of pax of this occupancy.

ageΒ  *Β  (Int)
Passenger age on the day of check-in, which can vary for adults, infants, or babies depending on each supplier's particular age range.

name (String)
Specifies the pax name.

surname (String)
Specifies the pax surname.

title (undefined)
Specifies the pax title.

rooms (BookingRoom)
List of rooms.

occupancyRefId (Int)
ID reference to the occupancy

code (String)
Indicates the room code

description (String)
Description about the room

price (Price)
Total price for all days.

currencyΒ  *Β  (Currency)
Currency code indicating which currency should be paid.

bindingΒ  *Β  (Boolean)
It indicates whether the gross price must be honored, meaning the customer cannot sell the room/option at a price lower than the supplier's established rate.

netΒ  *Β  (Float)
It indicates the net price that the customer must pay to the supplier. The net price is calculated by substrating the included surcharges from the gross price. (For calculation purposes only)

grossΒ  *Β  (Float)
Indicates the retail price that the supplier sells to the customer.

exchangeΒ  *Β  (Exchange)
Provides currency information and the applicable rate for the results returned by the Supplier

currencyΒ  *Β  (Currency)
Provide information about the currency of origin

rateΒ  *Β  (Float)
Provides information about the rate applied over results

markups (Markup)
Informs markup applied over supplier price.

channel (String)
channel of markup application.

currencyΒ  *Β  (Currency)
Currency code indicating which currency should be paid. This information is mandatory.

bindingΒ  *Β  (Boolean)
It indicates if the price indicated in the gross must be respected. In case minimumSellingPrice is not empty, the binding indicates instead that the minimumSellingPrice must be respected. That is, the customer can not sell the room / option at a price lower than that established by the supplier. This information is mandatory.

netΒ  *Β  (Float)
Indicates the net price that the customer must pay to the supplier plus the markup. This information is mandatory.

gross (Float)
Indicates the retail price that the supplier sells to the customer plus the markup.

exchangeΒ  *Β  (undefined)
Informs about the currency of origin, and the rate applied over result. This information is mandatory.

rulesΒ  *Β  (Rule)
Breakdown of the applied rules for a markup

idΒ  *Β  (String)
rule identifier

name (String)
rule name

typeΒ  *Β  (Enum of MarkupRuleType)
type of the value
Possible values:
PERCENT
IMPORT

valueΒ  *Β  (Float)
value applied by this rule

minimumSellingPrice (Float)
Indicates the minimum selling price it can be sold (determined by the Seller). Is is specified (not null), that field takes preference to Gross and Binding.

price (undefined)
Indicates the current price (Gross and Net) of the booked option. In the 'book' mutation, it shows the reservation price. In the 'booking' query (booking read), it reflects the current price; for example, it could be 0 if the reservation is cancelled and fully refundable, or the cancellation fee if there is any cost. If the provider is unable to return the current price in the query, the price returned by the provider will be used.

quotePrice (PriceChange)
Specifies the price of the previous OptionQuote, returned only if it differs from the price shown at the Quote Option. If the price remains unchanged, this field will be returned as Null.

currencyΒ  *Β  (String)
The currency of previous option.

netΒ  *Β  (Float)
The net value of previous option.

grossΒ  *Β  (Float)
The gross value of previous option.

bindingΒ  *Β  (Boolean)
Indicates if previous option price was binding or not

cancelPolicy (CancelPolicy)
Specifies cancel policies of the returned option .

refundableΒ  *Β  (Boolean)
Indicates if the option is refundable or non-refundable

cancelPenalties (CancelPenalty)
List of cancellation penalties

deadline (DateTime)
Cancellation fees will be applicable between this date and check-in date

isCalculatedDeadlineΒ  *Β  (Boolean)
Specifies if the deadline has been taken from the seller’s response (false) or has been calculated by Travelgate (true)

penaltyTypeΒ  *Β  (Enum of CancelPenaltyType)
Type of penalty; this can be Nights, Percent or Import
Possible values:
NIGHTS
PERCENT
IMPORT

currencyΒ  *Β  (Currency)
Currency used in the cancellation policy

valueΒ  *Β  (Float)
Value of the cancellation policy

description (String)
Extra details and information about supplier's cancel policies to give a further insight. This information is not supported for all the suppliers.

remarks (String)
Additional information about the book.

statusΒ  *Β  (Enum of BookStatusType)
Booking Status. The possible values for this field are specified in our documentation. Possible values for book mutation and booking query: https://docs.travelgate.com/docs/apis/for-buyers/hotel-x-pull-buyers-api/booking-flow/book#book-status Possible values for cancel mutation: https://docs.travelgate.com/docs/apis/for-buyers/hotel-x-pull-buyers-api/booking-management/cancel#cancel-status
Possible values:
OK
ON_REQUEST
CANCELLED
UNKNOWN

billingSupplierCode (String)
Supplier’s billing code. It will be returned if the supplier has different billing accounts and this is informed in the reservation.

payable (String)
Payable.

addOns (AddOns)
Additional details provided by the different layers involved in the transaction.

distribution (AddOn)
Extra information from the Distribution layer.

keyΒ  *Β  (String)
Contains keyword/ID to identify the AddOn.

valueΒ  *Β  (JSON)
Contains AddOn values.

supplier (undefined)
Extra information from the Supplier layer.

paymentInfo (GeneratedPaymentInfo)
Specifies the information about the payment generated at Book step.

generatedCard (PaymentCardData)
Specifies the information of the payment card, and the source of it, that has been generated at Book step

activeΒ  *Β  (Date)
Contains the Payment Card activation date.

CVCΒ  *Β  (CVC)
Contains Payment Card security code (CVC).

expireΒ  *Β  (Date)
Contains the Payment Card expiration date.

holderΒ  *Β  (undefined)
Contains owner's name.

idΒ  *Β  (ID)
Contains the generated card ID. It is provided by a third party supplier.

numberΒ  *Β  (CardNumber)
Contains credit card number.

typeΒ  *Β  (Enum of PaymentCardType)
Indicates the supported card type.
Possible values:
VI
AX
BC
CA
CB
CU
DS
DC
T
R
N
L
E
JC
TO
S
EC
EU
TP
OP
ER
XS
O

status (Enum of PaymentCardStatus)
Indicates the credit card status.
Possible values:
CREATED
CANCELED
EXPIRED
ACTIVE
UNKNOWN

idΒ  *Β  (String)
Payment identification generated by the payment supplier. This field is only returned in Book step, when the card is generated.

method (Enum of GeneratedPaymentMethodType)
Indicates the payment method used, which depends on the configured payment supplier.
Possible values:
VIRTUAL_CARD

supplierΒ  *Β  (SupplierData)
Indicates the supplier information responsible of the payment card's creation

idΒ  *Β  (ID)
Supplier unique ID. Format: integer.

codeΒ  *Β  (ID)
Supplier unique code

nameΒ  *Β  (String)
Supplier name

isActiveΒ  *Β  (Boolean)
Indicates whether a Supplier is active. This is a calculated field, a specific supplier can be activated or deactivated, but if its provider is deactivated, the value will be = false

providerΒ  *Β  (ProviderData)
Instance to which this supllier is connected

idΒ  *Β  (ID)
Provider unique ID. Format: integer.

codeΒ  *Β  (ID)
Provider unique code

nameΒ  *Β  (String)
Provider name

isActiveΒ  *Β  (Boolean)
Indicates whether a Provider is active. If the Provider is deactivated, all its Suppliers will be deactivated

auditsΒ  *Β  (EntityAuditConnection)
Audits it shows the provider's change history

edges (EntityAuditEdge)

node (EntityAudit)

codeΒ  *Β  (ID)

entityAuditData (EntityAuditData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

entityTypeΒ  *Β  (Enum of EntityType)

Possible values:
ACCESS
SUPPLIER
CLIENT
PROVIDER
MEMBER
ORGANIZATION
API_KEY

actionTypeΒ  *Β  (Enum of ActionType)

Possible values:
UPDATE
DELETE
CREATE
ARCHIVE
UNARCHIVE
ACTIVATE
DEACTIVATE
GRANT_TO_GROUPS
REVOKE_FROM_FROUPS
APPEND_PARAMETERS
DELETE_PARAMETERS
SET_FIELD
REMOVE_FIELD
ACTIVATE_SPEED
DEACTIVATE_SPEED
SET_IS_PUBLIC
UPDATE_MEMBER_IN_ORGANIZATION
REMOVE_MEMBER_SERVICE_ROLE
UPDATE_MEMBER_SERVICE_ROLE
REFRESH_TOKEN

auditDetails (AuditDetails)

fieldΒ  *Β  (String)

currentΒ  *Β  (String)

previousΒ  *Β  (String)

modifiedByΒ  *Β  (String)

correlationID (String)

adviseMessage (AdviseMessage)

codeΒ  *Β  (ID)
AM code: The following codes can be returned:

descriptionΒ  *Β  (String)
Error description

levelΒ  *Β  (Enum of AdviseMessageLevel)
Indicates the level of importance of the message. Possible values: ERROR, WARN, INFO.
Possible values:
WARN
ERROR
INFO

external (ExternalMessage)
Specify the external message.

code (String)
External code.

messageΒ  *Β  (String)
External message.

correlationIDΒ  *Β  (ID)
Identifier to investigate the cause of the error.

createdAtΒ  *Β  (Time)

updatedAtΒ  *Β  (Time)

deletedAt (Time)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (PageInfo)

hasNextPageΒ  *Β  (Boolean)

hasPreviousPageΒ  *Β  (Boolean)

startCursor (String)

endCursor (String)

adviseMessage (undefined)

totalCountΒ  *Β  (Int)

connectionTypeΒ  *Β  (Enum of ProviderConnectionType)
Indicates connection type of Supplier
Possible values:
PULL
PUSH

serviceApiΒ  *Β  (Int)
ServiceAPI indicates the type of the connection

  1. hotel
  2. transportation
  3. car
  4. transfers
  5. activities
  6. virtualaccount
  7. payment
  8. package

apiΒ  *Β  (Enum of APIName)
API name for service API
Possible values:
HOTEL
TRANSPORTATION
CAR
TRANSFERS
ACTIVITIES
VIRTUALACCOUNT
PAYMENT
PACKAGE

owner (EntityOwnerData)
Organization that owns the Supplier

codeΒ  *Β  (ID)
Organization unique code

labelΒ  *Β  (String)

groupContent (GroupContent)
Grouping of static content related to this Supplier.

codeΒ  *Β  (ID)
GroupContent unique code

groupContentData (GroupContentData)
Extended GroupContent information

idΒ  *Β  (ID)
GroupContent unique ID. Format: integer.

codeΒ  *Β  (ID)
GroupContent unique code

contextΒ  *Β  (Context)
GroupContent related Context

codeΒ  *Β  (ID)
Context unique code

contextData (ContextData)
Extended Context information

idΒ  *Β  (ID)
Context unique ID. Format: integer.

codeΒ  *Β  (ID)
Context unique code

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Context creation date

updatedAtΒ  *Β  (DateTime)
Context last update date

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
GroupContent creation date

updatedAtΒ  *Β  (DateTime)
GroupContent last update date

context (String)
This is a calculated field that responds to groupContent > groupContentData > context > code

sharedDefault (Access)
Indicates if this supplier normally have a shared default access, means that the content is managed in one only site and this is because improve de efficiency

codeΒ  *Β  (ID)

accessData (AccessData)

idΒ  *Β  (ID)
Unique ID identifier

codeΒ  *Β  (ID)
Unique AccessConfiguration identifier

nameΒ  *Β  (String)
Access descriptive name

isActiveΒ  *Β  (Boolean)
Indicates if Access is active

isTestΒ  *Β  (Boolean)
Indicates if Access can be used for testing or not

isSharedΒ  *Β  (Boolean)
Indicates if Access is Shared

isOpenAccessΒ  *Β  (Boolean)
Indicates if Access is open to all partners.

supplierΒ  *Β  (Supplier)
Supplier for this Access

codeΒ  *Β  (ID)
Supplier unique code

supplierData (undefined)
Extended Supplier information

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Supplier creation date

updatedAtΒ  *Β  (DateTime)
Supplier last update date

deletedAt (DateTime)
Supplier deleted date

user (String)
User code to connect to supplier

password (String)
Password for this Access. To retrieve this field, ADMIN permissions are required. Otherwise, the value will be null.

urls (Urls)
Specific URLs

search (URI)
Specific URL for Availability method.

quote (URI)
Specific URL for Quote method.

book (URI)
Specific URL for Book method.

generic (URI)
Supplier URL used for multiple methods.

parameters (Parameter)
List of parameters for additional information

keyΒ  *Β  (ID)
Contains the keyword/Id to identify a parameter. This information is mandatory.

valueΒ  *Β  (String)
Contains the parameter values. This information is mandatory.

shared (undefined)
Parent Access if Shared Access

owner (undefined)
Access owner

updateDescriptiveInfoΒ  *Β  (Int)
Refresh time to update Despriptive Info

descriptiveInfoLimitΒ  *Β  (Int)
Limit on DescriptiveInfo; 0 denotates no limit

isSchedulerActive (Boolean)
True if scheduler is active

updateListΒ  *Β  (Int)
Refresh time to update other batch lists

updateDateRangeΒ  *Β  (String)
Range on update date

master (undefined)
Parent Master Access. null=>masterAccess, notNull=>slaveAccess

groups (GroupConnection)
Groups where access belongs

edges (GroupEdge)

node (Group)

codeΒ  *Β  (ID)

groupData (GroupData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

label (String)

folder (String)

typeΒ  *Β  (Enum of GroupType)

Possible values:
ROOT
ORG
GROUP
TEAM
FOLDER
PRODUCT
RESOURCE
SPECIFIC_RESOURCE

info (String)

isPublicΒ  *Β  (Boolean)

parent (undefined)

children (undefined)
Only responses children.(non-hierarchically)

descendents (undefined)
Response all descendents groups nodes in this group (nom-hierarchically)

parents (undefined)
Response all parents groups nodes for this group (nom-hierarchically)

owner (Member)

codeΒ  *Β  (ID)

memberData (MemberData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

isActiveΒ  *Β  (Boolean)
Can members does queries in the platform?

firstName (String)

lastName (String)

crmData (CrmData)
CRM specific data

crmID (String)

contactImportance (String)

companyRole (String)

groups (undefined)
which groups the member is in?

roles (RoleConnection)
which roles the member has in?

edges (RoleEdge)

node (Role)

codeΒ  *Β  (ID)

roleData (RoleData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

typeΒ  *Β  (Enum of RoleType)

Possible values:
VIEWER
EDITOR
ADMIN
EXECUTOR
SPECIFIC

isEditableΒ  *Β  (Boolean)

label (String)

isCreateΒ  *Β  (Boolean)
Has resource Create permission?

isReadΒ  *Β  (Boolean)
Has resource Create permission?

isUpdateΒ  *Β  (Boolean)
Has resource Update permission?

isDeleteΒ  *Β  (Boolean)
Has resource Delete permission?

isEnableΒ  *Β  (Boolean)
Is role enabled or not?

isExecutableΒ  *Β  (Boolean)
Has resource Executable permission?

isSpecialΒ  *Β  (Boolean)
Has any other non-basic permission/s?

special (String)
Special permission

resources (ResourceConnection)
Resources used

edges (ResourceEdge)

node (Resource)

codeΒ  *Β  (ID)

resourceData (ResourceData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

isEditableΒ  *Β  (Boolean)

label (String)

apis (APIConnection)
which API have asigned this resource?

edges (APIEdge)

node (API)

codeΒ  *Β  (ID)

adviseMessage (undefined)

apiData (APIData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

label (String)

errorCatalog (ErrorCatalog)

codeΒ  *Β  (ID)

descriptionΒ  *Β  (String)

typeΒ  *Β  (String)

levelΒ  *Β  (String)

operations (OperationConnection)

edges (OperationEdge)

node (Operation)

codeΒ  *Β  (ID)

adviseMessage (undefined)

operationData (OperationData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

label (String)

api (undefined)

typesΒ  *Β  (Enum of OperationType)

Possible values:
SEARCH
QUOTE
BOOKING
CANCEL
SCHEDULER
CREATE
READ
UPDATE
DELETE
EXECUTE
OTHER

createdAtΒ  *Β  (Time)

updatedAtΒ  *Β  (Time)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)

totalCountΒ  *Β  (Int)

createdAtΒ  *Β  (Time)

updatedAtΒ  *Β  (Time)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

roles (undefined)
which roles are asigned or are possibles in this resource?

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

macroPermissions (MacroPermissionsConnection)

edges (MacroPermissionEdge)

node (MacroPermission)

codeΒ  *Β  (ID)

macroPermissionData (MacroPermissionData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

productIDΒ  *Β  (ID)

groupΒ  *Β  (ID)

label (String)

permissions (Permission)

roleΒ  *Β  (undefined)

resourceΒ  *Β  (undefined)

apiΒ  *Β  (undefined)

adviseMessage (undefined)

createdAtΒ  *Β  (DateTime)

updatedAtΒ  *Β  (DateTime)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

organizationMemberRoles (OrganizationMemberRole)

organizationΒ  *Β  (Organization)

codeΒ  *Β  (ID)

organizationData (OrganizationData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

label (String)

typeΒ  *Β  (undefined)

info (String)

crmID (String)

crmData (CompanyCrmData)

crmIDΒ  *Β  (String)

connectionType (Enum of ConnectionType)

Possible values:
HOTEL_X_BUYER_ONLY
HOTEL_LEGACY_BUYER_ONLY
CHANNEL_X_BUYER_ONLY
HOTEL_PULL_LEGACY_SELLER_ONLY
HOTEL_PULL_SELLER_GENERIC
HOTEL_PUSH_LEGACY_SELLER_ONLY
HOTEL_PUSH_SELLER_GENERIC
DMC_X
FLIGHTS_LEGACY_SELLER_ONLY
PAYMENT_LEGACY_SELLER_ONLY
B2B_VIRTUAL_AGENCY_TOOL_BUYER_ONLY
TRANSPORTATION_FLIGHT_LEGACY_BUYER_ONLY
FLIGHT_X_BUYER_ONLY
DIRECT_X
DISTRIBUTE
INVENTORY
ACTIVITIES_LEGACY
CARS_LEGACY
TRANSFERS_LEGACY
VIRTUAL_ACCOUNT_LEGACY

contract (Enum of Contract)

Possible values:
CONTRACT_TCP
CONTRACT_AFFILIATE
CONTRACT_RESELLER
ANNEX_POWER_BUYER
ANNEX_PREMIUM_SELLER
ANNEX_SELECTIVE_PREMIUM_SELLER
ANNEX_STANDARD_SELLER
ANNEX_STANDARD_BUYER
ANNEX_PREFERRED_SELLER

techPlatformName (String)

partner (undefined)

isPublic (Boolean)

children (undefined)
Only responses folders.(non-hierarchically)

descendents (undefined)
Response all descendents groups nodes in this group (nom-hierarchically)

parents (undefined)
Response all parents groups nodes for this group (nom-hierarchically)

ownerΒ  *Β  (undefined)

contacts (OrganizationContact)
Differents contacts in a organization.

typeΒ  *Β  (Enum of OrganizationContactType)

Possible values:
ADMIN
BILLING
SALES
TECHNICAL
OTHER

userΒ  *Β  (undefined)

isEditableΒ  *Β  (Boolean)

members (MemberConnection)

edges (MemberEdge)

node (undefined)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

apis (undefined)
APIs assigned to this group. Products have APIs.

products (ProductConnection)
Products asign to a organization

edges (ProductEdge)

node (Product)

codeΒ  *Β  (ID)

productDataΒ  *Β  (ProductData)

idΒ  *Β  (ID)

codeΒ  *Β  (ID)

label (String)

apis (undefined)
A Product has many APIs

macroPermissions (undefined)

adviseMessageCatalog (undefined)

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

allMembers (undefined)
Response all members in this group s childrens (hierarchically)

accesses (AccessConnection)
Access resources in a group

edges (AccessEdge)

node (undefined)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

suppliers (SupplierConnection)
Supplier resources in a group

edges (SupplierEdge)
Supplier edges of Supplier connection

node (undefined)
Supplier item

cursorΒ  *Β  (String)
Cursor to the next item

pageInfoΒ  *Β  (undefined)
Page info of the connection

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

clients (ClientConnection)
Clients resources in a group

edges (ClientEdge)
Client edges of client connection

node (Client)
Client item

codeΒ  *Β  (ID)
Client unique code, format: "cli000"

clientData (ClientData)
Extended Client information

idΒ  *Β  (ID)
ID unique identifier of a Client. Format: integer.

codeΒ  *Β  (ID)
Client unique code. Format: "cliX" where X = ID

nameΒ  *Β  (ID)
Client unique name

password (String)
Client's passowrd

legacyPassword (String)

isActiveΒ  *Β  (Boolean)
Indicates whether a Client is active or inactive

group (undefined)
Indicates the group where the Client belongs. By definition a Client can belongs only to one group.

owner (undefined)
Organization that owns the Client

auditsΒ  *Β  (undefined)
Audits it shows the client's change history

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Client creation date

updatedAtΒ  *Β  (DateTime)
Client last update date

deletedAt (DateTime)
Client deleted date

cursorΒ  *Β  (String)
Cursor to the next item

pageInfoΒ  *Β  (undefined)
Page info of the connection

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

domainsΒ  *Β  (Domain)

codeΒ  *Β  (ID)

domainData (DomainData)

idΒ  *Β  (ID)

nameΒ  *Β  (DomainName)

organizationΒ  *Β  (undefined)

adviseMessage (undefined)

createdAtΒ  *Β  (DateTime)

updatedAtΒ  *Β  (DateTime)

template (String)

allAccesses (undefined)
Access resources in this organization

allSuppliers (undefined)
Supplier resources in this organization

allClients (undefined)
Clients resources in this organization

primaryPartnerΒ  *Β  (Partner)

codeΒ  *Β  (ID)

partnerData (PartnerData)

codeΒ  *Β  (ID)
cusXYZ..

nameΒ  *Β  (String)

isActive (Boolean)

friendlyName (String)

organizations (OrganizationConnection)

edges (OrganizationEdge)

node (undefined)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

agents (CustomerAgent)
Differents agents from Travelgate

typeΒ  *Β  (Enum of CustomerAgentType)

Possible values:
KAM
TECH_KAM
CUSTOMER_CARE
OTHER

userΒ  *Β  (undefined)
user@travelgate.com

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

allPartnersΒ  *Β  (PartnerConnection)

edges (PartnerEdge)

node (undefined)

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

isBuyerΒ  *Β  (Boolean)

isSellerΒ  *Β  (Boolean)

deleted_at (DateTime)

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

roleΒ  *Β  (Enum of RoleMemberType)

Possible values:
ADMIN
GUEST
EDITOR
VIEWER

phone (String)

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

deletedAtΒ  *Β  (DateTime)
Date deleted. This value is used to include archived members.

isEditableΒ  *Β  (Boolean)

productId (Int)

resourceId (Int)

siblings (undefined)
Sibilings of the group

members (undefined)
Only responses members in this group

apis (undefined)
APIs assigned to this group. Products have APIs.

managedGroups (ManagedGroupConnection)
Responses all managed groups by this group.

edges (ManagedGroupEdge)

node (ManagedGroup)

codeΒ  *Β  (ID)

managedGroupData (ManagedGroupData)

codeΒ  *Β  (ID)

groupΒ  *Β  (undefined)

apiΒ  *Β  (undefined)

resourceΒ  *Β  (undefined)

roleΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

allMembers (undefined)
Response all members in this group s childrens (hierarchically),

accesses (undefined)
Access resources in a group

suppliers (undefined)
Supplier resources in a group

clients (undefined)
Clients resources in a group

roles (undefined)
You can grant roles to members, which define the roles catalog for a group.

isBuyerΒ  *Β  (Boolean)

isSellerΒ  *Β  (Boolean)

deleted_at (DateTime)

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

cursorΒ  *Β  (String)

pageInfoΒ  *Β  (undefined)

adviseMessage (undefined)
List of advise messages.

totalCountΒ  *Β  (Int)
Identifies the total count of items in the connection.

auditsΒ  *Β  (undefined)
Audits it shows the accesses change history

adviseMessage (undefined)
List of advise messages.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

deletedAt (DateTime)
Access deleted date

accesses (undefined)
Accesses of this Supplier

systemΒ  *Β  (System)

codeΒ  *Β  (ID)

systemData (SystemData)

codeΒ  *Β  (ID)
ID identifier of a System

nameΒ  *Β  (ID)
System complete name

isActiveΒ  *Β  (Boolean)
Indicates whether a System is active or inactive

group (undefined)
Indicates the group where the System belongs

owner (undefined)
System owner

suppliersΒ  *Β  (undefined)
Obtain all suppliers for a filter.

error (Error)
Errors that abort services

codeΒ  *Β  (String)
Error code.

typeΒ  *Β  (String)
Error type.

descriptionΒ  *Β  (String)
Error description.

createdAtΒ  *Β  (DateTime)
Date created

updatedAtΒ  *Β  (DateTime)
Date updated

auditsΒ  *Β  (undefined)
Audits it shows the supplier's change history

serviceIntegrationData (ServiceIntegrationData)
Service Integration Data

type (Enum of ServiceIntegrationType)

Possible values:
SITH
WORKER
CONNECTORS

optionsQuota (Int)

isPublicΒ  *Β  (Boolean)

giata (GiataSupplierConfiguration)

giataType (String)

giataCode (String)

vccAccessΒ  *Β  (String)
Indicates the vcc access code used to generate the payment card

surcharges (Surcharge)
List of surcharges of the option returned.

code (String)
Indicates the surcharge code

chargeTypeΒ  *Β  (Enum of ChargeType)
Indicates the charge type. We need to know whether the supplements have to be paid when the consumer gets to the hotel or beforehand. Possible charge types: INCLUDE or EXCLUDE. when INCLUDE : this surcharge is mandatory and included in the option s price when EXCLUDE : this surcharge is not included in the option s price
Possible values:
INCLUDE
EXCLUDE

mandatoryΒ  *Β  (Boolean)
Indicates if the surcharge is mandatory or not. If mandatory, this surcharge will be applied to this option. If the chargeType is EXCLUDE the customer will have to pay it directly at the hotel.

priceΒ  *Β  (undefined)
Indicates the surcharge price.

description (String)
Specifies the surcharge description.

supplements (Supplement)
List of supplements of the option returned.

codeΒ  *Β  (String)
Specifies the supplement code.

name (String)
Specifies the supplement name.

description (String)
Specifies the supplement description.

supplementType (Enum of SupplementType)
Indicates the supplement type. Possible types: Fee, Ski_pass, Lessons, Meals, Equipment, Ticket, Transfers, Gla, Activity or Other.
Possible values:
SKI_PASS
LESSONS
MEALS
EQUIPMENT
TICKET
TRANSFERS
GALA
ACTIVITY
OTHER

chargeTypeΒ  *Β  (undefined)
Indicates the charge types. We need to know whether the supplements have to be paid when the consumer gets to the hotel or beforehand. Possible charge types: INCLUDE or EXCLUDE. when INCLUDE : this supplement is mandatory and included in the option s price when EXCLUDE : this supplement is not included in the option s price

mandatoryΒ  *Β  (Boolean)
Indicates if the supplement is mandatory or not. If mandatory, this supplement will be applied to this option. If the chargeType is EXCLUDE the customer will have to pay it directly at the hotel

durationType (Enum of DurationType)
Specifies the duration type. Possible duration types: Range (specified dates) or Open. This field is mandatory for PDI.
Possible values:
RANGE
OPEN

quantity (Int)
Indicates the quantity of field in the element "unit".

unit (Enum of UnitTimeType)
Indicates the unit type. Possible unit types: Day or Hour.
Possible values:
DAY
HOUR

start (Date)
Indicates the effective date of the supplement. Format: YYYY-MM-DD

end (Date)
Indicates the expire date of the supplement. Format: YYYY-MM-DD

resort (Resort)
Contains information about the resort

codeΒ  *Β  (String)
Specifies the resort code.

name (String)
Specifies the resort name.

description (String)
Specifies the resort description.

price (undefined)
Indicates the supplement price.

errors (undefined)
Errors that abort services

warnings (Warning)
Potentially harmful situations or errors that won't force the service to abort. To identify if it is blocked one, you can check our documentation regards this matter.

codeΒ  *Β  (String)
Warning code

typeΒ  *Β  (String)
Warning type

descriptionΒ  *Β  (String)
Warning description

accessCode (String)
Access code related to the warning

Examples​

Frequently Asked Questions​

What should I do if I receive both an OK status and an error in the same Book response?
If you receive an error and a booking status OK in the Book response, the error prevails over the reservation status. Although you may also run a Booking Query in order to check the status of a reservation, please note that you should always contact the Seller in order to check the actual status of a booking in those cases you receive a booking status different than OK, no response at all or even a OK status with and error.
What is the DeltaPrice? Why should I use it?
The Delta Price indicates the price variation permitted by the Buyer (amount or percentage), so that an error will be returned if the new price does not abide to DeltaPrice. If DeltaPrice is not sent and the integration implements it, we assume that the price range is 0 and the process will continue (price is lower or equal to the price returned in Quote). This field is implemented if it’s native to the Seller or if another Search/Quote request needs to be done in Book. Please note DeltaPrice should be implemented by a Seller in order to be available to a Buyer.

What does DeltaPrice "applyBoth" mean?

  • If the value is 'false' it indicates that one of the conditions (amount or percentage) has to meet the DeltaPrice criteria before reservation.
  • If the value is 'true' it indicates that the new price cannot exceed the amount and percentage indicated by the Buyer.
Why do I receive a status "ON_REQUEST" and a holder name "test" in my reservations the test environment?
In the test environment, it is common for some Sellers to consistently return an ON_REQUEST status. Furthermore, as a standard practice in the test environment, we automatically replace the holder and passenger names with "test".
Will the currency in Book be the same as the currency in Quote?
The currency used for the transaction will remain the same throughout the entire Booking Flow, including cancellation policies.
Do I have to provide real names and ages for all the passengers?
No, you are not required to provide real ages and names for all passengers. You can use default values for each age group and name. The only information that should be real is the holder's information.
How do I define the total number of rooms in my Book request?

To define the number of rooms in your reservation, you need to utilize the occupancyRefId previously returned in Search response.For instance, for a room of two adults:

"rooms": [
{
"occupancyRefId": 1,
"paxes": [
{
"name": "TestName",
"surname": "Surname",
"age": 30
},
{
"name": "TestName",
"surname": "Surname",
"age": 30
}
]
}
]
What payment details should I add to my Book request?
The payment type and details to be added in your Book request depend on the payment type returned for the option to be booked, note that payment types depend on the commercial agreement established by a Buyer with their Sellers.
Where can I get the Hotel Confirmation Number (HCN)?

Once a booking has been successfully confirmed in Travelgate you may retrieve 2 different locators from its logs:


  • The Buyer's locator (client reference).
  • The Seller's locator (provider reference).

The Seller may also provide a third type of locator, issued by the hotel when it confirms the booking. This is known as the Hotel Confirmation Number (HCN) or Hotel Reference Booking (HRB). Please note we are only able to provide this code if the Seller returns it in their response.