Professional Documents
Culture Documents
V1.7
XML service APIs are a set of Tuxedo backend services that accepts SOAP requests over the Tuxedo ATMI protocol
and replies with SOAP formatted response messages. Results backend services that can be called with SOAP
formatted requests include Availability, Pricing, Seat Reservation/Seat Maps, Reference/Base Data, Booking
Validation, Booking Submit, Booking Retrieval, Payment Services, etc. The backend services runs on the Results
backend Linux server.
For testing purposes, a test utility called txmlclient is included with the results backend. To use it, enter txmlclient and
the Tuxedo service name defined in the system, and the name of an XML file name containing a properly formatted
SOAP request. Once you run an XML file, the system returns:
Followed by the information that is the result of the execution of the XML file.
This document describes the available Results SOAP/XML services. They all require Results 1.6 backend or later (as
denoted in the service description).
WSDL Files
The WSDL (Web Services Description Language) files are the service descriptors that define functions available in
each XML service, their parameters and return values.
assignlocator.wsdl - assign a locator to an external locator, not currently used by the web
basedata.wsdl - reference data/base data service, for retrieving things like cities, airports, currencies and other
reference data
bookinfo.wsdl - booking retrieval service, get booking details by booking number or locator
flightdetailsobj.wsdl - same as above but return as deserialized objects (not working because of namespace
issues)
scheduleDisplay.wsdl - Retrieves the flight schedule for an origin/destination and date period.
viaairports.wsdl - retrieve via airports for a flight (need to be called to retrieve the data needed by the pricing
service)
Currently some Results APIs do not have the WDSL files. This is typical of all the DCS XML services.
There are methods for invoking Results APIs without the WSDL. Below are the examples of different methods to
POST directly to /resultsservices/services.aspx:
Plain:
POST /resultsservices/services.aspx HTTP/1.1
Host: 82.150.226.157:80
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://rrtechnologies.net/soap/BOOKING_SERVICE"
VB.NET:
xmlResponse.LoadXml(System.Text.Encoding.ASCII.GetString(res))
Java:
PostMethod post = new PostMethod("http://82.150.226.157:80/resultsservices/services.aspx");
RequestEntity entity;
entity = new StringRequestEntity("<?xml version='1.0' encoding='utf-8'?><soap:Envelope
xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xmlns:xsd='http://www.w3.org/2001/XMLSchema'><soap:Body><GetBooking
xmlns='http://rrtechnologies.net/soap/'><BookingNumber>2676003</BookingNumber></GetBooking>
</soap:Body></soap:Envelope>", "text/xml", "charset=ISO-8859-1");
post.setRequestEntity(entity);
HttpClient httpclient = new HttpClient();
try {
int result = httpclient.executeMethod(post);
log.debug("Response status code: " + result);
responseXml = post.getResponseBodyAsString();
}
finally
{
post.releaseConnection();
}
Unix:
cat POST.xml | curl -X POST -H 'Content-type: text/xml' -H 'SOAPAction:
"http://rrtechnologies.net/soap/BOOKING_SERVICE"' -d @- http://
82.150.226.157:80/resultsservices/services.aspx
Signature:
[Visual Basic]
GetBaseData(SetName As string, Parameters() As Parameter) As XmlNode
Sample Code:
[Visual Basic]
Dim baseData As New basedataService.basedata
baseData.Url = ConfigurationSettings.AppSettings.GetValues("baseDataURL")(0)
Dim servicedAirports As XmlNode = baseData.GetBaseData("ServicedAirport", Nothing)
Parameters:
SetName
The name of the query set to use for this request.
Parameters
An array of Parameter objects - see Parameter structure definition below. Do not pass or pass a null pointer
(Nothing) if the requested set does not require any parameters.
Remarks:
The following is a list of all Base Data SetNames, detailing Input Parameters and Output Nodes. One example
Request and Response Pair is provided. All other SetName Requests can be constructed by replacing the SetName and
ParameterName values in the example with the Input Parameters specified.
GetSystemSettingValue
This SetName allows retrieving the current value of any System Setting, given the System Setting Name as an input
parameter.
Output Nodes
SettingValue – The value of the System Setting.
Sample response:
Nation
This SetName allows retrieving all the Nations defined in the system
Input Parameters
(none)
State
This SetName allows retrieving all the States defined in the system for the Input NationCode. Returns all States for all
Nations if NationCode is left blank.
Input Parameters
NationCode (optional)
Output Nodes
StateCode
StateName
NationCode
SummerStartDate
WinterStartDate
SummerDifferenceToGMT
WinterDifferenceToGMT
City
This SetName allows retrieving all the Cities defined in the system for the Input CityCode, CityName, or StateCode.
Returns all Cities for all States if input is blank.
Input Parameters
CityCode (optional)
CityName (optional)
StateCode (optional)
Output Nodes
CityCode
CityName
StateCode
Airport
This SetName allows retrieving all the Airports defined in the system for the Input AirportCode, AirportName, or CityCode.
Returns all Airports for all States if input is blank.
Output Nodes
AirportCode
AirportName
CityCode
CityPair
This SetName allows retrieving all the City Pairs and related data for a given OriginAirport.
Input Parameters
OriginAirport
Output Nodes
OriginCity
DestinationCity
PairIndicator
Distance
DistanceUnitOfMeasure
PointsValue
BaggageAllowance
CityPairRuleNumber
Remarks
OriginAirport
DestinationAirport
DestinationAirportName
DestinationCityName
PassengerType
This SetName allows retrieving all the valid Passenger Types for a given BookingCategory. Gives all if input is blank.
Input Parameters
BookingCategory (optional)
Output Nodes
PassengerCode
Description
OtherServicesRequestFlag
RequestCode
FairQuoteIndicator
CancelIfNotConfirmed
BookingCategory
EmployeeNumberOSIRequiredFlag
BuddyPassPaymentRequiredFlag
PaymentForm
This SetName allows retrieving all the Payment Forms defined in the system for a given DocumentType (Payment Type)
or PaymentKey. Gives all if input is blank.
Output Nodes
DocumentType
DocumentCategory
DocumentGroup
PaymentKey
TypeDescription
CategoryDescription
FOPFormate
Currency
Input Parameters
(none)
Output Nodes
CurrencyCode
Description
DecimalPrecision
RoundingValue
NeutralUnitOfCurrency
SSR
This SetName allows retrieval of all SSR and OSI defined in the system.
Input Parameters
(none)
Output Nodes
RequestCode
Description
RequestType
ActiveFlag
ValidationRegularExpression
ValidationErrorMessage
RemovePermissionFlag
ServicedAirport
Output Nodes
AirportCode
AirportName
CityCode
CityName
AirportConnection
This SetName allows retrieving all Airport Codes with service from the input FromAirportCode.
Input Parameters
FromAirportCode
Output Nodes
AirportCode
PassengerTitle
Input Parameters
(none)
Output Nodes
Title
Description
PassengerCode
This SetName allows retrieving all Passenger Codes defined in the System.
Input Parameters
(none)
Output Nodes
PassengerCode
Description
SellingClass
This SetName allows retrieving data on all the Selling Classes defined in the System.
Output Nodes
ClassCode
CabinCode
Cabin
ParentClassCode
AgencyBookOnBehalfOf
This SetName allows retrieving all the Travel Agencies that can book ‘on behalf of’ the input Travel Agency.
Input Parameters
AgencyCode
Output Nodes
AgencyCode
AgencyName
OTAAirRules
This SetName allows retrieving Endorsements and Restrictions for OTA specific Fare Codes.
Input Parameters
OriginAirportCode
DestinationAirportCode
FareCode
CompanyCode
NegotiatedFareFlag
Output Nodes
OriginAirportCode
DestinationAirportCode
FareCode
CompanyCode
FareTextType
TicketDescription
Description
ClientDocument
This SetName allows retrieving all Client Document types defined in the system.
Output Nodes
DocumentCategory
DocumentType
TypeDescription
Description
ClientFamilyType
Input Parameters
(none)
Output Nodes
FamilyType
Description
BusinessPassFares
This SetName allows retrieving Fare Codes that are valid for the input Business Pass Id.
Input Parameters
BusinessPassID
Output Nodes
FareCode
BusinessPassClasses
This SetName allows retrieving Class Codes that are valid for the input Business Pass Id.
Input Parameters
BusinessPassID
Output Nodes
ClassCode
BusinessPasses
This SetName allows retrieving all Business Pass definitions in the system.
Input Parameters
(none)
Output Nodes
BusinessPassID
Description
SSRCode
Input Parameters
(none)
Output Nodes
RequestCode
Description
CurrencyCode
This SetName allows retrieving all Currency Codes defined in the System, with their Exchange Rates.
Input Parameters
(none)
Output Nodes
CurrencyCode
NUCRate
FeeDefinition
This SetName allows retrieving all the Fees defined in the system, with their application rules. Takes several optional
input parameters to retrieve only specific Fees that apply to those criteria.
Output Nodes
FeeID
CompanyCode
FeeTypeRCD
FeeCode
Description
ValidFromDateTime
ValidUntilDateTime
FeeValue
FeeCurrency
FeePercentFlag
TaxValue
TaxPercentFlag
SellingClassCode
DaysBeforeDeparture
UseDaysBeforeDeparture
PerPassengerFlag
PassengerCode
BranchCode
PaymentType
PaymentForm
BookingCategory
FareCode
FlightPath
SSRCode
MinFeeValue
SystemSetting
This SetName allows retrieving System Settings that pertain to the Web.
Input Parameters
(none)
Output Nodes
SystemSettingCode
SystemSettingValue
AirportTimeZone
This SetName allows retrieving the GMT offsets for all the Airports in the System.
Output Nodes
AirportCode
CityCode
StateCode
SummerStart
WinterStart
SummerGMTDiff
WinterGMTDiff
DuplicateBooking
This SetName allows retrieving Locators that match the Input of an attempted booking; thus alerting to duplicates.
Input Parameters
FlightNumber
BoardDate
OriginAirport
DestinationAirport
PaymentType
PaymentForm
DocumentNo
AgencyCode
Output Nodes
Locator
AllotmentReportDetails
This SetName allows retrieving a detailed report of existing Allotments in the system, based on input Date Range and
optional Agency, Carrier, or Flight.
Input Parameters
FromDate
ToDate
AgencyCode (optional)
CarrierCode (optional)
FlightNumber (optional)
Output Nodes
FlightNumber
BoardDate
Origin
Destination
SellingClass
AllotmentQuantity
ReportedQuantity
CurrencyCode
Fare
CarrierOrAgency
AllotmentReportSummary
Input Parameters
FromDate
ToDate
AgencyCode (optional)
CarrierCode (optional)
FlightNumber (optional)
Output Nodes
CarrierOrAgency
MonthOfTravel
AllotmentQuantity
ReportedQuantity
Fare
CurrencyCode
SeatAttribute
This SetName allows retrieving all Seat Attributes defined in the System.
Input Parameters
(none)
Output Nodes
Attribute
Description
DescriptionCode
Active
UnacknowledgedSked
This SetName allows retrieving a list of PNRs that have undergone a Schedule Change, and the passenger has yet to
acknowledge the change. Input Parameters are a mandatory Date Range, and optional Flight Number.
Output Nodes
Locator
FlightNumber
FlightDate
OriginAirport
DestinationAirport
DepartureTime
Passenger
HomePhone
BusinessPhone
OtherPhone
AgentPhone
EmailAddress
FaxNumber
LinkID
FareCodePrivateNet
This SetName allows retrieving all Private and Net Fare Codes defined in the system for the input Promo Code.
Input Parameters
PromoCode
Output Nodes
FareCode
NetFareFlag
PrivateFareFlag
DivideFrom
Input Parameters
Locator
Output Nodes
PrevDivideFrom
PreviousBookNo
PreviousLocator
PreviousCreateDateTime
SkedChangeNotifications
This SetName allows retrieving all notifications for a Schedule Change, both confirmed and un-confirmed. Takes optional
Locator or Flight Number.
Output Nodes
Locator
FlightNumber
FlightDate
OriginAirport
DestinationAirport
DepartureTime
Passenger
HomePhone
BusinessPhone
OtherPhone
AgentPhone
EmailAddress
FaxNumber
LinkID
AcknowledgedDateTime
AckInformation
DCSGetSeatZone
This SetName allows retrieving the DCS Seat Zone for an input Seat and Flight.
Input Parameters
DcsFlightId
Seat
Output Nodes
Zone
BookNoFromPaymentNo
This SetName allows retrieving a booking number for a PNR from the input Payment Number.
Input Parameters
PaymentNo
Output Nodes
BookNo
DiscardResidualVouchers
This SetName allows retrieving all Voucher Reason Codes in the System with the flag “Discard Residual Voucher”.
Output Nodes
DiscardResidualVoucher
NameMatchRequiredVoucher
This SetName allows retrieving all Voucher Reason Codes in the System with the flag “Name Match Required”.
Input Parameters
(none)
Output Nodes
VoucherReasonCode
OTAAgencyAccreditation
This SetName allows retrieving the Accreditation Entity status of an input Travel Agency.
Input Parameters
AgencyCode
Output Nodes
Accreditation
Signature:
[Visual Basic]
Function AVAILABILITY( _
DepartureAirport As String, _
ArrivalAirport As String, _
DepartureCity As String, _
ArrivalCity As String, _
BoardDate As String, _
CompanyCode As String, _
RoundTripFlag As Byte, _
GetFaresFlag As Byte, _
NumberOfSeats As Integer, _
AvailableSeatsFlag As Byte, _
AgencyCode As String, _
BranchCode As String, _
Currency As String, _
ReturnDate As String, _
PassCode As String, _
IgnoreMaxConnTime As Byte, _
FareDesignator As String, _
OnlyDesignatorFares As String, _
DisableTaxes As String, _
DisableFloatingFares As String, _
DaysBefore As Integer, _
DaysAfter As Integer _
) As XmlNode
Parameters:
DepartureAirport/ArrivalAirport
The IATA airport codes for origin and destination airports used for the outbound availability request. If roundtrip
availability is requested these parameters will be switched around for the return part
DepartureCity/ArrivalCity
The IATA city codes for the outbound request. If roundtrip availability is requested these parameters will be switched
around for the return part
BoardDate
Departure date for the outbound availability request, passed as a string in US date format (mm/dd/yyyy). The service
does NOT accept ISO 8601 or XSD dates in this parameter. Depending on branch settings for the branch specified
in the BranchCode parameter, Availability service may also retrieve availability for flights a certain number of days
before and/or after this date
CompanyCode
Two-letter IATA airline code
GetFaresFlag
Boolean (0/1) flag specifying whether only inventory should be checked to determine availability or if applicable fare
rules should also be applied. If set to 1, the response will contain basic fare and tax information for each available
selling class
NumberOfSeats
Number of seats needed
AvailableSeatsFlag
Boolean (0/1) flag specifying whether the service returns flights and classes with available inventory and applicable
fares (1) or all flights and classes for the requested origin/destination and departure date (0)
AgencyCode
ARC or Results travel agency code if this is a travel agency booking. Used for retrieving agency fares if the
GetFaresFlag is set to 1
BranchCode
Web branch code as defined in Results, e.g. ‘NK TTY 0001’. The branch code is used to determine service
behavior such as number of days before/after the requested departure and return dates, whether to only retrieve the
cheapest available selling class or all classes, branch specific fares etc.
Currency
Specifies the currency code used for fare and tax calculations if the GetFaresFlag parameter is set
ReturnDate
The return date used for roundtrip availability. Mandatory if the roundtrip flag is set, not used if it is not set. This
parameter need to be a string in US date format (MM/dd/yyyy). The service does NOT accept ISO 8601 or XSD
dates in this parameter. Depending on branch settings for the branch specified in the BranchCode parameter,
availability may also retrieve availability for flights a certain number of days before and/or after this date.
PassCode
Passenger code used to determine applicable fares and taxes in the availability response. Default ADULT but if
another passenger code is passed, the fares and taxes returned are for the passenger code passed in this
parameter
IgnoreMaxConnTime
Boolean (0/1) flag specifying whether the service should ignore system and branch settings for maximum time
allowed between connecting flights
FareDesignator
Promotion code, fare designator or ticket designator as defined in the Results fare code/route fare configuration
OnlyDesignatorFares
Flag to indicate is the availability should only return fares labeled with the fare designator provided in the
FareDesignatior parameter/node. Values can be true/false, default value is false.
DisableTaxes
Flag to indicate if availability call should disable tax calculation. This is so that fare grids/calendars can be
composed, without the performance impact of tax calculation logic. Set it to true to exclued tax calculation or set it to
false to include taxes. Detault is false.
DaysBefore
Number of days to display before the requested date. This provdes flexibility when doing availability search. Default
is 0.
DaysAfter
Number of days to display after the requested date. This provdes flexibility when doing availability search. Default is
0.
Return values
RequestData
This is the node that contains the full XML Availability request information
OriginDestinationOptions
This element is a wrapper for all origin and destination options matching the criteria specified in the availability
requests
OriginDestinationOption
This element is a wrapper for each available origin/destination option. It contains one or several FlightSegment
elements depending on if the option is a direct/through flight or if it is based on connections.
FlightSegment
This element is the wrapper for each segment. It contains all information about the flight, available classes and fares
if requested
SegmentNo
Sequential segment number within the OriginDestinationOption
CityPairNo
This is the sequential number of the city pair defined in the City Pair table in Results
DepartureCity/ArrivalCity
This is the IATA city code for the origination and destination cities
FlightNumber
This is the flight number in concatenated format; the two character IATA airline code plus the numeric flight number
BoardDate
The board date for the flight
DepartureAirport/ArrivalAirport
This is the three-character IATA airport codes for the origination and destination airports
FlightPath
Indicates whether the flight is a domestic flight (D) or international flight (I).
DateChangeIndicator
NoOfStops
This is the number of stopovers between the origin and destination airports. E.g., ‘0’ means no stopovers, ‘1’ means
there is one stop
Distance
Distance between the origin and destination
DistanceUOM
Unit of measurement for the flight distance; indicates whether the distance is in miles or kilometers
FlightNotesFlag
This indicates whether there are any special notes for this flight. If this flag is set, flight notes can be retrieved using
the flight status/flight information service
FlightNotes
Returns certain types of flight notes in clear text (type F only – refer to system documentation for details)
TotalJourneyTime
This is the JourneyTime plus the StopOverHours
NoOfConnections
This indicates number of connections involved in between the origin and destination requested
ReturnFlightFlag
This indicates if this is an outbound or return option. When this element is set to ‘0’ this is an outbound option; if set
to ‘1’ it is a return option
Classes
This element is a wrapper for the selling classes returned for the parent FlightSegment
SellingClass
This element is a wrapper for each individual selling class returned for the parent flight
ClassCode
This is the selling class code for the class e.g., ‘C’, ‘Y’ etc
SeatCount
This is the number of available seats in this selling class, or the maximum number of displayable seats according to
system and branch settings
FareCode
The lowest fare code available for this selling class/flight
FareValue
This is the base fare value for this fare code
TaxValue
This is the sum of taxes flagged as “display in availability” in the tax configuration, applied to the above base fare
FloatingFareFlag
This indicates whether the fare is a floating fare (1) or a normal fare (0)
FloatingBaseClass
For floating fares, this element indicates the selling class that the floating fare is based on. This parameter is empty
when the fare is not a floating fare
Cabin
This is the cabin class code for this selling class, normally the top level selling class in the selling class hierarchy.
CodeShare
This wrapper node contains the code share rule. Empty if the flight has no code share rule
FlightNumber
This is the other flight number that has a code share rule with the current flight. This element is not present if this is
not a chodeshare flight
Indicator
This indicates the status of the FlightNumber. Its value is either O or M. O means the airline operates the flight; M
means the airline markets the flight. This element is not present if this is not a chodeshare flight
Remarks:
Sample Code:
[Visual Basic]
Dim availService As New availabilityService.Availability
availService.Url = ConfigurationSettings.AppSettings.GetValues("availabilityURL")(0)
Dim availResponse As XmlNode = availService.AVAILABILITY(departureAirport, arrivalAirport, _
departureCity, arrivalCity, _
boardDate.ToString("MM/dd/yyyy", GetSystemDateFormatProvider()), _
companyCode, roundtripFlag, getfaresFlag, _
noofSeats, availableSeatsFlag, _
bookAgency, branchCode, currencyCode, _
returnDate.ToString("MM/dd/yyyy", GetSystemDateFormatProvider()), _
passCode, 0, _
fareDesignator)
Signature
[Visual Basic]
GetViaAirports(FlightNumber As string, BoardDate As string, DepartureAirport As string,
ArrivalAirport As string)
Parameters:
FlightNumber
This is the flight number (airline code + flight number) for which to retrieve via airports, e.g. RT203
BoardDate
Board date for the flight
DepartureAirport
Three character IATA airport code for the origin airport
ArrivalAirport
Three character IATA airport code for the destination airport
Return values:
ViaAirports
This is a wrapper node for the response
ViaAirport
This a wrapper node for each airport returned
SequenceOrder
This is the airport sequential number in the specified flight segment
AirportCode
This is the IATA airport code for the airport
Remarks:
Sample Code:
Sample response:
The pricing service input includes all information that may affect the pricing of a booking, such as the itinerary, number
of passengers of each type, branch and travel agency code. The service retrieves and returns both a summary and a
detailed calculation of fares, taxes and surcharges that apply to a booking.
Signature:
[Visual Basic]
PRICING( _
CompanyCode As String, _
Currency As String, _
ReturnFlag As String, _
Flights() As Flight, _
PassengerInfos() As PassengerInfo, _
AgencyCode As String, _
BranchCode As String, _
NonRevenueFlag As String, _
NotesInReturnFlag As String, _
ForceTotalValue As String, _
ForceBaseFareDiscountInAmount As Decimal, _
ForceBaseFareDiscountInPercent As Decimal, _
ReTaxedPairs() As ReTaxedPair, _
<XmlArrayItemAttribute("LockID")> LockIDs() As String, _
BookNo As Long, _
FareDesignator As String, _
OnlyDesignatorPrices As String) As XmlNode
Parameters
CompanyCode
Two-character airline code
Currency
Currency code
ReturnFlag
This controls how fares are selected for pricing. It can have three values:
A means automatic and will cause the pricing service to analyze the itinerary to determine if roundtrip fare can be
used and then will be used if it is cheaper than one way fare. If a combination of one way fares are cheaper then it
will be priced using those
Flights
This is an array containing a Flight object for each flight in the itinerary. See the definition of the flight class below
AgencyCode
ARC or Results travel agency code if the booking is an agency booking. Leave blank or pass a null pointer, null or
nothing if the booking is not an agency booking. This value determines whether any agency specific fares are
considered
BranchCode
This is the Results branch code as defined in the system. The branch code parameter must be passed in, even if
there are no branch specific fares
NonRevenueFlag
This indicates if this is non-revenue booking (1) or a normal revenue booking (0)
NotesInReturnFlag
This indicates if pricing notes should be included in the response (Y) or not (N)
ForceTotalValue
This should contain the fare plus tax and surcharge amount for manual pricing. If the parameter value is set to N, it
means no manual pricing is used. If specified, the pricing service will adjust fares so that the total amount equals this
value
ForceBaseFareDiscountInAmount
This should be the amount of base fare discounts. This amount is subtracted from the base fare amounts
ForceBaseFareDiscountInPercent
This indicates the percentage of base fare discount. E.g. if this parameter is 75, the base fares will be ¾ (75%) of
the fare defined in the system
ReTaxedPairs
When manual pricing is used, this parameter contains an array of ReTaxedPair objects indicating the manual fare
amount per passenger type. See the definition of the ReTaxedPair class below
LockIDs
This is an array of floating fare lock ids. When getting a floating fare for the first time (usually from availability), the
caller can ‘lock’ the floating fare so that it stays the same even if the class it is based on is sold out between the
availability request and the pricing request, or when repricing bookings
BookNo
This is the booking number. The booking number is used to look up fare locks that apply to the booking
FareDesignator
This is the fare designator/ticket designator/promotion code as defined in the results fare configuration
OnlyDesignatorPrices
This parameter indicates if pricing service should only take fare designator fares into account (Y) or not (N)
Return values:
PricingResponseVersion
This is the version of the Pricing Service used
Currency
Currency code used for the total amounts
PassengerCodes
This is a wrapper node for all priced passenger types. It contains an array of PassengerCode elements
PassengerCode
This node exists both as a wrapper for each passenger type in the response, and as a data element indicating the
passenger code, e.g. ADULT, CHD, INF
SeatCount
This is the number of passengers of this type in this booking
FareValuePerSeat/ SurchargePerSeat/TaxValuePerSeat
This is the fare/surcharge/tax amount only for one passenger of this type of passengers
FareLadder
This is the breakdown of the fare total composition, what fares and taxes are applied to each segment
FareCodes
This wrapper node contains an array of FareCode elements for the fare segments applied to the booking
FareCode
This node is a wrapper for each fare segments applied and as a data element indicating the fare basis code
CompanyCode
Two character airline code
Description
This is the textual description of the fare code, from the ResultS fare configuration
ClassCode
The selling class this fare code belongs to
PassengerCode
The passenger code this fare applies to
Refundable
This indicates if the fare is refundable (1) or non-refundable (0)
OneWayReturn
This indicates if the applied fare is a one-way (0) or roundtrip fare (1)
BaseAmount
This is the original fare amount defined in the fare configuration
BaseCurrency
This is the currency code from the fare definition
ChangeAmount
This is the percentage, decrease/increase amount of the sub fare or discount (if applicable)
FinalAmount
The final fare amount for this segment of the itinerary after the change and after being divided in case of roundtrip
fares
CurrencyCode
Final amount currency code
Endorsement
This is the endorsement text for this fare
Restriction
This is the restriction text for this fare
ValidFrom/ValidTo
Travel dates for which this fare is valid
FareRouteID
This is a unique identifier of the fare, identifying exactly what fare was used for pricing. This can be used for
historical purposes to determine how a fare was calculated
NetFareFlag
This indicates if the fare is an agency net fare (1) or not (0). Net fares are commission free agency fares that should
not be disclosed to the passenger
PrivateFareFlag
This indicates if the fare is private fare (1) or published fare (0). Private fares are negotiated fares or airline internal
fares that should not be disclosed to the passenger
Flights
Wrapper node for all segments that the fare applies to
Flight
Wrapper node for each segment that the fare applies to
TaxCodes
Wrapper node containing an array of TaxCode nodes for all taxes that applies to the parent passenger code
TaxCode
Wrapper node for the tax information
TaxCode
Tax code for the parent TaxCode
CoverageType
This indicates if the tax is airport, state, or national tax. N means National; S means State; A means Airport
ShortDescription
A brief text description of the tax from the ResultS tax definition
TaxType
Tax type; fixed amount (=) or percentage (%)
TaxValue
For fixed taxes, this is the tax amount; for percentage taxes, this is the tax percentage of the fare
AppliedAmount
Tax amount applied to the fare
Compounded
This indicates if the tax can be compounded (1) or not (0), as defined in the tax configuration
TaxDetailID
This is a unique identifier of the tax definition. It refers to the tax detail record in the Results tax configuration
PassengerCode
Type of passengers this tax rule applies to. If empty, it means the tax is applicable to any passenger code
Notes
Fare notes, a description of how the price was determined. Normally blank, it will only contain a value if the
NotesInReturnFlag parameter is set
Remarks:
The pricing functionality is already wrapped in the PriceBooking method of the ResultsBooking library. If segments
and passengers exist in the booking, calling the PriceBooking method will populate all parameters, call the pricing
service and then populate the fare, surcharge and tax structures in the booking based on the pricing response.
Sample Code:
[Visual Basic]
'price for one adult passenger
Dim passengerArray(0) As pricingService.PassengerInfo
passengerArray(0) = New pricingService.PassengerInfo
With passengerArray(0)
.PassengerCode = "ADULT"
.NoOfSeats = 1
End With
'add flight info
Dim flightArray(0) As pricingService.Flight
flightArray(flightNo) = New pricingService.Flight
With flightArray(flightNo)
.FlightNumber = "DD8300"
.FlightDate = "06/16/2005"
.ClassCode = "M"
Sample response:
Signature:
[Visual Basic]
GetFlightDetails(<XmlArrayItemAttribute("Flight")> Flights() As FlightDetailsFlight, SegmentsFlag
As Integer, ServicesFlag As Integer, InventoryFlag As Integer, SSRInventoryFlag As Integer,
NotesFlag As Integer, RestrictionsFlag As Integer) As XmlNode
Parameters:
Flights
Array of Flight objects containing flight number, date, origin and destination. See the definition of the Flight class
below
SegmentFlag
Boolean flag (0/1) controlling whether segment information should be included in the response or not.
ServiceFlag
Boolean flag (0/1) controlling whether service information should be included in the response or not
InventoryFlag
Boolean flag (0/1) controlling whether inventory data for the flight (all classes and available seats in those classes)
should be included in the response or not
SSRInventoryFlag
Boolean flag (0/1) controlling whether SSR inventory information should be retrieved for SSRs that has SSR
inventory levels defined
NotesFlag
Boolean flag (0/1) controlling whether the response contains flight notes
RestrictionsFlag
Boolean flag (0/1) controlling whether the response contains flight restriction information
Return values:
Flights
Wrapper node for all flights in the response
Flight
Wrapper node for each flight, containing the flight details
FlightNumber
Flight number (airline code and flight number) for the flight
FlightDate
Flight date for the flight. Usually the same as the BoardDate, unless the flight is a multi leg flight whose first leg
departed before midnight and the current segment was boarded after midnight
DepartureTime
Departure time for the flight
ArrivalTime
Arrival time for the flight, local time at the destination
ArrivalDate
Arrival date for the flight, local time at the destination
JourneyTime
This is the length of the journey in minutes
DateChangeIndicator
This indicates whether the arrival date is the same as the board date (0), before (-1) or after (1, 2). Offset number of
days to the board date. Typical values is 0 or 1; -1 and 2 can only occur for flights crossing the International Date
Line.
DepartureCity
Three character IATA city code for the origin city
DepartureCityName
City name for the origin city
ArrivalCity
Three character IATA city code for the destination city
ArrivalCityName
City name for the destination city
DepartureAirportCode
Three character IATA airport code for the origin airport
DepartureAirportName
Airport name for the origin airport
ArrivalAirportCode
Three character IATA airport code for the destination airport
ArrivalAirportName
Airport name for the destination airport
DepartureTerminalCode
Terminal code for the terminal the flight departs from at the origin airport
DepartureTerminalName
Terminal name for the terminal the flight departs from at the origin airport
ArrivalTerminalName
Terminal name for the terminal the flight arrives to at the destination airport
Distance
Flight distance between the origin and destination, in miles or kilometers
DistanceUnitOfMeasurement
Unit of measurement for the flight distance (miles or kilometers)
NumberOfStops
Number of stopovers that this flight makes between the origin and destination, zero for direct flights
AircraftCode
Aircraft code for the aircraft used
AircraftDescription
Description of the aircraft used
FlightPeriodStartDate/ FlightPeriodEndDate
This is the flight period start and end dates, as defined in the flight schedule
Segments
Wrapper node for segment detail information contains one Segment element for each segment if the SegmentFlag
was set in the request
Services
Wrapper node for service information if the ServiceFlag was set in the request
Inventories
Wrapper node for inventory information if the InventoryFlag was set in the request
SSRInventories
Wrapper node for SSR inventory information if the SSRInventoryFlag was set in the request
Notes
Wrapper node for flight notes if the NotesFlag in the request is set
Restrictions
Wrapper node for flight restrictions if the RestrictionsFlag in the request is set
Remarks:
The call to this service is wrapped in the LoadFlightDetails method of the ResultsBooking.Booking class. The wrapper
method will call the service and populate the FlightDetails member and parts of the segment information based on the
flight details information.
Sample Code:
[Visual Basic]
'get flight details
Dim flightDetailSvc As New flightDetailsService.FlightDetails
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetFlightDetailsReply xmlns:RRT="http://rrtechnologies.net/soap/">
<FlightDetails>
<Flights>
<Flight>
<FlightNumber>RT2030</FlightNumber>
<BoardDate>2005-07-28</BoardDate>
<FlightDate>2005-07-28</FlightDate>
<DepartureTime>08:00</DepartureTime>
<ArrivalTime>12:00</ArrivalTime>
<ArrivalDate>2005-07-28</ArrivalDate>
<JourneyTime> 240</JourneyTime>
<DateChangeIndicator>0</DateChangeIndicator>
<DepartureCity>FLL</DepartureCity>
<DepartureCityName>FORT LAUDERDALE</DepartureCityName>
<ArrivalCity>LGA</ArrivalCity>
<ArrivalCityName>NEW YORK</ArrivalCityName>
<DepartureAirportCode>FLL</DepartureAirportCode>
<DepartureAirportName>FT LAUDERDALE/HOLLYWOOD
INTL</DepartureAirportName>
<ArrivalAirportCode>LGA</ArrivalAirportCode>
<ArrivalAirportName>LA GUARDIA INTERNATIONAL</ArrivalAirportName>
<DepartureTerminalCode>4</DepartureTerminalCode>
<DepartureTerminalName>Terminal Four</DepartureTerminalName>
<ArrivalTerminalCode>M</ArrivalTerminalCode>
<ArrivalTerminalName>Main Terminal</ArrivalTerminalName>
<Distance>1078</Distance>
<DistanceUnitOfMeasurement>MLS</DistanceUnitOfMeasurement>
<NumberOfStops>0</NumberOfStops>
<AircraftCode>321</AircraftCode>
<AircraftDescription>Airbus A321</AircraftDescription>
<FlightPeriodStartDate>2005-06-11</FlightPeriodStartDate>
<FlightPeriodEndDate>2005-11-15</FlightPeriodEndDate>
<SSRInventories>
<SSRInventory>
<RequestCode>PASE</RequestCode>
<Description>Pase Abordar Prioritario</Description>
<LimitNumber>65</LimitNumber>
<SSRCount>3</SSRCount>
<DefaultPrice>0.00</DefaultPrice>
</SSRInventory>
</SSRInventories>
</Flight>
</Flights>
</FlightDetails>
</RRT:GetFlightDetailsReply>
</soap:Body>
</soap:Envelope>
ASR services are used by the web to retrieve seat maps, seating information, and to make seat reservations.
GetFlightDateClassSeatMaps retrieves seat map information (seat map image paths/names, dimensions, etc.) for a
specific flight/board date/origin destination/class.
Signature:
[Visual Basic]
GetFlightDateClassSeatMaps(FlightNumber As String, BoardDate As String, DepartureAirport As
String, ArrivalAirport As String, ClassCode As String) As XmlNode
Parameters:
FlightNumber
Flight number (airline code and flight number) for the flight seat maps are requested for
BoardDate
Board date as a string in US date format (MM/dd/yyyy)
DepartureAirport
Three character IATA airport code for the origin airport
ArrivalAirport
Three character IATA airport code for the destination airport
ClassCode
Selling class code for which the class seat maps are requested. This parameter is used to determine what cabin
seat maps are requested for
Return values:
SeatMapID
This is a numeric identifier of the specific seat map. This value is a required parameter in certain other ASR
operations, for example when requesting seats
Description
This is a textual description of the seat map, typically only used for seat map maintenance
ImageURLPath
URL or UNC path to the seat map background image
ImageHeight
This is the height in pixels of the seatmap background image
BlockImage
URL or UNC path to the blocked seat overlay image
ReserveImage
URL or UNC path to the reserved seat overlay image
VacantImage
URL or UNC path to the vacant seat overlay image
UnavailableImage
URL or UNC path to the unavailable seat overlay image
SeatWidth/SeatHeight
Width of height (in pixels) of a seat in the seat map
Sample Code:
[Visual Basic]
Dim asrService As New seatresService.asrservice
asrService.Url = ConfigurationSettings.AppSettings.GetValues("asrURL")(0)
Dim seatMapInfo As XmlNode = asrService.GetFlightDateClassSeatMaps(flightNumber,
boardDate.ToString("MM/dd/yyyy", GetSystemDateFormatProvider()), originAirport,
destinationAirport, sellingClassCode)
Sample response:
Retrieves all seats and seat availability information on a specific flight/board date/origin destination/class/seat map.
Signature:
[Visual Basic]
GetFlightDateAllSeats(ByVal FlightNumber As String, ByVal BoardDate As String, ByVal
Parameters:
FlightNumber
Flight number (airline code and flight number) for the requested flight
BoardDate
Board date in US date format (MM/dd/yyyy)
DepartureAirport
Three character IATA airport code for the origin airport.
ArrivalAirport
Three character IATA airport code for the destination airport.
ClassCode
Selling class code to retrieve seats for
SeatMapID
Seat map ID from the GetFlightDateClassSeatMaps method.
Return values:
Seat
Wrapper node for each seat returned
SeatDefinitionID
Numeric seat identifier from the seat map configuration
SeatNumber
RowNumber and SeatCode concatenated into a seat number, e.g. 14E
PositionX/PositionY
This is the horizontal and vertical location in pixels of the seat in the seat map image
AvailableFlag
Boolean flag (Y/N), indicating whether the seat is available for sale
BlockedFlag
Boolean flag (Y/N) indicating whether the seat is blocked
ForSaleFlag
Boolean flag (Y/N) indicating whether the seat is within the selling period (i.e. after the start selling time and before
the stop selling time)
Note: A seat is available for reservation only if AvailableFlag, BlockedFlag and ForSaleFlag indicates availability;
AvailableFlag=Y, BlockedFlag=N, ForSaleFlag=Y are the only seats available for reservation.
Sample code:
Sample response:
Parameters:
FlightNumber
The airline code plus the numeric flight number
BoardDate
Boarding date
DepartureAirport
Departure airport code
ArrivalAirport
Arrival airport code
ClassCode
Selling class code
Return Values
SeatAttribute
The node that contains the seat information of a specific seat number
SeatMapID
Seat map ID from the GetFlightDateClassSeatMaps method.
RowNumber
SeatCode
Values can be A, B, C, D, etc. depending on how your airline configures the seating on the seat map
SeatNumber
Row number plus the seat code
PositionX, PositionY
This is the horizontal and vertical location in pixels of the seat in the seat map image
SeatAttribute
It can be aisle, window, non-smoke, etc.
Description
A text description of the SeatAttribute in the Seat Attribute Reference table
DescriptionCode
A code of the SeatAttribute in the Seat Attribute Reference table
Sample response:
Reserve Seats
The ReserveSeats method makes temporary reservations of one or several seats on a flight for use on a booking.
The reservations will be made permanent when the booking is submitted for processing with the corresponding SEAT
SSRs.
Signature:
[Visual Basic]
ReserveSeats(FlightNumber As String, BoardDate As String, DepartureAirport As String,
ArrivalAirport As String, ClassCode As String, ReserveReason As String, BookNumber As
Integer, BlockFlag As String, <XmlArrayItemAttribute("SeatNumber")> SeatNumbers() As String)
As <XmlArrayItemAttribute("FlightSeatReservationGroupID", IsNullable:=false)> Integer()
Parameters:
FlightNumber
The airline code plus the numeric flight number
BoardDate
The date to board the flight, in the format of mm/dd/yyyy
DepartureAirport/ArrivalAirport
The three-character departure/arrival airport code
ClassCode
The selling class code of the itinerary segment.
BookNumber
Numeric booking number if known or 0 if unknown.
BlockFlag
Boolean flag (Y/N) indicating whether the seat is being reserved (N) or blocked from reservations (Y).
SeatNumbers/SeatNumber
A string array containing one or more seat numbers to be reserved, concatenated row numbers and seat codes e.g.,
‘14B’.
Return Values
FlightSeatReservationGroupID
An array of unique numeric seat reservation identifiers. Each reservation has its’ own unique
FlightSeatReservationGroupID.
Sample Code:
[Visual Basic]
'initiate the asr service proxy
Dim asrService As New seatresService.asrservice
asrService.Url = ConfigurationSettings.AppSettings.GetValues("asrURL")(0)
Sample response:
Signature:
[Visual Basic]
GetBookSeatReservations(ByVal BookNumber As Integer) As XmlNode
BookNumber
Numeric booking number
Return values:
FlightSeatReservationID
Numeric unique identifier for a seat reservation on the reserved flight segment
FlightSeatReservationGroupID
Numeric unique identifier for a seat reservation (for all affected legs)
FlightDateLegID
Numeric unique identifier of a flight/date/origin/destination
SeatMapID
Numeric identifier of the seat map where the reserved seat is visualized
SeatDefinitionID
Numeric identifier of the seat
TemporaryReserveFlag
Boolean flag (Y/N) indicating whether the reservation is confirmed or not
ReleaseDateTime
Expiry date and time for temporary seat reservations. Null or blank for permanent reservations
BoardingControlNumber
Boarding control number – sequential boarding pass number. 0, null or blank if a boarding pass has not yet been
generated
Sample code:
[Visual Basic]
Dim asrService As New seatresService.asrservice
asrService.Url = ConfigurationSettings.AppSettings.GetValues("asrURL")(0)
Dim seatReservations As XmlNode = asrService.GetBookSeatReservations(bookNumber)
Remarks:
<RRT:Header/>
<RRT:Body>
<RRT:GetBookSeatReservationsReply>
<GetBookSeatReservations>
<SeatReservation>
<FlightSeatReservationID>297452</FlightSeatReservationID>
<FlightSeatReservationGroupID>91</FlightSeatReservationGroupID>
<FlightDateLegID>20722</FlightDateLegID>
<FlightNumber>RT900</FlightNumber>
<BoardDate>08/25/2004</BoardDate>
<FlightDate>08/25/2004</FlightDate>
<DepartureTime>06:30</DepartureTime>
<DepartureAirportCode>FLL</DepartureAirportCode>
<DestinationAirportCode>DTW</DestinationAirportCode>
<SeatDefinitionID>9</SeatDefinitionID>
<RowNumber>17</RowNumber>
<SeatCode>F</SeatCode>
<SeatNumber>17F</SeatNumber>
<SeatMapID>1</SeatMapID>
<PositionX>300</PositionX>
<PositionY>68</PositionY>
<ReserveReason/>
<TemporaryReserveFlag>N</TemporaryReserveFlag>
<ReleaseDateTime/>
<BoardingControlNumber/>
<PassengerNumber>1</PassengerNumber>
<PassengerName>DOE/JOHN</PassengerName>
<PassengerDescription>UMNR</PassengerDescription>
</SeatReservation>
</GetBookSeatReservations>
</RRT:GetBookSeatReservationsReply>
</RRT:Body>
</RRT:Envelope>
Release Seats
Releases seat reservations. Use only for temporary reservations; permanent reservations should be released by
submitting the booking with the SEAT SSRs cancelled (action code XX) to avoid inconsistencies between SSRs and
seat reservations.
Signature:
[Visual Basic]
ReleaseSeats(FlightNumber As string, BoardDate As string, DepartureAirport As string,
ArrivalAirport As string, SeatNumbers As ArrayOfSeatNumber)
FlightNumber
Flight number (airline code and flight number) for the requested flight
BoardDate
Board date in US date format (MM/dd/yyyy)
DepartureAirport
Three character IATA airport code for the origin airport
ArrivalAirport
Three character IATA airport code for the destination airport
SeatNumbers
Array of seat number(s) to release
Validate Booking
This call validates booking data, ensuring that mandatory fields are specified, flight segments are valid and
determines if any fees apply to the booking.
Signature:
[Visual Basic]
ValidateBooking(Booking As XmlNode) As XmlNode
Parameters
The booking is submitted as an XmlNode/XmlDocument containing the entire booking. Some of the main nodes are
described below, refer to samples for details.
BookNo
Numeric booking number, if known
Locator
Alphanumeric record locator, if known
SeatCount
Number of seats requested in the booking
NonSeatTakingPax
Number of non seat taking passengers in the booking e.g. number of infants
OriginAddress
This is the booking origin address
ExternalLocator
Locator generated outside of Results
ReceivedFrom
Textual description of the booking source
PaymentBalanceValidated
Reserved, not used by the booking validation service.
BranchCode
Booking origin branch code, used for pricing
Segments/Segment
Array of Segment nodes containing information on each booked segment
ActionCode
HashValue
You can obtain the HashValue from the Validate Booking reply
Fares/Fare
Array of Fare nodes containing information about fares applied to the booking
SourceReferenceId
You can obtain the HashValue from the Pricing Service
Taxes/Tax
Array of Tax nodes containing information about taxes applied to the booking
Fees
Array of Fee nodes containing information about fees applied to the booking.
SSRData
Array of SSR nodes containing detailed information
Payments/Payment
Array of payments applied to the booking
PaymentNo
A Payment No is the unique ID of each payment in the system, generated by Results when a payment is created.
You can input a zero now.
PaymentForm
Payment Form (along with PaymentType) defines a payment document, i.e. CC/VI for a Visa Credit card.
Return values:
The response from the validation service is the booking, as submitted and completed with validation errors/warnings,
validation ID and any fees that apply.
Version
The version number of the validation service
Id
The validation ID that identifies the booking is ready for final submit
Error
This will be the error code if the execution of the request is unsuccessful
Notes
This will give a description of the error if the execution of the request is unsuccessful
Sample code:
Note: Fees are added through ResultsBooking.dll. Sample code is provided below:
[Visual Basic]
'Instantiate booking object
Dim book As New ResultsBooking.Booking
'Create an instance of fee object
Dim objFee As New ResultsBooking.Fee
With objFee
.FeeCode = "XEF"
.TaxCode = "FTX"
.Description = "New baggage fee"
.Amount = 500
.Tax = 20
.CurrencyCode = "USD"
.SourceReferenceID = 2
.ThisSession = True
End With
'Add fee to the booking object
book.Fees.Add(objFee)
Notes:
1. If you want to waive the fee, the fee node should look like this:
<FEE>
<FeeNumber>0</FeeNumber>
<FeeCode>WF</FeeCode>
<TaxCode>WF</TaxCode>
<Description>Waive name change fee</Description>
<Amount>-25.00</Amount>
<Tax>0</Tax>
<CurrencyCode>USD</CurrencyCode>
<SourceReferenceID>0</SourceReferenceID>
<ThisSession>true</ThisSession>
<ManualFee>false</ManualFee>
</FEE>
Where <FeeCode> and <TaxCode> should get the value from system setting PAYMENT_TYPE_FEE_WAI;
<Amount> represents a negative value equal to the amount to be waived. <PassengerName> is optional.
2. If you want to add time limit to a booking (for absence of payment or for deferred payments lilke cash), you need to
insert an SSR node for it into the SSRData wrapper node. Example:
<SSR>
<SSRNumber>0</SSRNumber>
<Carrier>YY</Carrier>
<Code>RRTL</Code>
<ActionCode>HK</ActionCode>
<Count>1</Count>
<SSRPassengers>
<int>1</int>
</SSRPassengers>
<Text>M1200</Text>
</SSR>
where
In Text element, M indicates minute; the number is the actual time limit in minutes.
3. If the booking is paid with PROSA credit card, you will see an extra node within the PAYMENT wrapper node:
4. For modified bookings, the following elements may be added to the <Passenger> node (after the current name)
and is required if the change involes name(s).
<Passengers>
<Passenger>
<PassengerNo>1</PassengerNo>
<PassengerCode>ADULT</PassengerCode>
<ContactInformation>
<Address />
<City />
<County />
<State />
<Nation />
<PostalCode />
<HomePhone />
<BusinessPhone />
<AgentPhone />
<OtherPhone />
<Fax />
<Email />
</ContactInformation>
<PassengerAge>0</PassengerAge>
<PassengerAgeUnit />
<ClientProfileCode />
<LastName>TEST</LastName>
<FirstName>ZZZ</FirstName>
<MiddleName />
<Title />
<Type>ADULT</Type>
<PassengerName>TEST/ZZZ</PassengerName>
<OldLastName>TEST</OldLastName>
<OldFirstName>JOHN</OldFirstName>
<OldMiddleName />
<OldTitle />
<OldPassengerName>TEST/JOHN</OldPassengerName>
</Passenger>
</Passengers>
Submits bookings for creation or modification. This method is wrapped in the SubmitBooking method of the
ResultsBooking.Booking class.
Signature
[Visual Basic]
SubmitBooking(Booking As XmlNode) As BookingSubmitDetails
Parameters:
BookNo
Numeric booking number
Locator
Six character alphanumeric booking record locator.
NonSeatTakingPax
The number of non-seat taking passengers in the booking e.g., number of infants.
OriginAddress
Booking source origin address.
ExternalLocator
This is the locator from the external source
ReceivedFrom
Textual booking source description
BranchCode
Booking branch code, used for pricing
AgencyCode
ARC or Results travel agency code for travel agency bookings. Leave blank or null for non-agency bookings.
FareDesignator
Fare designator/ticket designator/promotion code used by this booking. Leave blank or null if no fare designator was
used.
SourceIP
IP address of the remote system creating or modifying the booking. E.g., the web user’s IP address for web
bookings
Passengers/Passenger
Array of Passenger nodes containing passenger names, descriptions and contact information
Segments/Segment
Array of Segment nodes containing information on each booked segment
Fares/Fare
Array of Fare nodes containing information about fares applied to the booking
Taxes/Tax
Array of Tax nodes containing information about taxes applied to the booking
Fees
Array of Fee nodes containing information about fees applied to the booking
SSRData
Array of SSR nodes containing detailed information about
Payments/Payment
Array of payments applied to the booking. Payment nodes has to have PaymentNo element with value 0 in order for
the payment records to be stored with the booking. Example: <PaymentNo>0</PaymentNo>
Refunds/Refund
Array of refund requests for modified bookings. Each refund will result in a voucher
WaitForReply
Boolean flag (true/false) indicating whether the service should wait for the system to process the booking before
returning submit status
WaitSeconds
Number of seconds to wait if WaitForReply is set to true
Return value:
SubmitID
A unique identifier of each individual booking submit request. This value is used to query for booking processing
status or cancel booking request through the SubmitBookingStatus method.
Sample code:
[Visual Basic]
'load sample booking xml
Dim bookingInfo As New XmlDocument
bookingInfo.Load("c:\temp\testbooking.xml")
'call the validation service
Dim bookValidationService As New bookValidationService.bookingValidation
bookValidationService.Url = ConfigurationSettings.AppSettings.GetValues("bookValidationURL")
(0)
Dim validationResponse As XmlNode _
= bookValidationService.ValidateBooking(bookingInfo.DocumentElement)
bookValidationService = Nothing
'if there were no validation errors, submit the booking
If validationResponse.SelectNodes("Errors/ErrorInfo") Is Nothing Then
'call the booking submit svc
Dim bookSubmitService As New bookingSubmitService.bookingsubmit
bookSubmitService.Url = ConfigurationSettings.AppSettings.GetValues("bookSubmitURL")(0)
Dim bsDetails As bookingSubmitService.BookingSubmitDetails =
bookSubmitService.SubmitBooking(bookingInfo.DocumentElement)
bookSubmitService = Nothing
'check booking submit status
Dim submitStatus As bookingSubmitStatusService.BookingStatus
Dim bookingStatus As New bookingSubmitStatusService.bookingSubmitStatus
bookingStatus.Url = ConfigurationSettings.AppSettings.GetValues("bookSubmitStatusURL")(0)
submitStatus = bookingStatus.SubmitBookingStatus(bsDetails.SubmitID, "false", 1)
bookingStatus = Nothing
'check submit status
Dim submitStage As String = submitStatus.Stage
Select Case submitStage
Case "INQUEUE"
'Booking is in the TTY-in queue, waiting to be processed
Notes:
1. For the Fee node, parameter <Tax> has to have a value. Enter 0 if there is no <TaxCode> associated with this
<FeeCode>.
2. If the booking is paid with PROSA credit card, you will add an extra node within the PAYMENT wrapper node:
<PRCM>
<OperationNumber>19677 </OperationNumber>
<AuthorizationNo>56 </AuthorizationNo>
</PRCM>
DOCS – for primary travel document information (e.g. passport, national ID card)
DOCO – for secondary travel document information (e.g. visa)
DOCA – for passenger address information (either Residence or Destination address depending on the particular
Customs requirement)
P/MYS/012345678/MYS/30JUN73/M/14APR09/JOHNSON/SIMON/S3
In which
P = Travel Document Type, i.e. Passenger Passport (Other values can be F=Approved non-standard identity
documents use for travel; AC=Crew Member Certificate; A=Identity Card; C=Identity Card; I=Identity Card;
IP=Passport Card.)
In which
NY = Residence State
S3 = Segment Association
In which
S3 = Segment Association
Checks the processing status of the new/modified booking submitted into Results, using the SubmitID from the reply
of BookSubmit.
Signature:
[Visual Basic]
SubmitBookingStatus(SubmitID As string, WaitForReply As string, WaitSeconds As int)
Parameters
SubmitID
A submit id returned from the booking service's SubmitBooking method. This parameter a booking submission and is
used to retrieve the processing status for the specified submission
WaitForReply
Boolean flag (true/false) controlling whether the service will wait for the booking to get processed before replying. If
set, the service will wait up to the number of seconds specified in WaitSeconds before replying. This should normally
be set to false to avoid congestion.
WaitSeconds
Maximum number of second to wait if WaitForReply is set to True
Return values:
Locator
This is the Results locator
ExternalLocator
This is the external locator
Completed
Boolean flag (true/false) indicating processing status. As long as this value is “false”, the SubmitBookingStatus API
call needs to be re-issued for the same SubmitID. Make sure that you have a reasonable time and retry limit for the
SubmitBookingStatus API, as conditions in the system may exist where submitted booking messages may be
XML Service APIs Page 92
delayed for an indefinitely long time. When those retry limits are reached the transaction with the particular SubmitID
should be considered as failed and discarded using the CanceBookingReques API. The end user should be directed
to a call center for further handling.
Stage
String indicating the current processing stage for the submission request. The transactions is considered properly
processed only when the Completed reply node is “true”, and the Stage node value has a value of DONE,
OUTQUEUE or ETDONE. Any other value in the Stage node should be treated as a failure in processing the
booking transaction for the particular SubmitID. The end user should be directed to a call center for further handling.
Remarks
Sample Code
[Visual Basic]
'check booking submit status
Dim submitStatus As bookingSubmitStatusService.BookingStatus
Dim bookingStatus As New bookingSubmitStatusService.bookingSubmitStatus
bookingStatus.Url = ConfigurationSettings.AppSettings.GetValues("bookSubmitStatusURL")(0)
submitStatus = bookingStatus.SubmitBookingStatus(SubmitID, "false", 1)
Sample response:
This reply message indicates the booking is queued for processing. No record locator has been generated at this
time.
Cancel the new/modified booking submitted into Results, if for some reason the processing of the booking is stuck,
using the SubmitID from the reply of BookSubmit.
Parameter
SubmitID
The submit ID number returned from the system after you submit booking request.
<soap:Header/>
<soap:Body>
<RRT:CancelBookingRequestReply xmlns:RRT="http://rrtechnologies.net/soap/">
<status>OK</status>
<description>booking request cancelled</description>
</RRT:CancelBookingRequestReply>
</soap:Body>
</soap:Envelope>
Booking Retrieval
Retrieves booking information using booking number or internal record locator or external record locator; or any
combination.
Signature
Parameters:
BookingNumber
Results numeric booking number. Leave as 0 or blank if Locator or External Locator is used to retrieve the booking
Locator
Results record locator generated after booking confirmation
ExternalLocator
The External Locator of the PNR
Return values:
BookNo
Numeric booking number
PnrBookNumb
The six-character alpha- or alphanumeric record locator
GroupName
Name of a group if it is a group booking
BookAgencyCode
Agency code if it is an agency booking
CreaDateTime
Time the booking is created
BookingStatus
Values can be A (active) and X (cancelled)
NoOfSeats
Number of seats in this booking
BookCategory
Booking category can be S (single), G (group), and N (non revenue)
AgencyTradeName
This is the agency trade name if it is an agency booking
ExternalBookNumber
This is the external locator
PassengerNo
The sequential number of a passenger in the booking
PassengerName
The name of this passenger
RequestNos
This indicates which SSR/OSI belongs to this passenger. Multiple requests are separated by #
RemarkNos
This indicates which remark is for this passenger
RouteNo
The route identifier defined in Route table for this city pair
FareNos
The sequential number of the fare applicable. If this is the first segment of the booking, the number here is 1
SeatRqstType
Reserved for now
RqstCode
This is the special service code. SEAT means seat request
ActionCode
This is the status of the request. HK for confirmed
RqstSeqnNo
This is the SSR sequential number in this booking
RequestText
SSR free text portion
SsrOsiIndicator
Indicates if this is an SSR or OSI request. S means SSR; O means OSI
AllPassengerFlg
This indicates if the request is for all the passengers in the booking
AllItenaryFlg
This indicates if the request is for the whole itinerary
PASSENGERCONTACT
This wrapper node contains all the passenger contact information, like name, email, phone, etc.
FARE
This wrapper node contains all fare information of the booking, like fare code, fare amount, etc.
PaymentNo
This is the payment identifier that is stored in the Payments table
RemarksText
This is additional payment information stored in the database. If the payment form is credit card, the approval/denial
information will be collected and stored here; if the payment form is voucher, the voucher information (number and
reason code) will be stored here
TIMELIMIT
The node that contained detailed time limit information on the booking
TimeLimitType
Value is T
TimeLimitDate
Format is ddmmyyyy
TimeLimitDateAlt
Format is mm/dd/yyyy
TimeLimitHour
Thime limit in the unit of hours
TimeLimitMinute
The time limit shown in minute if applicable. Not all the time limits have this value
TimeLimitSecond
Currently this is 00 for all bookings
TimeLimitTime
This is the time of the day when the time limit expires. Format is hh:mm:ss
CancelFlag
The flag to indicate if the booking should be canceled if the time limit expires. Value is C (automatic cancellation) or
Q (queuing the booking instead of cancellation)
QueueCode
The queue code (set uo in the Queue Codes table) for bookings on a time limit
DestinationBranch
Branch code for the booking
Remarks
Text description of the time limit. Example: Type B Agency Limit
AllPassengers
Indicator if the time limit applies to all passengers in the booking. Default is Y
SUMMARY
The wrapper node that contains information related with fare and payment, such as total fare, total payment, total
outstanding amount, etc.
InvokingBranch
Optional node for the branch information of the location invoking the booking retrieval request. Used for
implementations that need to have the branch details returned with the booking detail. When this node is provided,
the reply XML will contain the following additional section:
<InvokingBranch>
<BranchCode>RT FLL 0002</BranchCode>
CommonCurrencyCode
Optional node indicating the common currency to be used for the calculation of the CommonCurrencyFactor node in
the reply XML. When not provided, the system uses the booking fare currency as the basis for the currency rate
calculation. This parameter is relevant only in cases where mixed currency bookings are enabled.
Sample code:
[Visual Basic]
Dim bookRetrievalService As New bookInfoService.bookinfo
bookRetrievalService.Url = ConfigurationSettings.AppSettings.GetValues("bookInfoURL")(0)
Dim booking As XmlNode = bookRetrievalService.GetBooking(Nothing, bookRecordLocator,
Nothing)
Remarks:
The booking retrieval functionality is wrapped in the RetrieveBooking method of the ResultsBooking.BookingRetrieval
class. This method will call both the booking retrieval service and the ASR service's GetBookSeatReservations, do
the necessary format conversions using a stylesheet as defined in the bookRetrievalTransform application setting
(normally bookretrieval.xslt that comes with the ResultsBooking library) and deserialize into a new booking object.
If the airline allows mixed currency bookings, any calculations performed on financial data needs to be done by
multiplying the amount node with the CommonCurrencyFactor node for each value. This will make sure that the
calculations are done with the proper exchange rate, effective at the time the financial transaction was recorded in the
system. For single currency bookings this multiplication can be avoided.
<soap:Body>
<RRT:GetBookingReply xmlns:RRT="http://rrtechnologies.net/soap/">
<BOOKING BookNo="2674112">
<BookNo>2674112</BookNo>
<PnrBookNumb>HNTTTS</PnrBookNumb>
<GroupName/>
<BookAgencyCode/>
<CreaDateTime>2007/01/06/15/32/30</CreaDateTime>
<BookingStatus>A</BookingStatus>
<NoOfSeats>1</NoOfSeats>
<BookCategory>S</BookCategory>
<AgencyTradeName/>
<ExternalBookNumber>HNTTTR</ExternalBookNumber>
<OriginAddress>HDKWWRT</OriginAddress>
<TtyRejectIndicator>0</TtyRejectIndicator>
<EtRejectIndicator>0</EtRejectIndicator>
<ScrutinyFlag>N</ScrutinyFlag>
<EtQueueCount>0</EtQueueCount>
<TtyInQueueCount>0</TtyInQueueCount>
<LastPaymentDateTime/>
<FareDesignator/>
<PASSENGERS>
<PASSENGER>
<PassengerNo>1</PassengerNo>
<PassengerName>XECC/TEST</PassengerName>
<ClientPrflNo/>
<PassCode>ADULT</PassCode>
<RequestNos>4</RequestNos>
<RemarkNos/>
</PASSENGER>
</PASSENGERS>
<SEGMENTS>
<SEGMENT>
<RouteNo>1</RouteNo>
<FlightNumber>RT111</FlightNumber>
<SellingClsCode>Y</SellingClsCode>
<FlightDate>10Jan2007</FlightDate>
<DepartureCity>FLL</DepartureCity>
<ArrivalCity>LGA</ArrivalCity>
<ReserveStatus>HK</ReserveStatus>
<FareNos>1</FareNos>
<DepartureTime>06:00</DepartureTime>
<ArrivalTime>07:50</ArrivalTime>
<SeatRqstType>C</SeatRqstType>
<BookNo>2674112</BookNo>
<AltItineraryNo>1</AltItineraryNo>
<ItineraryNo>0</ItineraryNo>
<DepartureAirportCode>FLL</DepartureAirportCode>
<ArrivalAirportCode>LGA</ArrivalAirportCode>
<DepartureAirportName>FT LAUDERDALE/HOLLYWOOD
INTL</DepartureAirportName>
<DepartureCityName>FORT LAUDERDALE</DepartureCityName>
<ArrivalAirportName>LA GUARDIA INTERNATIONAL</ArrivalAirportName>
<ArrivalCityName>NEW YORK</ArrivalCityName>
Note 1: The below are used by the RRT Web Framework for PNR modifications, and can be ignored:
Note 2: If the booking is paid with PROSA credit card, you will see an extra node within the PAYMENT wrapper node:
<PRCM>
<OperationNumber>19677 </OperationNumber>
<AuthorizationNo>56 </AuthorizationNo>
</PRCM>
Splits passenger(s) from an existing booking into a new booking. This is typically used when changing itinerary for
one or several, but not all, passengers on a booking.
Signature:
[Visual Basic]
SplitBooking(BookingNumber As Long, ReceivedFrom As String, UserCode As String, DestID As
String, DutyCode As String, BranchCode As String, <XmlArrayItemAttribute("PassengerNo",
IsNullable:=false)> Passengers() As Integer) As XmlNode
Parameters:
BookingNumber
Numeric booking number
ReceivedFrom
Textual description of the requestor, e.g. the IP address of the remote system
DestID
Requestor destination ID, e.g. ‘FLLNK001’
DutyCode
Reserved, set to ‘DBA99’
BranchCode
Requesting branch code, e.g. ‘NK FLL 0001’
PassengerNo
Array of passenger numbers to split out from the booking
Sample code:
[Visual Basic]
'numeric booking number
Dim bookNo As Integer = 100
'received from text displayed in booking history
receivedFromUser = "Split Test"
'split out passengers 1 and 3
Dim passengerNos(1) As Integer
passengerNos(0) = 1
passengerNos(1) = 3
'get user/dest id from app settings
Dim userCode As String = ConfigurationSettings.AppSettings.GetValues("webUserCode")(0)
Dim userDestID As String = ConfigurationSettings.AppSettings.GetValues("webUserDestID")(0)
Dim branchCodeApp As String = ConfigurationSettings.AppSettings.GetValues("branchCode")(0)
'call the split booking service
Dim bookSubmitService As New bookingSubmitService.bookingsubmit
bookSubmitService.Url = ConfigurationSettings.AppSettings.GetValues("bookSubmitURL")(0)
Dim splitReply As XmlNode _
= bookSubmitService.SplitBooking(bookNo, receivedFromUser, userCode, userDestID,
"DBA99", branchCodeApp, passengerNos)
Sample response:
Downline cancel a no-show booking at the submission of flight PRL/PFS. If the booking uses refundable fares, a
voucher will be generated. However if the system does not issue vouchers upon cancellation, no voucher will be
generated.
Parameters:
VoucherReasonCode
One of the codes that is setup in the Voucher Reason Code table. Values can be WEB, CP, and CR
BookingNumber
The seven-digit identifier for the booking that you are canceling
ReceivedFrom
The name of the person requesting cancellation
UserCode
The user code of the person that is performing the cancellation
DestID
The destination branch code
DutyCode
The user type of the person performing the cancellation
BranchCode
The branch code of the user
Passengers
The node that wraps the passenger information in the booking
PassengerNo
The sequential number of the passenger in the booking if there are multiple passengers in the booking
Return Values
VoucherNumber
The voucher number generated from the booking cancellation. This field will be empty if the booking uses non-
refundable fares or if your system does not issue vouchers at all.
Sample Response:
This service will update the Frequent Flyer information for a passenger, in both the Reservation and the DCS; if the
PNR is already in DCS control
Parameters:
Locator
The Airline’s record locator for the PNR.
FQTVtext
The Frequent Flyer ID.
Sample Response:
Signature:
[Visual Basic]
GenerateLocator(UserCode As String, DestinationID As String) As XmlNode
Parameters:
UserCode
An up to five-character user ID, e.g. ‘WEB’.
DestinationID
The destination ID of the caller, e.g. ‘FLLNK0001’
Return values:
BookingNumber
Web generated unique booking number. However this is not the booking number you see in the booking number
field in Results Booking dialog box
Locator
Web generated external record locator. You will see this in the external locator field in Results Booking dialog box
Sample code:
[Visual Basic]
'get config settings
Dim userCode As String = ConfigurationSettings.AppSettings.GetValues("webUserCode")(0)
Dim userDestID As String = ConfigurationSettings.AppSettings.GetValues("webUserDestID")(0)
'call service to create locator
Dim locatorGenerator As New generateLocatorService.generateLocator
locatorGenerator.Url = ConfigurationSettings.AppSettings.GetValues("generateLocatorURL")(0)
Dim locatorInfo As XmlNode _
= locatorGenerator.GenerateLocator(userCode, userDestID)
'print locator information to the debug window
Debug.WriteLine("Numeric Booking Number: " _
& locatorInfo.SelectSingleNode("BookingNumber").InnerText)
Debug.WriteLine("Alphanumeric Locator: " _
& locatorInfo.SelectSingleNode("Locator").InnerText)
Remarks:
To retrieve GUI bookings from the web, use the following XML call:
Locks a floating fare so it will stay even if the original base fare is sold out
Parameters:
ClassCode
Selling class for the floating fare
DepartureDate
Departure date this fare is being locked for
AirportCodes
Array of origin, via and destination airport codes
FlightNumbers
Flight number(s) this fare was retrieved for
FloatingFareCode
Fare code for the floating fare
FloatingFareAmount
The fare amount for the floating fare
Currency
Fare currency code
RefundableFlag
Boolean flag (Y/N) indicating whether the floating fare is a refundable or non-refundable fare.
BaseFareCode
The fare code on which the floating fare is based
BaseFareAmount
The fare amount on which the floating fare is based
Sample response:
FloatingFareID is the return for executing the XML request. This ID number will be used when you assign the floating
fare to a booking.
Parameters:
FloatingFareID
Floating fare ID returned from the lock fare request
BookingNumber
This is the booking number on which you can apply this FloatingFareID
If you go to Results to retrieve the booking, you will see the segment is upgraded to A class.
Parameters:
AgencyCode
ARC or Results travel agency code
Return Values:
Sample Output:
Parameters:
AgencyCode
ARC or Results travel agency code
Return Values:
Sample output:
Parameters:
AgencyCode
ARC or Results travel agency code
ScrutinyFlg
Default is N if it is not set in the XML message
Return Values:
This changes the InvoiceSchedule date from the 29th to the 30th of each month.
Sample output:
Signature:
[Visual Basic]
ValidateLogin(AgencyCode As String, AgentCode As String, Password As String) As XmlNode
Parameters:
AgencyCode
ARC or Results travel agency code
Password
MD5 password hash of the agent’s password, in hexadecimal format.
Return values:
AccessGranted
Boolean flag (true/false) indicating whether the agency/agent/password hash is valid and authorized to log in.
AgencyTradeName
Trade name of the logged in travel agency.
Sample code:
[Visual Basic]
'generate MD5 password password hash
Dim md5 As New System.Security.Cryptography.MD5CryptoServiceProvider
Dim enc As New System.Text.ASCIIEncoding
Dim result As Byte() = md5.ComputeHash(enc.GetBytes(agentPassword))
Dim agencyUserPasswordHash As String
For byteNo As Integer = 0 To result.Length - 1
Dim hexNo As String = Hex(result(byteNo))
If hexNo.Length = 1 Then hexNo = "0" & hexNo
agencyUserPasswordHash = agencyUserPasswordHash & hexNo
Next
'call the agency login validation
Dim agencyService As New agencyService.agency
agencyService.Url = ConfigurationSettings.AppSettings.GetValues("agencyServiceURL")(0)
Dim agencyValidation As XmlNode = agencyService.ValidateLogin(agencyCode.ToUpper,
agentCode.ToUpper, agencyUserPasswordHash)
'check result
Dim failedResultCode As String
Dim failedResultText As String
If agencyValidation.SelectSingleNode("AccessGranted").InnerText = "true" Then
'Login successful
Else
'Login not successful
failedResultCode = agencyValidation.SelectSingleNode("ReasonCode").InnerText
failedResultText = agencyValidation.SelectSingleNode("Reason").InnerText
End If
Sample response:
Parameters:
AgencyCode
The travel agency code you are retrieving the booking for
Locator
The record locator of the booking you are retrieving
Return value:
RetrievalGranted
This indicates if the booking belongs to the agency. You can retrieve the booking when the value is “true”. If the
value is “false”, you are not able to retrieve the booking
Sample response:
This service retrieves a list of bookings by a particular agency, optional filters are creation period, passenger name,
flight/date/origin/destination or agent.
Signature:
[Visual Basic]
GetAgencyBookingList(PassengerName As String, FlightNumber As String, BoardDate As String,
Origin As String, Destination As String, AgencyCode As String, AgentCode As String,
CreatedDateStart As String, CreatedDateEnd As String) As XmlNode
Parameters:
PassengerName
Passenger name filter
FlightNumber
Flight number filter
BoardDate
Board date filter in US date format (MM/dd/yyyy)
Origin
Origin airport code filter
Destination
Destination airport code filter
CreatedDateStart/CreatedDateEnd
Creation date range filter for bookings. This is optional but recommended
Return values:
Locator
Record locator
FlightNumber
First segment in the booking
BoardDate
First segment’s board date
Origin/Destination
First segment’s origin/destination airport code
AgencyCode
Travel agency code
AgentCode
Booking agent
CreatedDateTime
Booking creation date time
Passengers/Name
Array of passenger names on the booking
Sample response:
Signature:
[Visual Basic]
GetAgencyBookingStatistics(AgencyCode As String, FromDate As String, ToDate As String) As
XmlNode
Parameters:
FromDate/ToDate
Date range to retrieve booking statistics for.
Sample code:
[Visual Basic]
Dim agencySvc As New agencyService.agency
agencySvc.Url = ConfigurationSettings.AppSettings.GetValues("agencyServiceURL")(0)
Dim agencyBookingInfo As XmlNode = agencySvc.GetAgencyBookingStatistics(agencyCode, _
Convert.ToString(IIf(fromDate.CompareTo(New Date) = 0, _
"", _
fromDate.ToString("MM/dd/yyyy", GetSystemDateFormatProvider())) _
), _
Convert.ToString(IIf(toDate.CompareTo(New Date) = 0, _
"", _
toDate.ToString("MM/dd/yyyy", GetSystemDateFormatProvider())) _
))
Sample response:
Signature:
[Visual Basic]
GetVoucherList(AgencyCode As String, Status As String) As XmlNode
Parameters:
AgencyCode
ARC or Results travel agency code
Status
Optional voucher status code, e.g. ‘OPEN’, ‘USED’, or ‘CXLD’. When empty, the service will return vouchers of all
statuses
Return values:
VoucherNumber
Numeric voucher number. For internal use only
Status
Voucher status code
Recipient
Name of the voucher recipient
AppliedLocator
Record locator of applied-to booking for used vouchers
OriginalVoucherNumber
Alphanumeric voucher number
AgencyCode
ARC or Results travel agency code
ExpiryDate
The date the voucher expires
ReasonCode
This is the two character voucher reason code stored in Voucher Reason table
ReasonDescription
This is a text description of the voucher type
Sample code:
[Visual Basic]
Dim agencySvc As New agencyService.agency
agencySvc.Url = ConfigurationSettings.AppSettings.GetValues("agencyServiceURL")(0)
Dim agencyVouchersInfo As XmlNode = agencySvc.GetVoucherList(agencyCode,
voucherStatus)
Sample response:
Parameter:
AgencyCode
The ARC agency code for this specific travel agency
Return Value:
RemainingCredit
The amount of credit this agency has with the airline
Sample response:
The response indicates the agency has $2148 in credit and will allow the agency to book against this credit.
Signature:
[Visual Basic]
Public Function CreateVoucher( _
VoucherReason As String, _
VoucherStatus As String, _
VoucherAmount As Decimal, _
CurrencyCode As String, _
Notes As String, _
PercentFlag As String, _
CommissionFlag As String, _
UseFee As Decimal, _
RefundableFlag As String, _
FlightNo As String, _
FlightDate As String, _
FlightOrigin As String, _
FlightDestination As String, _
CancelDate As String, _
RecordLocator As String, _
BookNo As Integer, _
CompanyCode As String, _
UserCode As String, _
Recipient As NameAddress, _
Payer As NameAddress, _
Payments As Payment) As XmlNode
Parameters:
VoucherReason
Two-character voucher reason code stored in the Voucher Reason table
VoucherStatus
Value for new vouchers can only be OPEN
VoucherAmount
The amount of the voucher
CurrencyCode
Voucher currency code
Notes
Voucher notes, such as voucher source.
CommissionFlag
This indicates if any commission should be charged
UseFee
This indicates if any fee applies when using this voucher
RefundableFlag
This indicates if this is a refundable voucher
FlightNo
This is the flight number of the booking this voucher will be used on. This parameter is empty if the voucher is not
used toward a booking
FlightDate
This is the flight date of the booking this voucher will be used on. This parameter is empty if the voucher is not used
toward a booking
FlightOrigin/FlightDestination
This is the origination/destination of the booking this voucher will be used on. This parameter is empty if the voucher
is not used toward a booking
RecordLocator
Record locator of the original booking, if the voucher was created from a booking
BookNo
This is the booking number
CompanyCode
This is the airline code
UserCode
Recipient
Name of the voucher recipient
Payer
The node contains payer information of the gift certificate, like the name, address, and phone number
Payments
This node contains all payment related information for the gift certificate, like type of payment, credit card number,
expiration date, payment flag, etc.
Return values:
Number
This is the Results voucher number
Expiry
This is the expiration date of the voucher. This is the creation date plus number of months specified in the
VOUCHER_EXPIRE_MOS system setting
[Visual Basic]
'Create a gift certificate
Dim voucherSvc As New voucherService.voucherservice
voucherSvc.Url = ConfigurationSettings.AppSettings.GetValues("voucherURL")(0)
giftcertificateInfo = voucherSvc.CreateVoucher(voucherReason, "OPEN", giftAmount,
currencyCode, _
voucherNotes, "N", "N", 0, "Y", "", "", "", "", _
Now.AddDays(validDays).ToString("MM/dd/yyyy", GetSystemDateFormatProvider()), _
"", 0, companyCode, "WEB", recipientInfo, payerInfo, paymentInfo)
'retrieve the new voucher number
Dim voucherNumber As String = giftcertificateInfo.SelectSingleNode("Number").InnerText
Sample response:
Signature:
[Visual Basic]
GetVoucher(VoucherNumber As String, Locator As String) As XmlNode
Parameters:
VoucherNumber
Alphanumeric voucher number
Locator
[Optional] Source record locator if voucher number is unknown.
Return values:
AppliedBookNo
This indicates the booking number the was used on
BookNo
This is the booking number from which the voucher is generated
FlightNo
This is the flight number this voucher was used on
FlightDate
This is the flight date for this voucher
Recipient
Name of the voucher recipient
Payer
Payer information for purchased vouchers
CancelDate
Cancellation date, if the voucher is cancelled.
PaymentMethod
The payment method for purchased vouchers
VoucherAmount
This is the amount of voucher
CreaUserCode
Creating user code for the voucher
CreaDestID
Destination id of the voucher creator
CreaDateTime
The date and time the voucher was created
UpdtUserCode
User code of the user that last modified this voucher
UpdtDestID
Destination id of the user that last modified this voucher
UpdtDateTime
Date and time of the last modification
VoucherNumber
Voucher number
UseFee
If a usage fee applies to this voucher, this is the usage fee amount.
FlightOrigin/FlightDestination
The origin and destination for the future flight
AgencyCode
Agency code, if this is an agency voucher
OriginVoucher
This is the original voucher number if this is a residual voucher
ClientProfileNo
This indicates if the passenger is in our client profile database
BusinessPassID
This indicates the Business Pass Rule Number if the voucher is a business pass voucher. If the value here is in
negative, then this is not a business pass voucher
Sample code:
[Visual Basic]
'retrieve voucher
Dim voucherService As New voucherService.voucherservice
voucherService.Url = ConfigurationSettings.AppSettings.GetValues("voucherURL")(0)
Dim voucherInfo As XmlNode = voucherService.GetVoucher(voucherNumber, Nothing)
Sample response:
This voucher is the residual voucher of 0014342Z which has an agency code 03542534 associated with it.
AgencyCode
This is the agency for whom you want to retrieve the voucher list
Status
This is the status of the list of vouchers to retrieve. Options are OPEN, USED, EXPD, and CXLD.
Return Values:
All the return values are the same as in single voucher retrieval except
ReasonCode
This is the two-character voucher reason code
ReasonDescription
This is text description of the voucher reason code
Sample response:
Retrieves the current flight status information, such as scheduled/estimated/actual departure and arrival, delay
information etc.
Signature:
[Visual Basic]
GetFlightInformation(FlightNumber As String, FlightDate As String, DepartureAirport As String,
ArrivalAirport As String) As XmlNode
Parameters:
FlightNumber
Flight number (concatenated airline code and flight number)
FlightDate
Board date is US date format (MM/dd/yyyy)
DepartureAirport
Origin airport code
ArrivalAirport
Destination airport code
UpdtUserCode
User code of the last updating user
UpdtUserName
Last updating user name
Return values:
FlightNumber
Flight number (concatenated airline code and flight number).
BoardDate
Board date in US date format (MM/dd/yyyy)
DepartureAirport/ArrivalAirport
Origin and destination airport codes
SequenceNumber
TODO
EstimatedTimeOfDeparture
Estimated departure time or blank if no estimate has been specified
ActualTimeOfDeparture
Actual departure time or blank of the flight has not departed
ScheduledTimeOfArrival
Scheduled arrival time
EstimatedTimeOfArrival
Estimated arrival time or blank if no estimate has been specified
ActualTimeOfArrival
Actual arrival time or blank if the flight has not arrived
DelayTimeForDeparture
Departure delay in minutes
DelayTimeForArrival
Arrival delay in minutes
DelayCode
Delay code describing the delay reason
DelayCodeDescription
Textual description of the delay code
DelayDescription
Textual delay description
Remarks
Flight remarks
SupplementaryComment
Additional comments
UpdtUserCode
User code of the last updating user
UpdtUserName
Last updating user name
UpdtDestID
Last updating destination id
UpdtDateTime
Last updated date and time
Sample code:
[Visual Basic]
XML Service APIs Page 150
Dim flifo As New flightInfoService.flifoservice
flifo.Url = ConfigurationSettings.AppSettings.GetValues("flightStatusURL")(0)
Dim flightStatusInfo As XmlNode = flifo.GetFlightInformation(flightNumber,
boardDate.ToString("MM/dd/yyyy", GetSystemDateFormatProvider()), originAirport,
destinationAirport)
Sample response:
Signature:
Parameters:
FlightNumber
FlightDate
DepartureAirport/ ArrivalAirport
EstimatedTimeOfDeparture
EstimatedTimeOfArrival
Sample code:
Sample response:
The RRT application generates an automatic value for the ClientPrflNo field. If the system using the RRT client profile
API needs to generate it’s own profile ID, the AltClientPrflNo field should be used. Once it is set to a value using the
CreateProfile or ModifyProfile APIs, It can be used instead of the ClientPrflNo node in the GetProfile and
ClientProfileLoing API calls.
When creating bookings with the SubmitBooking API, you still have to use the system generated ClientPrflNo value
for the client profile id of the passenger. So if the system using the RRT API is using the AltClientPrflNo for client profile
operations, before creating bookings that belong to a particular profile, the GetProfile API should be used to retrieve the
system generated ClientPrflNo value for a particular AltClientPrflNo value.
Create Profile
Parameters:
ClientName
This should be the client’s last name. This is required
PassCode
The client’s passenger type code. Example: ADULT; INF
ProfileType
Type of clients. Values can be I (Individual) or C (Company)
CompanyPrflNo
Company profile number if the ProfileType is Company. Empty if ProfileType is not Company
CompanyName
Name of the company if ProfileType is Company. Empty if ProfileType is not Company
ClientTitle
Title of the client. Example: Mr.; Mrs.
FirstName
Client’s first name. This is required
BranchCode
The branch code where this profile is created
BusinessTitle
Client’s business title
SecretaryName
Client’s secretary name
FileExpryDate
Date this profile expires. Default is one year from creation date
UserCode
This should indicate from where the profile is created. If value is WEB, it is created on the Web; if value is a Results
user code, then it is created by that user
CompanyCode
Airline code the profile belongs to
ContactDetails
This is the wrapper node for all contact information
ContactDetail
This is the wrapper node for each ContactType
ContactType
This indicates the type of contact. Values can be H (Home) or B (Business)
Address
City
State
Zip
Nation
PhoneNo
MobileNo
FaxNo
EmailAddress
Client’s Email address. This is required
Action
Action that is taken on the contact information. Default is Insert
Documents
This is the wrapper node for all the document nodes
Document
This is the wrapper node for this specific document
DocumentCategory
Document category. Values can be DL (Driver License); Passport; and Social Security Card
DocumentType
Type of document this document category belongs to. Values can be OT (Other)
DocumentNo
Number of this specific document. It can be driver license number; passport number; or social security number
DocmExpiryDate
Date this document expires
LastUsedDate
Last date the document was used with the airline
Action
Action to be taken on this document. Default is Insert
SeqnNo
Sequential number of this document in the Document node
Remarks
This is the wrapper node for all the Remark nodes
Remark
This is the wrapper node for this Remark
RemarkType
Remark Type. Default values is T (Text)
RemarkText
Contents of the Remark text. Default is client’s computer IP address. Example: Source IP: 192.168.112.64
SeqnNo
Sequential number of this remark in the Remark node
Requests
This is the wrapper node for all Request nodes
Request
This is the wrapper node for this Request
Indicator
This indicates if the Request is SSR (S) or OSI (O)
RequestCode
The code for this SSR/OSI. Example: WCOB (Wheel Chair on Board)
CarrierCode
Airline code that uses this RequestCode. Default is YY (All Airlines)
ActionCode
Action code (or Status Code) for this Request. Example: HK (Confirmed)
ActionNumber
Sequential number of action code applied on this Request
RequestText
Text message that goes with the Request
Action
Action to be taken on this Request. Default is Insert
SeqnNo
Sequential number of action to be taken on this Request
CreateProfile
This is the wrapper node for the response
ClientPrflNo
This is the Client Profile Number generated. It is a 15-character string
Sample response:
Get Profile
Parameters:
UserCode
This is from where the retrieval request is initiated. Example: WEB
CompanyCode
This is the airline code this profile belongs. In most cases, this is your airline code
BranchCode
This is the branch code where this profile is created
IncludePastBookings
Values can be true or false. This allows retrieval of past bookings with the client profile. Default is false
Return values:
ClientName
This should be the client’s last name
PassCode
The client’s passenger type code. Example: ADULT; INF
ProfileType
Type of clients. Values can be I (Individual) or C (Company)
CompanyPrflNo
Company profile number if the ProfileType is Company. Empty if ProfileType is not Company
CompanyName
Name of the company if ProfileType is Company. Empty if ProfileType is not Company
ClientTitle
Title of the client. Example: Mr.; Mrs.
FirstName
Client’s first name
BranchCode
The branch code where this profile is created
BusinessTitle
Client’s business title
SecretaryName
Client’s secretary name
TravTotalMiles
Total miles traveled. This is used in Frequent Flyer Program
TravExpenses
Total travel expenses
BirthDate
Client’s birth date
AnniversaryDate
Client’s anniversary date
FileExpryDate
Date this profile expires. Default is one year from creation date
ScrutinyFlag
Flag to indicate if the client is one on the list. Values can be Y or N
UserCode
This should indicate from where the profile is created. If value is WEB, it is created on the Web
CompanyCode
Airline code the profile belongs to
ContactDetails
This is the wrapper node for all contact information
ContactDetail
This is the wrapper node for each ContactType
ContactType
This indicates the type of contact. Values can be C (Company), H (Home), or B (Business)
Address
City
State
Zip
Nation
PhoneNo
MobileNo
FaxNo
EmailAddress
Client’s Email address
ClientFamilyDetails
This is the wrapper node for all ClientFamilyDetail nodes
ClientFamilyDetail
This is the wrapper node for this ClientFamilyDetail
SeqnNo
This is the sequential number for this ClientFamilyDetail in this node
FamilyName
Client family member’s last name
FirstName
Client family member’s first name
Title
Initial
BirthDate
AnniversaryDate
ClientPreferenceDetails
This is the wrapper node for all the ClientPreferenceDetails nodes
ClientRemarkDetails
This is the wrapper node for all the ClientRemarkDetail nodes
ClientRemarkDetail
This is the wrapper node for this ClientRemarkDetail
SeqnNo
This is the sequential number of this ClientRemarkDetail
RemarkType
Remark Type. Default values is T (Text)
RemarkText
Contents of the RemarkText. Default is client’s computer IP address. Example: Source IP: 192.168.112.64
SeqnNo
Sequential number of this remark in the Remark node
Requests
This is the wrapper node for all Request nodes
Request
This is the wrapper node for this Request
Indicator
This indicates if the Request is SSR (S) or OSI (O)
RequestCode
The code for this SSR/OSI. Example: WCOB (Wheel Chair on Board)
CarrierCode
Airline code that uses this RequestCode. Default is YY (All Airlines)
ActionCode
Action code (or Status Code) for this Request. Example: HK (Confirmed)
XML Service APIs Page 160
ActionNumber
Sequential number of action code applied on this Request
RequestText
Text message that goes with the Request
Action
Action to be taken on this Request. Default is Insert
SeqnNo
Sequential number of action to be taken on this Request
ClientBookingDetails
The wrapper node that contains all of the client’s bookings, past and future
ClientBookingDetail
The wrapper node that contains the information of a specific booking
BookNo
Locator
FlightNumber
FlightDate
DeprAirport
Arrvairport
DeprTime
ArrivalTime
SellingClass
FareAmount
CurrencyCode
ClientTravelDetail
ClientVoucherDetail
This is the wrapper node for this ClientVoucherDetail
VoucherNumber
Voucher Number
VoucherReason
Voucher reason code as defined in Results Voucher Reason Code Table
VoucherExpiry
Voucher expiration date
VoucherStatus
Voucher Status. Values can be OPEN, USED, EXPD, and CXLD
RecipientName
Voucher recipient’s name
CancelDate
Date the voucher is canceled
VoucherAmount
Voucher Amount
CurrencyCode
Voucher currency code
Notes
This field contains notes that apply to this voucher. Example: Remainder of :9990284L, meaning this voucher is the
residual of a previous voucher. 9990284L is the previous voucher number
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetProfileReply xmlns:RRT="http://rrtechnologies.net/soap/">
<ClientProfile AltClientPrflNo="WANG" ClientPrflNo="WNGM00000085">
<ClientName>WANG</ClientName>
<PassCode>ADULT</PassCode>
<ProfileType>I</ProfileType>
<CompanyPrflNo/>
<CompanyName/>
<ClientTitle/>
<ClientInitial/>
<FirstName>MEIHUA</FirstName>
<BranchCode>RT FLL 0001</BranchCode>
<BusinessTitle>DBA</BusinessTitle>
<SecretaryName/>
<TravTotalMiles>-9999</TravTotalMiles>
<TravExpenses>-9999.00</TravExpenses>
<StartDate>05/25/2007</StartDate>
<BirthDate>12/30/1899</BirthDate>
<AnniversaryDate>12/30/1899</AnniversaryDate>
<FileExpryDate>05/25/2007</FileExpryDate>
<ScrutinyFlag>N</ScrutinyFlag>
<PasswordHash>AE2B1FCA515949E5D54FB22B8ED95575</PasswordHash>
<ClientContactDetails>
<ClientContactDetail>
<ContactType>B</ContactType>
<Address/>
<City/>
<State/>
<Zip/>
<Nation/>
<PhoneNo/>
<MobileNo/>
<FaxNo/>
<EmailAddress/>
</ClientContactDetail>
<ClientContactDetail>
<ContactType>C</ContactType>
<Address/>
<City/>
<State/>
<Zip/>
<Nation/>
<PhoneNo/>
<MobileNo/>
<FaxNo/>
<EmailAddress/>
</ClientContactDetail>
<ClientContactDetail>
<ContactType>H</ContactType>
<Address/>
<City/>
<State/>
</soap:Envelope>
Modify Proflie
Parameters:
Action
The action to take on a node. Values can be Insert, Update, and Delete
Return value:
ClientPrflNo
Client’s profile number
Sample response:
Parameters:
ClientPrflNo
Return values:
LoginResult
This is the wrapper node for the response
AccessGranted
Values can be “true” (for granted) or “false” (for login failure)
ClientPrflNo
Sample response:
Client Profile Service is enhanced to handle employee profile update. The following is a list of tasks this service can
handle:
1. Retrieve employee information by making GetProfile call. You will see in the response a different PassCode than
that of a normal client profile. Also in addition to all other client profile nodes a ClientEmployeeDetails node is in the
response. These indicate this client is also an employee.
XML input:
Response:
<soap:Header/>
<soap:Body>
<RRT:GetProfileReply xmlns:RRT="http://rrtechnologies.net/soap/">
<ClientProfile AltClientPrflNo="" ClientPrflNo="NKSA1107">
</soap:Envelope>
XML input:
Response:
<soap:Header/>
<soap:Body>
<RRT:ModifyEmployeeProfileReply xmlns:RRT="http://rrtechnologies.net/soap/">
<UpdateProfile>
<ClientPrflNo>RTSA1234</ClientPrflNo>
<AltClientPrflNo/>
</UpdateProfile>
<timing>
<start>2007-10-22 16:03:05</start>
<end>2007-10-22 16:03:05</end>
<duration>1278.33 </duration>
<overall>1358.20 </overall>
</timing>
</RRT:ModifyEmployeeProfileReply>
</soap:Body>
</soap:Envelope>
This is to insert two family members (Spouse and Child) for employee RTSA1127. Other actions are Update (which is
to update existing family member information) and Delete (which is to delete an existing family member).
<soap:Header/>
<soap:Body>
<RRT:ModifyEmployeeProfileReply xmlns:RRT="http://rrtechnologies.net/soap/">
<UpdateProfile>
<ClientPrflNo>RTSA1127</ClientPrflNo>
<AltClientPrflNo/>
</UpdateProfile>
<timing>
<start>2007-11-27 14:44:07</start>
<end>2007-11-27 14:44:08</end>
<duration>1278.33 ms</duration>
<overall>1288.67 ms</overall>
</timing>
</RRT:ModifyEmployeeProfileReply>
</soap:Body>
</soap:Envelope>
If you retrieve the employee profile from Results GUI, you will see the new family members.
Input XML:
This request is to update the department name for the employee from whatever value to Administration.
Response:
<soap:Header/>
<soap:Body>
<RRT:UpdateEmployeeEntryReply xmlns:RRT="http://rrtechnologies.net/soap/">
<timing>
<start>2007-10-23 11:27:20</start>
<end>2007-10-23 11:27:21</end>
<duration>178.85 ms</duration>
<overall>280.97 ms</overall>
</timing>
</RRT:UpdateEmployeeEntryReply>
</soap:Body>
</soap:Envelope>
Signature:
[Visual Basic]
GetSchedule(StartCity As String, EndCity As String, FlightNumber As String, StartDate As String,
EndDate As String) As XmlElement
Parameters:
StartCity
Three character city code for the origin city
EndCity
Three character city code for the destination city
FlightNumber
Flight number filter (airline code and number). This is optional
StartDate
First travel date in US date format (mm/dd/yyyy). This is optional
EndDate
Last travel date in US date format (mm/dd/yyyy). This is optional
Return values:
Schedule
This is a wrapper node for the response
Flight FlightNum
This a wrapper node for each flight schedule returned
Departure
Arrival
StartDate
This is the start date of the flight operational period. It may or may not correspond to the input StartDate in the input
file
EndDate
This is the end date of the flight operational period. It may or may not correspond to the input EndDate in the input
file
FlightNumber
This is the other flight number that has a code share rule with the current flight
Indicator
This indicates the status of the FlightNumber. Its value is either O or M. O means the airline operates the flight; M
means the airline markets the flight
Remarks:
Sample response:
The response matches exactly what is shown in Results Schedule Display GUI:
Signature:
[Visual Basic]
AssignLocator(Locator As String, ExternalLocator As String, ExternalAddress As String)
Parameters:
Locator
This is Results record locator
ExternalLocator
This is the external locator to be assigned to the booking
ExternalAddress
Origin address of the external source that will be updating the booking
Sample code:
Sample response:
If you go to Results and retrieve the booking, you will see an external locator is created for this booking:
Signature:
[Visual Basic]
AcknowledgeChange(LinkID As String, AckInformation As String) As XmlNode
Parameters:
LinkID
The unique identifier of an acknowledgement link
AckInformation
Remarks or details on the acknowledgement, e.g. IP address of the remote system acknowledging the schedule
change
Return values:
BookNo
The booking number of the acknowledged booking
RecordLocator
The record locator of the acknowledge booking
Sample code:
[Visual Basic]
'call the schedule change acknowledgement service
Dim schedChangeAckSvc As New scheduleChangeAck.ScheduleChangeAck
schedChangeAckSvc.Url =
ConfigurationSettings.AppSettings.GetValues("schedChangeAckURL")(0)
Dim ackResponse As XmlNode =
schedChangeAckSvc.AcknowledgeChange(schedChangeLinkID, ackInformation)
'get locator
Dim recordLocator As String = ackResponse.SelectSingleNode("RecordLocator").InnerText
Sample response:
The following is a screenshot from Results Web that indicates the booking is affected by schedule change and need
the passenger to click the link to acknowledge the receipt of this notification:
Reallocation Service
This function allows Reallocating passengers in bulk from one Flight to another.
Parameters:
ForceReallocation
Flag to indicate if to force reallocation in the case of bad connection. Value can be true/false
OldFlightInfos
The wrapper for source flight information
FlightNumber
The source flight number
SchedPerdNo
Source flight operational period number that you can find in the inventry_realloc table
PerdSeqnNo
Source flight sequential period number that you can find in the inventry_realloc table
CityPairNo
City pair number involved in reallocation
NumOfConns
Number of connection in the source flight?
NoAltFlightFlg
Number of targeting flights
NewFlightInfo
The wrapper for target flight information
T1OffsetDays
Offset days for the 1st target flight
T1ActionType
T1FlightNumber
Flight number of the 1st target flight
T1CityPairNo
City pair number of the 1st target flight
<DutyCodeLevel>
The duty code of the person that performs the service call
<BranchCode>
<CompanyCode>
<UpdtUserCode>
<UpdtDestId>
<UpdtDateTime>
<ReallocationType>
<ReallocationInfo>
<PaxBookNos>
The wrapper that contains booking numbers that are involved in the reallocation
<PaxBookNo>
The wrapper for a specific booking number
<BookNo>
The specific booking number
Return values:
StatusCode
The status of this reallocation. 200 means successful. Any other value indicates a problem.
DBErrorCode
The database error code. 0 means no error. Any other value indicates a problem.
RecordCounts
Number of bookings that were processed in this reallocation
ReturnCode
timing
The wrapper that contains the reallocation time stamps
start
The time that the reallocation process starts for this reallocation
duration
The time (in ms) this reallocation process lasts
Overall
The overall time (in ms) this reallocation process lasts
<PassRetainFlg>Y</PassRetainFlg>
<NewFlightInfos>
<NewFlightInfo>
<T1OffsetDays>1</T1OffsetDays>
<T1ActionType>G</T1ActionType>
<T1FlightNumber>RT200</T1FlightNumber>
<T1CityPairNo>10</T1CityPairNo>
</NewFlightInfo>
</NewFlightInfos>
<QueuePrty>0</QueuePrty>
<DutyCodeLevel>DBA99</DutyCodeLevel>
<BranchCode>RTFLL0001</BranchCode>
<CompanyCode>RT</CompanyCode>
<UpdtUserCode>ZLI</UpdtUserCode>
<UpdtDestId>FLL0001</UpdtDestId>
<UpdtDateTime>2006/06/16/11/04/32</UpdtDateTime>
<ReallocationType>S</ReallocationType>
<ReallocationInfo></ReallocationInfo>
<PaxBookNos>
<PaxBookNo>
<BookNo>2669073</BookNo>
</PaxBookNo>
</PaxBookNos>
<OthFlt>N</OthFlt>
Sample response:
Parameters:
EndDate
Board date and end date of the flight
Return values:
HeaderRecord
Wrapper for Header Node
RecordCode
The indicator record type. H is for Header; R is for Record; and T is for Trailer
GMTDate
The GMT date for the report
GMTTime
The GMT time for the report
Origin
The company that generates this report
ReportRecord
Wrapper for Record Node (can have multiple)
FullFlightNo
This is the airline carrier code plus the flight number
OperatingFlightNo
This is the flight number of the operating flight
MarketingFlightNo
This is the flight number of the marketing flight (can have multiple)
MarketedProvider
The carrier code for the marketing flight
OperatingProvider
The carrier code for the operating flight
PNR
PNR record locator
Origin
The origination airport code
PassengerNo
The sequential number of the passenger in the locator
PassengerName
Passenger’s full name (last/first) plus title
DepartureDate
Boarding date
Class
The cabin class printed on the boarding pass
PaxCode
Passenger type, i.e. e. ADULT, CHD, etc.
NonRevenuePax
Y for non revenue passenger; otherwise blank (INF is also a non revenue. So if parameter Infant is Y then
NonRevenuePax should also have a Y)
Infant
Y for infants; otherwise blank
DistributionChnl
This is the origin of the PNR. Values can be WWW (web) or 1A (Amadeus)
TrailerRecord
Wrapper of the Trailer Node. There is one Trailer per report
Count
Total number of records in the report
Terminator
End of report indicator
Sample response:
Authentication Inquiry
Where
Note: The format of the input file should strictly follow that defined in Airline Interface Guide by the Western Union
Financial Services, Inc.
Sample response:
Payment Advice
This is the submission of payment, which updates the Payment Status to ‘Paid’ in Results.
Where
Note: The format of the input file should strictly follow that defined in Airline Interface Guide by the Western Union
Financial Services, Inc.. not one space more, nor one space less.
Sample response:
Note 1: For cash service to work, booking payment form and payment type should match those set in the system
setting parameter CASHPAY_FM_TPS. For example, if the value for that setting is HS/PE, your booking must have
the payment type as PE, and payment form as HS. Otherwise you will get error response from the service.
Note 2: If you changed the value for the setting mentioned above, you need to restart cash service for the new value
to take effect.
Payment Request
When a cash payment is accepted the customer gets a payment number generated Results. The customer then takes
this number and makes real payment in the bank. The bank sends a payment request to Results.
Parameters:
payment_number
A numeric string that is generated by the system automatically when a payment of any type is received
external_system_id
This is a value that identifies who is sending the cash payment. For example, say you are working with two
banks, 'Chase' and 'First National', You would use this field to identify from which bank the transaction comes,
this could be useful for accounting reports. The value can be 'made up' by the airline, or maybe the sender has
an existing ID that they need you to store and reference
dot_net_wrapper
This indicates if the service call is being made by the Results Web Framework, and if 'yes', it will include values
in the reply required by the Results Web. If you are not calling it using the Web, but your own application, set it
to 'no'
When the bank receives the payment it sends a notification message to Results advising that a payment has been
successfully received.
Results replies with a payment confirmation (or an error message in cases of errors) .
If you receive an error message, the payment status remains in N (not paid) status.
Cancel Payment
If the bank does not receive the PaymentNotificationReply within a given time period or receives an error from Results
on the notification, the bank must send a CancelNotification message that will leave the payment in the same status
as prior to the notification.
Results replies with a cancellation confirmation (or an error message in cases of errors).
Function description: To generate cash Payment Reference Number from Web. A time limit is generated as well.
Note: The system setting that affects the functionality of PRICING_SERVICE is paymenttype_paymentform_CONST.
For example, if you have payment type AT and payment form WWW, you need to have Results Support team to
insert the following setting into your system settings table: AT_WWW_CONST.
Parameters
PaymentType
The cash payment type defined for HSBC. In this instance it is PE
Year
The year of the flight date
Month
The month of the flight date
Day
The day of the flight date
Time
This is the flight departure time
Amount
This is the booking fare amount
BranchCode
This is your web booking branch code. It should match the setting in the web.config file in resultsservices folder
Return Value
ReferenceNUmber
This is the reference number generated by the service. The customer takes this number to the bank and makes
cash payment accordingly
TimeLimitYear
This is the year of the Time Limit
TimeLimitMonth
This is the month of the Time Limit
TimeLimitDay
This is the day of the Time limit
Sample response:
Note: XXX is the credit card service provider code. This parameter is dynamic. It changes depending on the CC
processor code.
The credit card payment authorization and settlement functionality is already wrapped in the AuthorizePayments and
SettlePayments methods of the Booking class of the ResultsBooking library.
The first section below provides the VB codes for this service, and the second section lists the corresponding XML
calls.
1. Authorize
[Visual Basic]
'Instantiate booking object
Dim book As New ResultsBooking.Booking
'Add a visa card payment that covers the booking value
Dim payment As New ResultsBooking.Payment
With payment
.PaymentType = "CC"
.PaymentForm = "VI"
.DocumentNo = "4111111111111111"
.CCExpiryDate = "0506"
.CVV = "123"
.PassengerName = "John/Doe"
.Amount = 500
.CurrencyCode = "USD"
End With
'Add credit card payment to the booking object
book.Payments.Add(payment)
'Authorize credit card payments
book.AuthorizePayments()
For the corresponding XML file, please reference 1. XML Call for Authorize.
Note: PaymentType property of ResultsBooking.Payment class must be set to "CC" for the payment to be authorized
and/or settled.
2. CreateVoucher
For details on voucher creation service please reference Voucher Generation Service.
Sample Code:
[Visual Basic]
Dim voucherSvc As New voucherService.voucherservice
Dim recipientInfo As New voucherService.NameAddress
Dim payerInfo As New voucherService.NameAddress
Dim paymentInfo As New voucherService.Payment
Dim giftcertificateInfo As XmlNode
Dim voucherInfo As XmlNode
For Each payment In book.Payments
With payment
If .PaidFlag = "Y" Then
paymentInfo.DocumentNo = .DocumentNo
For the corresponding XML file, please reference 2. XML Call for CreateVoucher.
3. GetVoucher
For details on voucher retrieval service please reference Voucher Retrieval Service.
Sample code:
For the corresponding XML file, please reference 3. XML Call for GetVoucher.
4. Settle
Sample code:
For the corresponding XML file, please reference XML Call for Settle.
This section lists the corresponding XML calls to the credit card service using online gift certificate purchase as an
example.
Before sending authorization request, you need first obtain the credit card processor code. For the sample XML input,
please reference Base Data .
Note: This is a dynamic call. If the CC processor code from Base Data Retrieval call was ABC instead of RRT, the
authorization request file below would use ABCAuthorize instead of RRTAuthorize, and the response would be
ABCAuthorizeReply instead of RRTAuthorizeReply.
Sample SOAP request for RRT authorization with card and card holder information:
Before sending settlement request, you need first obtain the credit card processor code. For the sample XML input,
please reference Base Data .
Note: This is a dynamic call. If the CC processor code from Base Data Retrieval call was ABC instead of RRT, the
settlement request file below would use ABCSettle instead of RRTSettle, and the response would be ABCSettleReply
instead of RRTSettleReply.
Note: Currently all the DCS services are without the WSDL files. However there are other methods to invoke the
services. Please reference section Invoking Results APIs Without the WDSL.
The service calls are listed in the sequence of passenger check-in. That is:
1. Locate passenger
2. Input passenger information
3. Bagage checkin
4. Assign/release seats
Background:
1. Plain
2. VB.NET
3. Java
4. Unix
Plain:
VB.NET:
web.Headers.Add("Content-Type", "text/xml")
web.Headers.Add("SOAPAction", "'http://rrtechnologies.net/soap/BOOKING_SERVICE'")
xmlResponse.LoadXml(System.Text.Encoding.ASCII.GetString(res))
post.setRequestEntity(entity);
HttpClient httpclient = new HttpClient();
try {
int result = httpclient.executeMethod(post);
log.debug("Response status code: " + result);
responseXml = post.getResponseBodyAsString();
}
finally
{
post.releaseConnection();
}
Unix:
Additionally, the service name to be used to execute the calls for the DCS services is called DcsWorker.
DcsPeripherals is to be used to execute calls for all printing services e.g. printing boarding pass; printing bag tag; printing
DCS reports.
This service fetches the passenger based on look-up by passenger name; locator; flight, boarding date and bar code
and populates the Check-in passenger list. The mandatory fields are DcsCarrierRcd and DepartureDate.
Parameters:
DcsCarrierRcd
The operating airline code. Required
FlightNumber
Required if flight number serves as one of the filters
DepartureDate
Departure date. Required
DcsAirportId
This information is in the dcs_airport table. This is required
Locator
Not required unless it is used as one of the filters
FirstName
Not required unless it is used as one of the filters
LastName
Not required unless it is used as one of the filters
BarCode
Not required unless it is used as one of the filters
Return values:
ReplyFormat
Wrapper node that determines the format of all the parameters in the response message
PassengerList
Wrapper node that contain all the passengers in the list
Child
Wrapper node that contains individual passenger information
FlightNumber
Flight number
DepartureDateTime
Flight departure date and time
DcsBookingId
DCS booking ID
BookingNumber
Booking number in Results
ExternalLocator
This is not required.
OriginName
This indicates the booking origin. Values can be Native (Results booking), web (airline website), and GDS
DcsPassengerTitleRcd
Title of the passenger shown in DCS, like Mr., or Mrs.
DcsPassengerCodeRcd
Passenger code shown in DCS. For example, ADULT
DcsPassengerTypeRcd
Genger of the passenger. For example, MALE
LastName
Passenger’s last name
FirstName
Passenger’s first name
DcsClassRcd
This is the selling class of the booking
DcsCompartmentRcd
This is the cabin class of the aircraft according to the booking selling class
SeatNumber
Seat number assigned
DcsPassengerId
Unique ID assigned to each passenger
DcsCheckinStatusRcd
Passenger’s checkin status
Description
Text description of the checkin status
DcsCheckinId
Unique ID assigned to each itinerary marked as part of ‘This Checkin’
DcsPriorityRcd
DCS Priority record
FromCarrierFlightNumber
This is the previous flight number
ToCarrierFlightNumber
This is the current flight number
SortOrder
Sort Order
OriginAirportCode
Origin airport of the this passenger
DestinationAirportCode
Destination airport of this passenger, but may not be that of this flight in the case of a through flight
FinalDestination
This is the final destination airport of a through flight, going from point A to C, via B
CreatedDateTime
Timestamp
ThruFlag
Flag to indicate if this leg/segment of booking is a through flight. 0 means No; 1 means Yes. Usually the first leg of a
through booking has a 0; the second/third/forth leg has a 1
InvalidatedDcsGatewayActionId
Invalidated DCS check-in ID
Sample request:
Sample response:
<soap:Header/>
</soap:Envelope>
This service returns the check-in status for a specific passenger using the DCS_Checkin_Id, which is a unique
identifier for the passenger’s check-in.
Parameters:
DcsCheckinId
18-digit string from the GetPassengerList call
ReplyFormat
The wrapper node that contains all the return values
CheckinStatus
The wrapper node that contains the passenger’s checkin status information
PassengerName
Format is LAST/FIRST
LastName
Passenger’s last name
FirstName
Passenger’s first name
MiddleName
Passenger’s middle name
DcsPassengerTitleRcd
Title of the passenger shown in DCS, like Mr or Mrs
DcsPassengerCodeRcd
Passenger code shown in DCS. For example, ADULT
DcsPassengerTypeRcd
Genger of the passenger. For example, MALE
DcsCheckinStatusRcd
Valid values are Init (initialization); Partially Checked-in; Confirmed Revenue (i.e. boarding pass is printed)
Return values:
Init
Initialization
Confirmed Revenue
That is, boarding pass printed
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetCheckinStatusForPassengerReply xmlns:RRT=”http://rrtechnologies.net/soap/”
ADMIN_DATA_DUMP=”true”>
<ReplyFormat>
<PassengerName>varchar(240)</PassengerName>
<LastName>varchar(50)</LastName>
<FirstName>varchar(50)</FirstName>
<MiddleName>varchar(50)</MiddleName>
<DcsPassengerTitleRcd>varchar(20)</DcsPassengerTitleRcd>
<DcsPassengerCodeRcd>varchar(20)</DcsPassengerCodeRcd>
<DcsPassengerTypeRcd>varchar(20)</DcsPassengerTypeRcd>
<DcsCheckinStatusRcd>varchar(20)</DcsCheckinStatusRcd>
</ReplyFormat>
<CheckinStatus>
<Child>
<PassengerName>SMITH/ANGELA</PassengerName>
<LastName>SMITH</LastName>
<FirstName>ANGELA</FirstName>
<MiddleName/>
<DcsPassengerTitleRcd/>
<DcsPassengerCodeRcd>ADULT</DcsPassengerCodeRcd>
<DcsPassengerTypeRcd>Male</DcsPassengerTypeRcd>
<DcsCheckinStatusRcd>Init</DcsCheckinStatusRcd>
</Child>
</CheckinStatus>
</RRT:GetCheckinStatusForPassengerReply>
</soap:Body>
GetPassengerInfo
This service takes the passenger id and returns the passenger’s name; type and code. For example,
SMITH/ANGELINA; Female; Adult.
Parameters:
DcsPassengerId
Otained from GetPassengerList call
Return values:
PassengerStatus
The wrapper node that contains information on all the passengers in a passenger list
Child
The wrapper node that contains information on each individual passenger
PassengerName
Format is LAST/FIRST
LastName
Passenger’s last name
FirstName
Passenger’s first name
MiddleName
Passenger’s middle name
DcsPassengerTitleRcd
Passenger’s title
DcsPassengerCodeRcd
Passenger code e.g. Adult, Infant, etc
DcsPassengerTypeRcd
Passenger type e.g. Male, Female, etc
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetPassengerInfoReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<PassengerName>varchar(240)</PassengerName>
<LastName>varchar(50)</LastName>
<FirstName>varchar(50)</FirstName>
<MiddleName>varchar(50)</MiddleName>
<DcsPassengerTitleRcd>varchar(20)</DcsPassengerTitleRcd>
<DcsPassengerCodeRcd>varchar(20)</DcsPassengerCodeRcd>
<DcsPassengerTypeRcd>varchar(20)</DcsPassengerTypeRcd>
</ReplyFormat>
<PassengerStatus>
<Child>
<PassengerName>SMITH/ANGELA</PassengerName>
<LastName>SMITH</LastName>
<FirstName>ANGELA</FirstName>
<MiddleName/>
<DcsPassengerTitleRcd/>
<DcsPassengerCodeRcd>ADULT</DcsPassengerCodeRcd>
<DcsPassengerTypeRcd>Male</DcsPassengerTypeRcd>
</Child>
</PassengerStatus>
</RRT:GetPassengerInfoReply>
</soap:Body>
</soap:Envelope>
This service retrieves the passenger’s service requests (SSR) for the Check-in.
Parameters:
DcsPassengerId
Obtained from GetPassengerList call
DcsCheckinId
Obtained from GetPassengerList call
Return values:
Requests
Wrapper node that contains all the service requests of the passenger
DcsPassengerRequestId
Passenger Request ID
DcsServiceRequestRid
The service type (example:seat) ID in DCS. This ID remains the same for different passenger if the service type
does not change
RequestedCount
Number of request of the same type for a passenger
ServiceRequestDescription
Text description of the service request. For exampole: Seat Requested
RequiresActionDescription
Text to describe if action is needed for this type of service request
ActionTakenFlag
Flag to indicate if action has been taken for this request. 0 means not taken; 1 means the opposite
AddedFromDcsFlag
Flag to indicate if this request is iniated from DCS. 0 means not from DCS; 1 means the opposite
PaidFlag
Flag to indicate if this request has been paid by the passenger. 0 means not paid; 1 means the opposite
PassengerRequestComment
Text that comes with the request. For example, if the request is seat, the text here should be the seat number (2A)
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetRequestsByCheckinReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsPassengerRequestId>bigint</DcsPassengerRequestId>
<DcsServiceRequestRid>varchar(40)</DcsServiceRequestRid>
<RequestedCount>integer</RequestedCount>
<ServiceRequestDescription>varchar(240)</ServiceRequestDescription>
<RequiresActionDescription>varchar(240)</RequiresActionDescription>
<ActionTakenFlag>integer</ActionTakenFlag>
<AddedFromDcsFlag>integer</AddedFromDcsFlag>
<PaidFlag>integer</PaidFlag>
<PassengerRequestComment>varchar(240)</PassengerRequestComment>
</ReplyFormat>
<Requests>
<Child>
<DcsPassengerRequestId>23453092823704749</DcsPassengerRequestId>
<DcsServiceRequestRid>436158869850915945</DcsServiceRequestRid>
<RequestedCount>1</RequestedCount>
<ServiceRequestDescription>Seat Requested</ServiceRequestDescription>
<RequiresActionDescription>No action required</RequiresActionDescription>
<ActionTakenFlag>0</ActionTakenFlag>
<AddedFromDcsFlag>1</AddedFromDcsFlag>
<PaidFlag>0</PaidFlag>
<PassengerRequestComment>2A</PassengerRequestComment>
</Child>
<Child>
<DcsPassengerRequestId>337987476265456736</DcsPassengerRequestId>
<DcsServiceRequestRid>436158869850915945</DcsServiceRequestRid>
<RequestedCount>1</RequestedCount>
<ServiceRequestDescription>Seat Requested</ServiceRequestDescription>
<RequiresActionDescription>No action required</RequiresActionDescription>
<ActionTakenFlag>0</ActionTakenFlag>
<AddedFromDcsFlag>1</AddedFromDcsFlag>
This service populates the Actions tab in the Check-in form for the actions that need to be addressed before a
passenger check-in can be completed and before the boarding pass can be printed.
Parameters:
DcsCheckinId
Obtained from GetPassengerList call
Actions
The wrapper node that contains all the actions needed in DCS
DcsPassengerRequestId
Passenger request ID
DcsSelecteeId
Selectee ID
DcsPassengerInfoRequestId
Passenger Info Request ID
DcsNoFlyId
No-Fly ID
DcsCheckinActionId
Check-in Action ID
DcsGatewayDiscrepancyId
Gateway ID
Description
The actual action required. Example: APIS
RequiresActionDescription
Text to describe the action
ActionTakenDescription
Text to describe the action taken
ActionTakenFlag
Flag to indicate of the action has been completed. 0 means not completed; 1 means completed
ActionComment
Not required
DcsActionSecurityRcd
This is the action value (Apis; Nofly; Selectee; Unpaid Balance )
Return values:
Nofly
TSA Government No-Fly watch list
Selectee
TSA Government Selectee watch list
Unpaid
Un-paid booking
APIS
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetActionsReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsPassengerRequestId>bigint</DcsPassengerRequestId>
<DcsSelecteeId>bigint</DcsSelecteeId>
<DcsPassengerInfoRequestId>bigint</DcsPassengerInfoRequestId>
<DcsNoFlyId>bigint</DcsNoFlyId>
<DcsCheckinActionId>bigint</DcsCheckinActionId>
<DcsGatewayDiscrepancyId>bigint</DcsGatewayDiscrepancyId>
<Description>varchar(240)</Description>
<RequiresActionDescription>varchar(240)</RequiresActionDescription>
<ActionTakenDescription>varchar(240)</ActionTakenDescription>
<ActionTakenFlag>integer</ActionTakenFlag>
<ActionComment>varchar(240)</ActionComment>
<DcsActionSecurityRcd>varchar(240)</DcsActionSecurityRcd>
</ReplyFormat>
<Actions>
<Child>
<DcsPassengerRequestId>0</DcsPassengerRequestId>
Selectee
Sample request:
Sample reponse:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetActionsReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsPassengerRequestId>bigint</DcsPassengerRequestId>
<DcsSelecteeId>bigint</DcsSelecteeId>
<DcsPassengerInfoRequestId>bigint</DcsPassengerInfoRequestId>
<DcsNoFlyId>bigint</DcsNoFlyId>
<DcsCheckinActionId>bigint</DcsCheckinActionId>
<DcsGatewayDiscrepancyId>bigint</DcsGatewayDiscrepancyId>
<Description>varchar(240)</Description>
<RequiresActionDescription>varchar(240)</RequiresActionDescription>
<ActionTakenDescription>varchar(240)</ActionTakenDescription>
<ActionTakenFlag>integer</ActionTakenFlag>
UpdateRequestAction
Sample request:
Sample reponse:
<soap:Header/>
<soap:Body>
<RRT:UpdateRequestActionReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsPassengerRequestId>bigint</DcsPassengerRequestId>
</ReplyFormat>
</RRT:UpdateRequestActionReply>
</soap:Body>
</soap:Envelope>
Note: The reply does not have an OK indicator, so the error conditions will be general SOAP errors and not the typical
error codes. To validate that the action update took place; re-retrieve the passenger’s action codes and make sure the
action was marked as checked i.e. ActionTakenFlag value is 1.
UpdateSelecteeAction
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:UpdateSelecteeActionReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsSelecteeId>bigint</DcsSelecteeId>
</ReplyFormat>
<Child>
<DcsSelecteeId>916369454150169665</DcsSelecteeId>
</Child>
</RRT:UpdateSelecteeActionReply>
</soap:Body>
</soap:Envelope>
GetPassportInfoFromServiceRequest
This service fetches any passport passenger information for a specific passenger from the service request i.e.
PSPT SSR.
Parameters:
DcsPassengerId
Otained from GetPassengerList call
DocumentType
Travel document type e.g. passport
DocumentNumber
Travel document number
CountryCode
Country code where document was issued
BirthDate
Passenger’s date of birth
Gender
Passenger’s gender e.g. male; female
Return values:
Code Description
Sample request:
Sample response:
SaveTravelDocument
This service saves the passenger passport information for local government requirement.
Parameters:
DcsPassengerId
Obtained from getPassengerList call
DcsCountryOfResidence
Passenger’s country of residence according to the document collected
DcsGenderType
Gender of the passenger
BirthDate
Passenger’s date of birth
TelephoneNumber
Telephone number
Address
Address
AddressCity
City
AddressProvince
State
AddressPostCode
Zip Code
EmergencyContactName
Emergency contact name
EmergencyPhoneNumber
Emergency phone number
DcsPassengerDocumentType
Type of document collected
DocumentNumber
Travel document number
IssuingCountryCode
Country code that issues the document
ExpirationDate
Document expiration date
DcsUserId
Obtained from dcs_user table
DcsPassengerDocumentId
Document ID
Return values:
Code Description
Sample request:
Sample response:
</SOAP-ENV:Envelope>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:SaveTravelDocumentReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsPassengerInfoId>bigint</DcsPassengerInfoId>
</ReplyFormat>
<Child>
<DcsPassengerDocumentId>801446767694255222</DcsPassengerDocumentId>
UpdatePassengerInfoAction
Paremeters:
DcsPassengerInfoRequestId
Passenger Info Request ID
ActionTakenFlag
Action taken flag; 1 for true i.e. action cleared
DcsUserId
Obtained from dcs_user table
Sample response:
<soap:Header/>
<soap:Body>
<RRT:UpdatePassengerInfoActionReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsPassengerInfoRequestId>bigint</DcsPassengerInfoRequestId>
</ReplyFormat>
</RRT:UpdatePassengerInfoActionReply>
</soap:Body>
</soap:Envelope>
GetBaggage
This service retrieves the baggage detail for the passenger Check-in. Values include baggage description, weight
and charge
Parameters:
DcsCheckinId
Obtained from getPassengerList call
Return values:
DcsBaggageId
Baggage ID
TagNumber
Baggage tag number
XML Service APIs Page 237
DcsBaggageColorRcd
Baggage color code
DcsBaggageCodeRcd
Baggage code
RuleTypeDescription
Baggage rule description
Weight
Baggage weight
WeightDescription
Text description of the baggage weight UOM. Example: Pounds
DcsWeightTypeRcd
Code of the baggage weight UOM. Example: Lb
DamagedFlag
Flag to indicate if the bag is damaged. 0 means not damanaged; 1 means the opposite
Amount
Amount charged for this baggage if it applies
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetBaggageReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsBaggageId>bigint</DcsBaggageId>
<TagNumber>varchar(20)</TagNumber>
<DcsBaggageColorRcd>varchar(20)</DcsBaggageColorRcd>
<DcsBaggageCodeRcd>varchar(20)</DcsBaggageCodeRcd>
<RuleTypeDescription>varchar(240)</RuleTypeDescription>
<Description>varchar(240)</Description>
This service checks whether a passenger is allowed to have checked baggage and is controlled by system setting
DCS_NOBAG_PAX_TYPE
Parameters:
DcsPassengerId
Obtained from getPassengerList call
Return values:
AllowedFlag
0 - means no baggage allowed;
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:CanPassengerHaveBaggageReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<AllowedFlag>integer</AllowedFlag>
</ReplyFormat>
<Child>
<AllowedFlag>0</AllowedFlag>
</Child>
</RRT:CanPassengerHaveBaggageReply>
</soap:Body>
</soap:Envelope>
SaveBaggage
Parameters:
DcsBaggageId
Empty if the bag is not checked in yet
DcsCheckinId
Obtained from the getpassengerList call
Return values:
DcsBaggageId
A digit string generated by system when the bag is checked in
Indocator
To indicate if the baggage is acceptable for transportation
DcsBaggageCodeRcd
Baggage code e.g. Normal; Excess; Overweight
DamagedFlag
Damage flag indicator
Weight
Baggage weight
DcsWeightTypeRcd
Baggage weight type e.g. pounds;kilos; etc
CreatedUserId
Agent who checked in the bag
Sample request:
Sample response:
XML Service APIs Page 242
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:SaveBaggageReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsBaggageId>bigint</DcsBaggageId>
<Indicator>varchar(20)</Indicator>
</ReplyFormat>
<Child>
<DcsBaggageId>306067550197994641</DcsBaggageId>
<Indicator>Ok</Indicator>
</Child>
</RRT:SaveBaggageReply>
</soap:Body>
</soap:Envelope>
RemoveBaggage
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
GetFlightDateAllSeats
This service retrieves the seat definition for all flights including any blocked seats and pre-assigned seats as well
as seat attributes e.g. exit row. The service can also be used to get seat assignments for all legs of a multi-leg
flight using DcsFlightId.
Parameters:
DcsFlightId
Obtained from getpassegerList call. Not required here
DcsFlightSegmentId
Obtained from GetBookingLegs call. Required here
SellingClassCode
Required here
Return values:
SeatMapId
This is the same for all the selling classes that belong to the same cabin
SeatDefinitionId
A unique number that is
RowNumber
Seat row number
SeatCode
Code assigned to this row of seats. Examples: A, C, etc.
PositionX/PositionY
This is the horizontal and vertical location in pixels of the seat in the seat map image
AvailableFlag
Boolean flag (Y/N), indicating whether the seat is available for sale
BlockedFlag
Boolean flag (Y/N) indicating whether the seat is blocked
ForSaleFlag
Boolean flag (Y/N) indicating whether the seat is within the selling period (i.e. after the start selling time and before
the stop selling time). In DCS, this flag for all seats is going to be marked by N since the checkin time is normally
beyond the stop selling time. You can reserve a seat as long as its AvailableFlag is Y.
Locator
This indicates to which locator this seat is assgined to. If empty, the seat is available for assignment
BookNo
Booking reference number
FlightSeatReservationId
Reserved Seat ID
ReservationDescription
PNR Remark
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
This services describes the seat attributes e.g. aisle; window or passenger seat assignments.
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetFlightDateSeatAttributesReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<SeatMapId>integer</SeatMapId>
<SeatDefinitionId>bigint</SeatDefinitionId>
<RowNumber>smallint</RowNumber>
<SeatCode>varchar(2)</SeatCode>
<SeatNumber>varchar(5)</SeatNumber>
<PositionX>integer</PositionX>
<PositionY>integer</PositionY>
This service checks for any seat attribute rules that have been defined for example, wheelchair passenger cannot
be seated in an exit row. If the passenger has a wheelchair SSR e.g. WCHR then this service will prevent any
seat assignment to an exit row.
Parameter:
DcsPassengerId
Required. This is obtained from the getPassengerList call
SeatDefinitionId
Required. This is obtained from the GetFlightDateSeatAttributes call
DcdFlightId
Not required here. This is obtained from the getPassengerList call
Return values:
ServiceRequestCode
Example: WCHR
DcsPassengerCodeRcd
Example: ADULT
SeatAttributeRcd
Example: EXIT
AllowFlag
This checks passenger SSR against ServiceRequestCode. If the passenger’s SSR code matches that of
ServiceRequestCode, then the passenger cannot have this seat assigned. Values for this field can be 0 or 1. 0
means not allowed; 1 means the opposite
Sample request:
Sample response:
This service reserves a seat assignment and returns a seat confirmation id.
Parameters:
SeatDefinitionId
Otained from GetFlightDateSeatAttributes call
FlightDateLegId
Obatined from GetFlightDateClassSeatMaps call
BookingNumber
DcsUserId
Return values:
FlightSeatReservationId
This is the seat confirmation ID
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:ReserveSingleSeatNewReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
Return values:
Indicator
Indicate if the call goes through or not. Values can be OK or NOTOK
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:ConfirmReleaseReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<Indicator>varchar(5)</Indicator>
</ReplyFormat>
<Child>
<Indicator>OK</Indicator>
</Child>
</RRT:ConfirmReleaseReply>
</soap:Body>
</soap:Envelope>
This service confirms the actual seat assignment. The first call is to reserve the seat temporarily, but this call
actually confirms it.
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:ConfirmAdditionReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<Indicator>varchar(5)</Indicator>
</ReplyFormat>
<Child>
<Indicator>OK</Indicator>
</Child>
</RRT:ConfirmAdditionReply>
</soap:Body>
</soap:Envelope>
Return values:
OK
Ok
previous
That is, call previously executed
missing seat
No seat assignment
unpaid charges
Booking has an outstanding balance
No adult printed
This is for an infant passenger. That is, the adult’s boarding pass must be printed before the infant’s
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:ValidatePassengerPassPrintingReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<Indicator>varchar(20)</Indicator>
</ReplyFormat>
<Child>
<Indicator>OK</Indicator>
</Child>
</RRT:ValidatePassengerPassPrintingReply>
</soap:Body>
</soap:Envelope>
The return value for this service is OK; unless a system error is indicated in the SOAP fault nodes.
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:MarkCheckinReadyForBoardingReply xmlns:RRT="http://rrtechnologies.net/soap/">
<ReplyFormat>
<Indicator>varchar(20)</Indicator>
</ReplyFormat>
<Child>
<Indicator>OK</Indicator>
</Child>
</RRT:MarkCheckinReadyForBoardingReply>
</soap:Body>
</soap:Envelope>
This service call retrieves the boarding information for the passenger; such as the system generated check-in
sequence identifier, which is stored in the BoardingCardNumber node.
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetPassengersForBoardingReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<FlightNumber>varchar(20)</FlightNumber>
<DepartureDateTime>date</DepartureDateTime>
<DcsCheckinId>bigint</DcsCheckinId>
<DcsPassengerId>bigint</DcsPassengerId>
<DcsBookingId>bigint</DcsBookingId>
<DcsBoardingId>bigint</DcsBoardingId>
<BookingNumber>integer</BookingNumber>
<Locator>varchar(20)</Locator>
<SeatNumber>varchar(20)</SeatNumber>
<BoardingCardNumber>varchar(20)</BoardingCardNumber>
<PassengerName>varchar(240)</PassengerName>
<LastName>varchar(50)</LastName>
<FirstName>varchar(50)</FirstName>
<MiddleName>varchar(50)</MiddleName>
<DcsPassengerTitleRcd>varchar(20)</DcsPassengerTitleRcd>
<DcsBoardingStatusRcd>varchar(20)</DcsBoardingStatusRcd>
<DcsFlightId>bigint</DcsFlightId>
<OriginAirportCode>varchar(20)</OriginAirportCode>
<DestinationAirportCode>varchar(20)</DestinationAirportCode>
<FinalDestination>varchar(20)</FinalDestination>
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetAirportIdFromAirportCodeReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsAirportId>bigint</DcsAirportId>
</ReplyFormat>
<Child>
<DcsAirportId>675623999401555002</DcsAirportId>
</Child>
</RRT:GetAirportIdFromAirportCodeReply>
</soap:Body>
</soap:Envelope>
This service retrieves the system flight id for a particular flight. All parameters are mandatory.
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetFlightsReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsFlightId>bigint</DcsFlightId>
<DcsFlightStatusId>bigint</DcsFlightStatusId>
<FlightStatusDescription>varchar(240)</FlightStatusDescription>
<FlightStatusRcd>varchar(20)</FlightStatusRcd>
<FlightNumberString>varchar(10)</FlightNumberString>
<DepartureDateTime>date</DepartureDateTime>
<OriginAirportCode>varchar(5)</OriginAirportCode>
<DestinationAirportCode>varchar(5)</DestinationAirportCode>
<AircraftType>varchar(20)</AircraftType>
<Capacity>integer</Capacity>
<PassengerCount>integer</PassengerCount>
<CheckinCount>integer</CheckinCount>
<DepartureGateNumber>varchar(20)</DepartureGateNumber>
<UserName>varchar(240)</UserName>
<Remarks>varchar(240)</Remarks>
<DcsCarrierRcd>varchar(20)</DcsCarrierRcd>
<FlightNumber>varchar(5)</FlightNumber>
<DelayedFlag>integer</DelayedFlag>
<InternationalFlag>integer</InternationalFlag>
<DcsOriginAirportId>bigint</DcsOriginAirportId>
<DcsDestinationAirportId>bigint</DcsDestinationAirportId>
</ReplyFormat>
<Flights>
GetFlightDetails
This service is used to return the flight details for a CheckinId. It can also be used to get seat assignments for all
legs of a multi-leg flight using DcsFlightSegmentId or for a single leg using DcsFlightId.
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetFlightDetailsReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsFlightId>bigint</DcsFlightId>
<DcsCarrierRcd>varchar(20)</DcsCarrierRcd>
<FlightNumber>varchar(20)</FlightNumber>
<DepartureDateTime>date</DepartureDateTime>
<OriginAirport>varchar(20)</OriginAirport>
<DestinationAirport>varchar(20)</DestinationAirport>
<LegNumber>integer</LegNumber>
<DcsClassRcd>varchar(20)</DcsClassRcd>
<DcsFlightSegmentId>bigint</DcsFlightSegmentId>
</ReplyFormat>
<FlightDetails>
<Child>
<DcsFlightId>788704968748250146</DcsFlightId>
<DcsCarrierRcd>RT</DcsCarrierRcd>
<FlightNumber>961</FlightNumber>
<DepartureDateTime>2006-11-21 07:55:00</DepartureDateTime>
<OriginAirport>LGA</OriginAirport>
<DestinationAirport>FLL</DestinationAirport>
<LegNumber>1</LegNumber>
<DcsClassRcd>C</DcsClassRcd>
<DcsFlightSegmentId>15268208960218247</DcsFlightSegmentId>
</Child>
<Child>
<DcsFlightId>1017867870058406938</DcsFlightId>
<DcsCarrierRcd>RT</DcsCarrierRcd>
<FlightNumber>961</FlightNumber>
<DepartureDateTime>2006-11-21 12:15:00</DepartureDateTime>
<OriginAirport>FLL</OriginAirport>
<DestinationAirport>SJU</DestinationAirport>
<LegNumber>2</LegNumber>
FindFlightFromId
This service retrieves all the flight details for a particular flight. Records with the InvalidatedUserId node
populated are for historical purposes only to and do not contain any current flight information.
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:FindFlightFromIdReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsFlightId>bigint</DcsFlightId>
<FlightNumber>char(5)</FlightNumber>
<OriginAirportCode>char(5)</OriginAirportCode>
<ScheduledDepartureTime>date</ScheduledDepartureTime>
<EstimatedDepartureTime>date</EstimatedDepartureTime>
<DestinationDelay>date</DestinationDelay>
<DestinationAirportCode>char(5)</DestinationAirportCode>
<ScheduledArrivalTime>date</ScheduledArrivalTime>
<EstimatedArrivalTime>date</EstimatedArrivalTime>
<ArrivalDelay>date</ArrivalDelay>
<DelayReasonCode>varchar(20)</DelayReasonCode>
<DelayReasonDescription>varchar(240)</DelayReasonDescription>
<Supplements>varchar(240)</Supplements>
<Remarks>varchar(240)</Remarks>
<CreatedUserName>varchar(240)</CreatedUserName>
<CreatedDateTime>date</CreatedDateTime>
<InvalidatedUserId>bigint</InvalidatedUserId>
<OutOfGateTime>date</OutOfGateTime>
<OffGroundTime>date</OffGroundTime>
<OnGroundTime>date</OnGroundTime>
<InGateTime>date</InGateTime>
<DepartureFuelOnBoard>integer</DepartureFuelOnBoard>
<ArrivalFuelOnBoard>integer</ArrivalFuelOnBoard>
<WhoLanded>varchar(20)</WhoLanded>
<TailNumber>varchar(20)</TailNumber>
<AircraftType>varchar(20)</AircraftType>
<DepartureGateNumber>varchar(20)</DepartureGateNumber>
<ArrivalGateNumber>varchar(20)</ArrivalGateNumber>
</ReplyFormat>
<FindFlightFromId>
<Child>
<DcsFlightId>3380023105696907</DcsFlightId>
<FlightNumber>1120</FlightNumber>
<OriginAirportCode>FLL</OriginAirportCode>
<ScheduledDepartureTime>06:30</ScheduledDepartureTime>
<EstimatedDepartureTime>06:30</EstimatedDepartureTime>
<DestinationDelay/>
XML Service APIs Page 267
<DestinationAirportCode>CUN</DestinationAirportCode>
<ScheduledArrivalTime>09:30</ScheduledArrivalTime>
<EstimatedArrivalTime>09:30</EstimatedArrivalTime>
<ArrivalDelay/>
<DelayReasonCode>On Time</DelayReasonCode>
<DelayReasonDescription/>
<Supplements/>
<Remarks/>
<CreatedUserName>SUSAN LEVY</CreatedUserName>
<CreatedDateTime>2006-11-03 02:27:24</CreatedDateTime>
<InvalidatedUserId/>
<OutOfGateTime>06:43</OutOfGateTime>
<OffGroundTime>07:00</OffGroundTime>
<OnGroundTime>09:45</OnGroundTime>
<InGateTime>10:00</InGateTime>
<DepartureFuelOnBoard/>
<ArrivalFuelOnBoard/>
<WhoLanded>Not landed</WhoLanded>
<TailNumber/>
<AircraftType>319</AircraftType>
<DepartureGateNumber>H8</DepartureGateNumber>
<ArrivalGateNumber/>
</Child>
<Child>
<DcsFlightId>3380023105696907</DcsFlightId>
<FlightNumber>1120</FlightNumber>
<OriginAirportCode>FLL</OriginAirportCode>
<ScheduledDepartureTime>06:30</ScheduledDepartureTime>
<EstimatedDepartureTime>06:30</EstimatedDepartureTime>
<DestinationDelay/>
<DestinationAirportCode>CUN</DestinationAirportCode>
<ScheduledArrivalTime>09:30</ScheduledArrivalTime>
<EstimatedArrivalTime>09:30</EstimatedArrivalTime>
<ArrivalDelay/>
<DelayReasonCode>On Time</DelayReasonCode>
<DelayReasonDescription/>
<Supplements/>
<Remarks/>
<CreatedUserName>Auto</CreatedUserName>
<CreatedDateTime>2006-10-30 15:02:20</CreatedDateTime>
<InvalidatedUserId>659664309577364680</InvalidatedUserId>
<OutOfGateTime/>
<OffGroundTime/>
<OnGroundTime/>
<InGateTime/>
<DepartureFuelOnBoard/>
<ArrivalFuelOnBoard/>
<WhoLanded>Not landed</WhoLanded>
<TailNumber/>
<AircraftType>319</AircraftType>
<DepartureGateNumber/>
<ArrivalGateNumber/>
</Child>
</FindFlightFromId>
</RRT:FindFlightFromIdReply>
</soap:Body>
</soap:Envelope>
This is needed to retrieve the value of the DcsFlightSegmentId. Only the records with ThisCheckinFlag set to 1
are a part of the checkin id.
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetBookingLegsReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsItineraryId>bigint</DcsItineraryId>
<DcsCarrierRcd>varchar(20)</DcsCarrierRcd>
<FlightNumber>varchar(20)</FlightNumber>
<OriginAirportCode>varchar(20)</OriginAirportCode>
<DestinationAirportCode>varchar(20)</DestinationAirportCode>
<DepartureDateTime>date</DepartureDateTime>
<ArrivalDateTime>date</ArrivalDateTime>
<ThisCheckinFlag>integer</ThisCheckinFlag>
<AircraftType>varchar(20)</AircraftType>
<SeatNumber>varchar(20)</SeatNumber>
<OriginAirportName>varchar(240)</OriginAirportName>
<DestinationAirportName>varchar(240)</DestinationAirportName>
<DcsOriginAirportId>bigint</DcsOriginAirportId>
<DcsDestinationAirportId>bigint</DcsDestinationAirportId>
<DcsCheckinItineraryMappingId>bigint</DcsCheckinItineraryMappingId>
<DcsFlightSegmentId>bigint</DcsFlightSegmentId>
</ReplyFormat>
<GetBookingLegs>
<Child>
<DcsItineraryId>1099963760180675742</DcsItineraryId>
<DcsCarrierRcd>RT</DcsCarrierRcd>
<FlightNumber>111</FlightNumber>
<OriginAirportCode>FLL</OriginAirportCode>
<DestinationAirportCode>LGA</DestinationAirportCode>
<DepartureDateTime>2006-11-13 06:00:00</DepartureDateTime>
<ArrivalDateTime>2006-11-13 07:50:00</ArrivalDateTime>
<ThisCheckinFlag>1</ThisCheckinFlag>
<AircraftType>319</AircraftType>
<SeatNumber>2F</SeatNumber>
<OriginAirportName>FT LAUDERDALE/HOLLYWOOD INTL</OriginAirportName>
<DestinationAirportName>LA GUARDIA INTERNATIONAL</DestinationAirportName>
<DcsOriginAirportId>1</DcsOriginAirportId>
<DcsDestinationAirportId>2</DcsDestinationAirportId>
<DcsCheckinItineraryMappingId>878421273876407397</DcsCheckinItineraryMappingId>
<DcsFlightSegmentId/>
</Child>
</GetBookingLegs>
</RRT:GetBookingLegsReply>
</soap:Body>
</soap:Envelope>
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetFlightDateClassSeatMapsReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<SeatMapId>integer</SeatMapId>
<Description>varchar(250)</Description>
<ImageUrlPath>varchar(250)</ImageUrlPath>
<ImageWidth>integer</ImageWidth>
<ImageHeight>integer</ImageHeight>
<BlockImage>varchar(250)</BlockImage>
<ReserveImage>varchar(250)</ReserveImage>
<VacantImage>varchar(250)</VacantImage>
<UnavailableImage>varchar(250)</UnavailableImage>
<SeatWidth>integer</SeatWidth>
<SeatHeight>integer</SeatHeight>
<FlightDateLegId>integer</FlightDateLegId>
</ReplyFormat>
<GetFlightDateClassSeatMaps>
<Child>
<SeatMapId>5</SeatMapId>
<Description>A319 C</Description>
<ImageUrlPath>http://www.rrtechnologies.net/internal/asr/a319.gif</ImageUrlPath>
<ImageWidth>911</ImageWidth>
<ImageHeight>402</ImageHeight>
<BlockImage>http://www.rrtechnologies.net/internal/asr/block.gif</BlockImage>
<ReserveImage>http://www.rrtechnologies.net/internal/asr/seatmarker.gif</ReserveImage>
<VacantImage>http://www.rrtechnologies.net/internal/asr/blank.gif</VacantImage>
<UnavailableImage>http://www.rrtechnologies.net/internal/asr/block.gif</UnavailableImage>
<SeatWidth>16</SeatWidth>
<SeatHeight>16</SeatHeight>
<FlightDateLegId>280544</FlightDateLegId>
</Child>
</GetFlightDateClassSeatMaps>
</RRT:GetFlightDateClassSeatMapsReply>
</soap:Body>
</soap:Envelope>
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetUserIdReply xmlns:RRT="http://rrtechnologies.net/soap/">
<ReplyFormat>
<DcsUserId>bigint</DcsUserId>
GetCurrentUserLocation
This service is used to get the location id for the selectee clearance.
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:GetCurrentUserLocationReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsLocationRcd>varchar(20)</DcsLocationRcd>
<LocationDescription>varchar(240)</LocationDescription>
</ReplyFormat>
AddPassengerRequest
This service was created to support the WEB checkin and uses SSR WEBC.
Sample request:
NB
The DcsItineraryId field MUST contain a comma at the end like this:
<DcsItineraryId>422498530183304294,</DcsItineraryId>
In cases where there are multiple itineraries associated with a single checkin id, then the XML node needs to have all
itinerary IDs for the checkin comma separated like this:
CanPassengerBoard
This service is used to identify if the passenger is applicable for boarding by verifying whether or not the
passenger is on this flight and has a BCN.
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:CanPassengerBoardReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<Indicator>varchar(20)</Indicator>
</ReplyFormat>
<Child>
<Indicator>OK</Indicator>
</Child>
</RRT:CanPassengerBoardReply>
</soap:Body>
</soap:Envelope>
This service is used to get the BCN, which will be used to board the passenger.
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetPassengerByBoardingCardNumberReply
xmlns:RRT="http://rrtechnologies.net/soap/" ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsCheckinId>bigint</DcsCheckinId>
<DcsItineraryId>bigint</DcsItineraryId>
<DcsBoardingStatusRcd>varchar(20)</DcsBoardingStatusRcd>
<DcsBoardingId>bigint</DcsBoardingId>
<SeatNumber>varchar(20)</SeatNumber>
</ReplyFormat>
<PassengerByBCN>
<Child>
<DcsCheckinId>865734555585410078</DcsCheckinId>
<DcsItineraryId>838462610154320915</DcsItineraryId>
<DcsBoardingStatusRcd/>
<DcsBoardingId>39527841796805737</DcsBoardingId>
<SeatNumber>2F</SeatNumber>
</Child>
</PassengerByBCN>
</RRT:GetPassengerByBoardingCardNumberReply>
</soap:Body>
</soap:Envelope>
Sample request:
xmlns:SOAPSDK3="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<RRT:BoardPassenger xmlns:RRT="RRT">
<DcsBoardingId>39527841796805737</DcsBoardingId>
<DcsBoardingStatusRcd>Boarded</DcsBoardingStatusRcd>
<DcsUserId>732963972619306124</DcsUserId>
</RRT:BoardPassenger>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:BoardPassengerReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<Indicator>varchar(20)</Indicator>
</ReplyFormat>
<Child>
<Indicator>OK</Indicator>
</Child>
</RRT:BoardPassengerReply>
</soap:Body>
</soap:Envelope>
This service returns the boarding status via the DcsBoardingStatusRcd node.
Return values:
Boarded
Boarded
NoShow
No show
VDenied
Voluntarily Denied Boarding
IDenied
Involuntarily Denied Boarding
UnBoarded
Un-Boarded
Sample request:
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body>
<GetBoardedPassengers xmlns="http://rrtechnologies.net/soap/">
<DcsFlightId>450764700546335808</DcsFlightId>
</GetBoardedPassengers>
</soap:Body>
</soap:Envelope>
Sample response:
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetBoardedPassengersReply xmlns:RRT="http://rrtechnologies.net/soap/">
<ReplyFormat>
<DcsCheckinId>bigint</DcsCheckinId>
<DcsPassengerId>bigint</DcsPassengerId>
<DcsBookingId>bigint</DcsBookingId>
<DcsBoardingId>bigint</DcsBoardingId>
<BookingNumber>integer</BookingNumber>
<Locator>varchar(20)</Locator>
This service enables a passenger that was checked in at a kiosk to print a bag tag.
Pre-requisites:
The GetUserId API will need to be used with the assigned RRT application user code so that the DcsUserId node
can be provided to the printing API calls.
The user code provided to the application using the API will have to be setup with bag tag printers at the
appropriate locations.
o Alternatively, step 1 can be skipped, and the system using the API can provide the location code without
using the GetCurrentUserLocation API.
o This method can be useful when the external system (kiosk, web) uses a single RRT application user id.
The DcsBaggageId value is needed for printing. This value is returned by our API call SaveBaggage.
1. Get the location for the user id. If the system using the API uses the same user code for all connections, then
skip to step 2, and provide the location directly
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetCurrentUserLocationReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<ReplyFormat>
<DcsLocationRcd>varchar(20)</DcsLocationRcd>
<LocationDescription>varchar(240)</LocationDescription>
</ReplyFormat>
<Location>
<Child>
<DcsLocationRcd>Test</DcsLocationRcd>
<LocationDescription>Test</LocationDescription>
</soap:Envelope>
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:GetDeviceForLocationReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<Device>
<Child>
<DcsDeviceId>457351263046784041</DcsDeviceId>
<DcsDeviceTypeRcd>BagTag</DcsDeviceTypeRcd>
<DcsDeviceExecutionLocationRcd>DCSMT</DcsDeviceExecutionLocationRcd>
<DeviceName>IER 411 Bag Tag Printer</DeviceName>
<DeviceAddress>192.168.112.80 3004</DeviceAddress>
</Child>
</Device>
<ReplyFormat>
<DcsDeviceId>bigint</DcsDeviceId>
<DcsDeviceTypeRcd>varchar(20)</DcsDeviceTypeRcd>
<DcsDeviceExecutionLocationRcd>varchar(20)</DcsDeviceExecutionLocationRcd>
<DeviceName>varchar(240)</DeviceName>
<DeviceAddress>varchar(240)</DeviceAddress>
</ReplyFormat>
</RRT:GetDeviceForLocationReply>
</soap:Body>
</soap:Envelope>
Sample request:
Sample response:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header/>
<soap:Body>
<RRT:PrintBagTagReply xmlns:RRT="http://rrtechnologies.net/soap/"
ADMIN_DATA_DUMP="true">
<Print>
<DcsBaggageId>648253417750545493</DcsBaggageId>
<PassengerName>TEST/BAG</PassengerName>
<Locator>HNVMMG</Locator>
<BagTagNumber>000834</BagTagNumber>
<DamagedFlag>0</DamagedFlag>
<HeavyFlag>0</HeavyFlag>
<BaggageWeight>35</BaggageWeight>
<SelecteeFlag>1</SelecteeFlag>
<AgentId>TEST</AgentId>
<FinalDestinationCity>NEW YORK</FinalDestinationCity>
<DestinationCityName>NEW YORK</DestinationCityName>
<DestinationState>NY</DestinationState>
<IataCode>487</IataCode>
<CurrentTime>1558</CurrentTime>
<CurrentDate>02AUGUST</CurrentDate>
<JRBTBagTag>834</JRBTBagTag>
<OriginCity>FLL</OriginCity>
<DepartureDate>02Aug07</DepartureDate>
<AirportCode3>LGA</AirportCode3>
<CarrierCode3>RT</CarrierCode3>
<FlightNumber3>4321</FlightNumber3>
<BoardingCard3>1</BoardingCard3>
<AirportCode2/>
<CarrierCode2/>
<FlightNumber2/>
<BoardingCard2/>
XML Service APIs Page 284
<AirportCode1/>
<CarrierCode1/>
<FlightNumber1/>
<BoardingCard1/>
</Print>
<ReplyFormat>
<Indicator>varchar(240)</Indicator>
<Id>varchar(240)</Id>
</ReplyFormat>
<Child>
<Indicator>Printed</Indicator>
<Id/>
</Child>
</RRT:PrintBagTagReply>
</soap:Body>
</soap:Envelope>
Return codes:
This service generates flight Closeout Report after the flight is closed.
Parameters:
DcsFlightId
Obtained from getPassengerList call. Note: Different cabin class has different flight ID
Sample request:
Sample repsonse:
Parameters:
DcsFlightId
Sample request:
Sample repsonse:
This service will synchronize all the payments made in DCS into Results. As soon as a flight is closed, the system
makes a call to this service. Then the payments from DCS checkin are sent to Results bookings and are shown on the
Booking Payment screen:
Sample request:
Sample response:
<soap:Header/>
<soap:Body>
<RRT:UpdateResultsPaymentsReply xmlns:RRT="http://rrtechnologies.net/soap/">
<PaymentUpdate>
<Reply>OK</Reply>
</PaymentUpdate>
</RRT:UpdateResultsPaymentsReply>
</soap:Body>
</soap:Envelope>
You can also run the request if there are changes to the DCS payment information on a flight after the flight is already
closed. A rerun of the service will adjust the payment information again. The following shows the additional DCS
payment after a rerun: