Version 2.1 January 2021 - Developer.sabre

Transcription

Technical User GuideCustomer InsightVersion 2.1January 2021

This documentation is the confidential and proprietary intellectualproperty of the Sabre Airline Solutions business. Anyunauthorized use, reproduction, preparation of derivative works,performance or display of this document or software representedby this document, without the express written permission of SabreAirline Solutions is strictly prohibited.Sabre, the Sabre logo, Sabre Airline Solutions, the Sabre AirlineSolutions logo, Sabre Travel Network, the Sabre Travel Networklogo, AirCentre , AirVision , SabreSonic are trademarks and/orservice marks of an affiliate of Sabre Inc. All other trademarks,service marks and trade names are the property of their respectiveowners. 2015 Sabre Inc. All rights reserved.

Revision HistoryRevisionNumberDateDescription1.0September 20132.0January 20192.1January 20212.2February 2021 Initial version Major update across all content Final review on 11th Feb 2019Update to ProfileIdentityInfoRead and ProfileDuplicateCheckservices.Links and schema RQ/RS validationCustomer Insight Technical User GuideJanuary 2019iConfidential and Proprietary Sabre Airline Solutions

Table of Contents1Introduction1.1 About this guide . 11.2 Standards and Specifications . 11.3 About Sabre Customer Insight Profiles Web Services (CI) . 21.4 Security . 3Line Security . 3Authentication . 3Authorization . 4Confidentiality . 41.5 Network Connectivity . 41.6 Web Services Sessions. 4Sabre Web Services information in Sabre Dev Studio . 4Sabre Web Services Credentials. 4SessionCreateRQ Request XML Example . 5The Envelope . 5The SOAP Payload . 6The SOAP Envelope . 6Ending the Session . 71.7 Credit Card Data Security . 8Storage and Internal Security Measures . 81.8 Technical Support . 9Telephone. 9Email . 11Additional Support . 112Accessing CI Web Services2.1 Activation . 122.2 Types of Web Services . 12Session Management Services . 13Customer Insight – Profile Services . 132.3 Message Structure . 152.4 Requesting Payload Content . 162.5 Web Services Error Handling . 163CI Profile Types3.1 Profile Types . 193.2 Traveler. 19Customer Insight Technical User GuideJanuary 2019iiConfidential and Proprietary Sabre Airline Solutions

Logic for specific schema elements/attributes within the Profile . 19OrderSequenceNo Uniqueness based upon predefined Subject Area ‘Types’ . 193.3 Corporate . 203.4 Agency . 203.5 Agent . 203.6 Alliance. 203.7 Common attributes within the Payload . 21ClientContextCode . 213.8 Profile SubTypes. 213.9 How to Determine the Profile Data Needed . 223.10 Use of Dictionary Control Table Values . 233.11 Use of Status codes . 26Profile “Status” . 263.12 Profile Associations . 273.13 Common Rules and Elements across Profile Types . 273.14 Common Elements and Attributes . 32Management of Non-standard English Characters . 333.15 Profile UniqueID. 344Create Service4.1 Creating Profiles . 354.2 How to Create a Profile. 354.3 Sample XML Create Profile Request . 354.4 Sample XML Create Profile Successful Response . 374.5 Sample XML Create Profile Error Response . 375Read Service5.1 Reading Profiles by UniqueID . 395.2 Reading Profiles by LoginID . 395.3 Authenticate customer by Login and password . 395.4 Sample XML Read Successful Response . 425.5 Sample XML Read Error Response . 466Update Service6.1 Updating Profiles . 476.2 How to update a profile using full replace . 486.3 How to do a full update of profile using IgnoreSubjectArea . 496.4 How to partially update a profile . 506.5 Sample XML Update Successful Response . 526.6 Sample XML Update Error Response. 53Customer Insight Technical User GuideJanuary 2019iiiConfidential and Proprietary Sabre Airline Solutions

7Search Service7.1 Searching for Profiles . 547.2 Sample XML Search Request . 557.3 Repetitive search and a sample XML ProfileSearch request. 557.4 Sample ProfileSearch RQ/RS with CountAll attribute . 567.5 Sample ProfileSearchRS to the ProfileSearchRQ havingProfileNameOnly attribute set to “Y” . 577.6 Sample ProfileSearchRS single profile in response . 587.7 Sample ProfileSearchRS multiple profiles in response . 587.8 Sample ProfileSearchRS with HaveMore attribute set to “Y” . 607.9 Sample ProfileSearchRS with no results . 607.10 Sample ProfileSearchRS with error response . 618Delete / Restore Service8.1 Deleting and Restoring Profiles . 628.2 Sample ProfileDelete request Delete option . 628.3 Sample ProfileDeleteRS successful response . 638.4 Sample ProfileDeleteRS error response . 638.5 SampleProfileDelete service Restore option . 649Profile Index9.1 PNR Profile Index display . 6510Notification Service (PNS)10.1 Profile Notification Service Overview . 6710.2 About Profiles Notification Service . 6710.3 Product Features . 68High Reliability . 68Fast Delivery . 68Throttling of Notification Delivery per Endpoint . 68Delivery Retry . 6811Profile Merge Service11.1 Merging Profiles . 7011.2 How to Merge a Profile. 7011.3 System diagram illustrating flow for Merge process . 7111.4 Sample XML Profile Merge Request . 7211.5 Necessary system access and permissions . 7512Profile Identity Info Read serviceCustomer Insight Technical User GuideJanuary 2019ivConfidential and Proprietary Sabre Airline Solutions

12.1 Profile Identity Info Read overview . 7612.2 Profile Identity Info Read Request Message . 7612.3 Profile Identity Info Read – Response Message . 7712.4 Profile Identity Info Read response- Error Scenarios. 7812.5 Profile Identity Info Read request - security . 7913Duplicate Check Service13.1 Duplicate Check overview . 80Sample xml DuplicateCheckRQ . 80Sample xml DuplicateCheckRS . 8114Profile Batch Upload and Extract14.1 Upload batch . 82Sample XML Upload request . 83Delete section in Sabre OTA ProfileUplaodRQ . 83Sample XML Delete request . 8414.2 Upload response. 8414.3 Upload request – partial update. 85Sample UploadRQ xml – partial update. 8514.4 Extract batch . 86Extract sample xml – FOP mask . 8714.5 Customer Insight file name convention. . 8715Appenidix A15.1 Typical Subject areas and Elements used in Airline standard implementation . 89Customer Insight Technical User GuideJanuary 2019vConfidential and Proprietary Sabre Airline Solutions

11Introduction1.1 About this guideThis guide is for architects and developers to learn how to compose XML formatted requests andresponses to consume Sabre Customer Insight Profiles Web Services.The information in this guide is intended to help architects and developers accomplish the following: Incorporate into a client program the composition of the XML request and response formats toacquire appropriate Sabre Integrated Computing Environment (ICE) authentication andauthorization security credentials represented by a unique token found in the response. Incorporate into a client program the composition of the XML to include the unique tokenizedICE security credential in subsequent Sabre Customer Insight Profiles Web Service requests. Consume Sabre Customer Insight Profiles Web Services by learning the different request types,their corresponding responses and the different protocols and standards involved.NoteThis guide focuses on functions and elements that are intended exclusively for the use ofSabre Airline Solutions clients.1.2 Standards and SpecificationsThe following specifications govern the format of profile data, the packaging format of the messages,and the transport mechanisms. HTTP 1.1 [RFC2616] – used for transport protocol HTTPS / TLS 1.2 (more information can be found ci mandate)MIME specifications [RFC2045], [RFC2046], and [RFC2387] – used for the SOAP messageheaders and instructions SOAP 1.1, Electronic Business using XML [ebXML], and W3C XML standards – used to defineand describe the SOAP messages SOAP Messages with Attachments specification [SOAPAttach] – used for the ebXML messagesthat include header and payload containers WS-Security standards – partially adopted for some security elements in the SOAP header W3C XML 1.0 – used for both Sabre XML message specifications and Sabre XML messages putinto the payload container of the SOAP message. Open Travel Alliance specification (http://www.opentravel.org) - used as the basis for the profilerequest and response XML payloads. SOAP – Simple Object Access Protocol Character Specifications ISO 10646/Unicode, Basic Latin and Latin 1 Supplement UCS Transformation Format 8 (UTF-8 Encoding) ISO 8859 Latin 1 Character SetCustomer Insight Technical User GuideJanuary 20191IntroductionConfidential and Proprietary Sabre Airline Solutions

Sabre Character Set1.3 About Sabre Customer Insight Profiles Web Services (CI)Web clients access the content and functionality of the CI web application by accessing the WebServices exposed through the Sabre Web Services (SWS) infrastructure.The Sabre Web Services infrastructure provides security, sessions, logging, and routing to the CI webbusiness services. A Web Services session is created when a correctly formatted SessionCreateRQrequest is sent to the Sabre Web Services infrastructure, and a binary security token is returned in theSessionCreateRS message. This conversation ID and binary security token identify the session andare used together throughout the duration of the session.In a given Web Services session, all request messages include the same unique conversation ID andbinary security token. Only one conversation ID should exist per business process workflow. Onceagain, often the URL of the web client website plus a timestamp is used for the conversation ID.If no activity occurred within the session time out limit, which is approximately 15 minutes, thebusiness process flow represented by the session is not guaranteed to be alive.A simplified flow of a Web Services session is as follows:1. The web client first requests access, a connection, and a session by sending a SessionCreateRQXML request to the Sabre Web Services infrastructure which does the following:a. Validates the user security credentials and message formatb. Authenticates the messagec. Authorizes accessd. Preserves the requestor-composed unique conversation IDi.ii.Security credentials in the SessionCreateRQ message consist of the wsse:Username,wsse:Password, Organization, and Domain elements. In addition to these credentials, the clientgenerates a unique conversation ID. Often the conversation ID achieves uniqueness byincluding a timestamp and the URL of the client website as part of the conversation ID.This is the only request message that includes the client security credentials provided bySabre.The web client stores the session data represented as a conversation ID and securitytoken, and includes them with each subsequent SOAP request until the conversation is closed.This avoids the overhead of re-authentication that would occur if this process needed to belaunched for every type of CI service request.2. The SWS infrastructure uses the security token and conversation ID to locate the Web Servicessession and if granted access, routes each of the subsequent Service requests to the appropriate CIWeb Service and returns the response to the Web Client.3. The Web Client and the CI services exchange messages that represent a business workflow.Theweb client sends subsequent CI Web Service requests incorporating the returned SWS securitytoken as well as the unique conversation ID sent with the initial SessionCreateRQ request.4. The Web Services session ends when the web client sends the SessionCloseRQ XML requestwith the same unique conversation ID and security token of the session it is closing, or the sessiontime out expires before the next CI Service web request is received.The web client delivers requests to the CI Web Services using the HTTPS protocol.Customer Insight Technical User GuideJanuary 20192IntroductionConfidential and Proprietary Sabre Airline Solutions

All requests are sent to a URL that is the single access point to Sabre Web Services.1.4 SecuritySabre Web Services have implemented multiple layers of security for client applications. These layersinclude line security, authentication, authorization and confidentiality.Line SecurityLine security is the layer that secures the data traveling on the line over the Internet between externalsystems Sabre data centers and responds back to the external systems. CI Web Services supportpoint-to-point synchronous transport HTTPS using TLS 1.2 with 256-bit encryption.Clients who consume Sabre Web Services must implement line security with a secure sockets layerand they must secure the envelopes and payloads with HTTPS.AuthenticationAuthentication is the layer that allows web client access to the CI Web Services. Security credentialsare found in the wsse:Username, wsse:Password, Organization, and Domain elements present in theSOAP envelope in the SessionCreateRQ request message. The user receives the values for thesecurity credentials when set up by Sabre to use the CI Web Services.The Sabre Web Services infrastructure authenticates the service requestor using the securitycredentials found in the envelope of the request.An XML fragment of the security credentials from the SOAP SessionCreateRQ message envelope isshown below: wsse:Security xmlns:wsse s:wsu "http://schemas.xmlsoap.org/ws/2002/12/utility" wsse:UsernameToken wsse:Username USERNAME /wsse:Username wsse:Password PASSWORD /wsse:Password Organization USERORGANIZATION /Organization Domain USERDOMAIN /Domain /wsse:UsernameToken /wsse:Security NoteThe following is the second multipart MIME part containing the Sabre XML payloadmessage: SessionCreateRQ POS Source PseudoCityCode "XX"/ /POS /SessionCreateRQ Customer Insight Technical User GuideJanuary 20193IntroductionConfidential and Proprietary Sabre Airline Solutions

AuthorizationThe authorization layer gives web clients access to specific web services. When a web client sends arequest, the Sabre Web Services infrastructure authorizes access to all services in the productpackages to which an organization has subscribed. Currently, all CI Services are authorized as apackage.ConfidentialityThe confidentiality layer maintains the privacy of the data in a payload during its transmission. CIWeb Services use HTTPS with 256-bit encryption.1.5 Network ConnectivityAccess to the CI Web Services for web client applications is available through the Internet.Consequently, resources used to develop and deploy production applications must have Internetaccess.If the system is behind a corporate firewall, information about the user’s proxy server is required sothat the applications can access the Internet.1.6 Web Services SessionsSabre Web Services information in Sabre Dev StudioFor the most complete and up to date information on the use of Sabre Web Services, please consultSabre Dev Studio at https://developer.sabre.com/.If you do not have an account at Sabre Dev Studio please contact your Sabre Account representativeor the technical support listed below in this document’s introduction section.Getting Started with Sabre APIs is available athttps://developer.sabre.com/resources/getting started with sabre apis/Customer Insight resources and web services list can be found at: Resources https://developer.sabre.com/node/8717(you need to register first and log in)Web services list /referencesSabre Web Services CredentialsSabre web services credentials for Airline Solutions customers normally are set under EPRs(Employee Profile Records) set up by the Airline customer in their corresponding airline partition.Once the airline client provides Sabre web-services activations / provisioning team the information onthe given EPRs, these Sabre teams grant the required attributes to enable access to the required webservices.Therefore for the examples above for creating web service sessions, the following conventions apply: Username is typically the Employee Profile Record (EPR) ID given for a user/client Password Access password set for the EPRCustomer Insight Technical User GuideJanuary 20194IntroductionConfidential and Proprietary Sabre Airline Solutions

Organization Organization / Pseudo-city assigned for the EPR (normally the same as the 2letter airli

The Sabre Web Services infrastructure provides security, sessions, logging, and routing to the CI web business services. A Web Services session is created when a correctly formatted SessionCreateRQ request is sent to the Sabre Web Services infrastructure, and a binary security token is returned in the SessionCreateRS message. This conversation .