Веб-служба бронирования: различия между версиями

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
(Ответ)
Строка 214: Строка 214:
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
 
==== Ответ ====
 
==== Ответ ====
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
Строка 493: Строка 492:
 
</div>
 
</div>
  
= Примеры использования =
+
= Пример использования =
  
== Односторонний перелет ==
+
Пример одностороннего перелета Москва - Мадрид.
 
 
 
 
 
 
== Перелет туда-обратно ==
 
  
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 +
==== Запрос ====
 +
<div class="mw-collapsible-content">
 +
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DBookFlight">
 +
  <soapenv:Header/>
 +
  <soapenv:Body>
 +
      <ver:BookFlight>
 +
        <RequestBin>
 +
            <Request>
 +
              <BookFlight>
 +
                  <FlightId>171430002</FlightId>
 +
                  <BookingCodes>
 +
                    <!--Zero or more repetitions:-->
 +
                    <BookingCode Code="E" SegNumber="2"/>
 +
                  </BookingCodes>
 +
                  <Travellers>
 +
                    <!--Zero or more repetitions:-->
 +
                    <Traveller Type="ADT" IsContact="true" Num="1">
 +
                        <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
 +
                          <FirstName>Petr</FirstName>
 +
                          <LastName>Ivanov</LastName>
 +
                        </PersonalInfo>
 +
                        <ContactInfo>
 +
                          <!--Optional:-->
 +
                          <EmailID>testmail@mail.ru</EmailID>
 +
                          <!--Optional:-->
 +
                          <Telephone Type="M">
 +
                              <!--Optional:-->
 +
                              <PhoneNumber>79051234567</PhoneNumber>
 +
                          </Telephone>
 +
                        </ContactInfo>
 +
                        <DocumentInfo DocType="A" DocNum="123456" CountryCode="RU" DocElapsedTime="01.01.2020"/>
 +
                    </Traveller>
 +
                  </Travellers>
 +
              </BookFlight>
 +
            </Request>
 +
            <Source>
 +
              <ClientId>---</ClientId>
 +
              <APIKey>---</APIKey>
 +
              <Language>RU</Language>
 +
              <Currency>RUB</Currency>
 +
            </Source>
 +
        </RequestBin>
 +
      </ver:BookFlight>
 +
  </soapenv:Body>
 +
</soapenv:Envelope>
 +
</div>
 +
</div>
  
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 +
==== Ответ ====
 +
<div class="mw-collapsible-content">
 +
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 +
  <SOAP-ENV:Body>
 +
      <ns1:BookFlightResponse>
 +
        <ResponseBin>
 +
            <Response>
 +
              <BookFlight ID="262872" Status="booked" Code="LQHZWU">
 +
                  <QueryPlace xsi:nil="true"/>
 +
                  <Flight FlightId="171430002">
 +
                    <WebService>SABRE</WebService>
 +
                    <ValCompany>SU</ValCompany>
 +
                    <URL>http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dbooking%2Finfo%26uid%3D14290%26flight%3D171430002</URL>
 +
                    <Segments>
 +
                        <Segment SegNum="1" SegGroupNum="0">
 +
                          <DepAirp CodeType="IATA">SVO</DepAirp>
 +
                          <DepTerminal>D</DepTerminal>
 +
                          <ArrAirp CodeType="IATA">BCN</ArrAirp>
 +
                          <ArrTerminal>1</ArrTerminal>
 +
                          <OpAirline>SU</OpAirline>
 +
                          <MarkAirline>SU</MarkAirline>
 +
                          <FlightNumber>2512</FlightNumber>
 +
                          <AircraftType>321</AircraftType>
 +
                          <DepDateTime>2014-03-20T20:40:00</DepDateTime>
 +
                          <ArrDateTime>2014-03-20T22:20:00</ArrDateTime>
 +
                          <StopNum>0</StopNum>
 +
                          <BookingCodes>
 +
                              <BookingCode ClassType="economy">
 +
                                <BookingCode>E</BookingCode>
 +
                              </BookingCode>
 +
                          </BookingCodes>
 +
                          <FlightTime>280</FlightTime>
 +
                          <TimeZone Departure="4" Arrival="1"/>
 +
                          <ETicket>true</ETicket>
 +
                        </Segment>
 +
                        <Segment SegNum="2" SegGroupNum="0">
 +
                          <DepAirp CodeType="IATA">BCN</DepAirp>
 +
                          <DepTerminal>1</DepTerminal>
 +
                          <ArrAirp CodeType="IATA">MAD</ArrAirp>
 +
                          <ArrTerminal>2</ArrTerminal>
 +
                          <OpAirline>UX</OpAirline>
 +
                          <MarkAirline>SU</MarkAirline>
 +
                          <FlightNumber>3403</FlightNumber>
 +
                          <AircraftType>738</AircraftType>
 +
                          <DepDateTime>2014-03-21T12:05:00</DepDateTime>
 +
                          <ArrDateTime>2014-03-21T13:25:00</ArrDateTime>
 +
                          <StopNum>0</StopNum>
 +
                          <BookingCodes>
 +
                              <BookingCode ClassType="economy">
 +
                                <BookingCode>E</BookingCode>
 +
                              </BookingCode>
 +
                          </BookingCodes>
 +
                          <FlightTime>80</FlightTime>
 +
                          <TimeZone Departure="1" Arrival="1"/>
 +
                          <ETicket>true</ETicket>
 +
                        </Segment>
 +
                    </Segments>
 +
                    <PricingInfo Refundable="false">
 +
                        <PassengerFare Type="ADT" Quantity="1">
 +
                          <BaseFare Currency="EUR" Amount="165"/>
 +
                          <EquiveFare Currency="RUB" Amount="8335"/>
 +
                          <TotalFare Currency="RUB" Amount="14025"/>
 +
                          <Taxes>
 +
                              <Tax CurCode="RUB" TaxCode="YQF" Amount="4242"/>
 +
                              <Tax CurCode="RUB" TaxCode="YRI" Amount="374"/>
 +
                              <Tax CurCode="RUB" TaxCode="JD" Amount="844"/>
 +
                              <Tax CurCode="RUB" TaxCode="QV" Amount="230"/>
 +
                          </Taxes>
 +
                          <Tariffs/>
 +
                          <FareCalc>MOW SU X/BCN SU MAD225.45NUC225.45END ROE0.731857</FareCalc>
 +
                          <LastTicketDateTime>2014-03-14T12:45:00</LastTicketDateTime>
 +
                        </PassengerFare>
 +
                    </PricingInfo>
 +
                    <Commission Currency="RUB">0</Commission>
 +
                    <Charges Currency="RUB">140.25</Charges>
 +
                    <TotalPrice Currency="RUB">14165.25</TotalPrice>
 +
                  </Flight>
 +
                  <Agency/>
 +
                  <ItinReceipts xsi:nil="true"/>
 +
                  <FareStored xsi:nil="true"/>
 +
                  <Travellers>
 +
                    <Traveller Type="ADT" IsContact="true" Num="1">
 +
                        <Meal/>
 +
                        <Ticket/>
 +
                        <Seats/>
 +
                        <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
 +
                          <FirstName>PETR</FirstName>
 +
                          <LastName>IVANOV</LastName>
 +
                          <MiddleName/>
 +
                        </PersonalInfo>
 +
                        <LoyaltyCard/>
 +
                        <ContactInfo>
 +
                          <EmailID>TESTMAIL@MAIL.ru</EmailID>
 +
                          <Telephone Type="M">
 +
                              <PhoneNumber>79051234567</PhoneNumber>
 +
                              <CountryAccessCode/>
 +
                              <AreaCityCode/>
 +
                          </Telephone>
 +
                        </ContactInfo>
 +
                        <DocumentInfo DocType="A" DocNum="123456" CountryCode="RU" DocElapsedTime="01.01.2020"/>
 +
                        <VisaInfo/>
 +
                        <ArrAddress/>
 +
                        <PreferedPlace/>
 +
                        <DocStringFormats/>
 +
                    </Traveller>
 +
                  </Travellers>
 +
              </BookFlight>
 +
              <Requisites/>
 +
              <RequestType xsi:nil="true"/>
 +
              <UserID xsi:nil="true"/>
 +
              <Errors xsi:nil="true"/>
 +
            </Response>
 +
        </ResponseBin>
 +
      </ns1:BookFlightResponse>
 +
  </SOAP-ENV:Body>
 +
</SOAP-ENV:Envelope>
 +
</div>
 +
</div>
  
 
== См. также ==
 
== См. также ==

Версия 13:33, 13 марта 2014

Запросы

  • Запрос на бронирование
  • Односторонний перелет. Бронирование
  • Бронирование через TravellerId

Общий формат запроса / ответа

Получить доступ к результатам бронирования в данном сервисе можно через SOAP клиента. Для получения результата необходим параметр - «FlightId» - Id перелёта, для которого будет производится бронирование. WSDL находится по адресу: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=BookFlight.

Запрос

  1 <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DBookFlight">
  2    <soapenv:Header/>
  3    <soapenv:Body>
  4       <ver:BookFlight>
  5          <RequestBin>
  6             <Request>
  7                <BookFlight>
  8                   <FlightId>?</FlightId>
  9                   <!--FlightId - Id перелёта в системе Немо-->
 10                   <!--Optional:-->
 11                   <ValidatingCompany>?</ValidatingCompany> <!--необязательный-->
 12                   <!--ValidatingCompany - валидирующий перевозчик (тот кто выписывает билет)-->
 13                   <!--Optional:-->
 14                   <BookingCodes>
 15                      <!--Zero or more repetitions:-->
 16                      <BookingCode Code="?" SegNumber="?"/>
 17                      <!--Code - код класса перелёта-->
 18 	             <!--SegNumber - номер сегмента в перелёте (начинаются с 1)-->
 19                   </BookingCodes>
 20                   <!--Optional:-->
 21                   <CurrencyCode>?</CurrencyCode> <!--необязательный-->
 22                   <!--CurrencyCode - код валюты-->
 23                   <!--Optional:-->
 24                   <TicketTimeLimit>?</TicketTimeLimit> <!--необязательный-->
 25                   <!--TicketTimeLimit - таймлимит на оплату, формат: ГГГГ-ММ-ДДTЧЧ:ММ:СС-->
 26                   <!--Optional:-->
 27                   <Agency Name="?"> <!--необязательный-->
 28                   <!--Name - название агентства-->
 29                      <Telephone Type="?">
 30                      <!--Type - тип номера, обязательный, возможные значения: 
 31                       M - мобильный, H - домашний, B - рабочий, A - агенство-->
 32                         <!--Optional:-->
 33                         <PhoneNumber>?</PhoneNumber>
 34                         <!--PhoneNumber - номер телефона-->
 35                         <!--Optional:-->
 36                         <CountryAccessCode>?</CountryAccessCode> <!--необязательный-->
 37                         <!--CountryAccessCode - код страны-->
 38                         <!--Optional:-->
 39                         <AreaCityCode>?</AreaCityCode> <!--необязательный-->
 40                         <!--AreaCityCode - код региона/города-->
 41                      </Telephone>
 42                      <Address City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/> <!--необязательный-->
 43                      <!--City - город-->
 44 		     <!--State - штат-->
 45 		     <!--StreetAddress - адрес в городе (улица, дом, корпус, офис и т.д.)-->
 46 		     <!--PostalCode - почтовый индекс-->
 47 		     <!--CountryCode - код страны (RU, UA и т.п.)-->
 48 		  </Agency>
 49                   <Travellers>
 50                      <!--Zero or more repetitions:-->
 51                      <Traveller Type="?" IsContact="?" LinkedTo="?" Num="?" TravellerId="?">
 52                      <!--Type - тип пассажира, обязательный, возможные значения: ADT - взрослые,
 53                       CNN - дети со взрослыми,UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом-->
 54 		     <!--IsContact - если true - то данный пассажир является контактным лицом, если false - то не является,
 55 		      контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них 
 56                       может быть контактным лицом, по умолчанию false-->
 57 		     <!--Num - порядковый номер пассажира, начинается с 1-->
 58                      <!--LinkedTo - номер взрослого, к которому привязан младенец/ребёнок--> <!--необязательный-->
 59                      <!--TravellerId - индивидуальный номер пассажира--> <!--необязательный-->
 60                         <Meal>?</Meal> <!--необязательный-->
 61                         <!--Meal - код типа питания, возможные значения:
 62 						NONE - отсутствует
 63 						AVML - Азиатская вегетарианская кухня
 64 						BLML - Блюда щадящей диеты
 65 						CHML - Детское питание
 66 						CHPC - Детский холодный завтрак
 67 						СНСС - Детский горячий завтрак
 68 						CHHC - Детский ланч, ветчина и сыр
 69 						PBJS - Детский ланч, ореховое масло
 70 						CHMC - Детский обед макароны с сыром
 71 						DBML - Диабетическое питание
 72 						FPML - Фрукты
 73 						GFML - Питание без клейковины
 74 						HFML - Питание богатое клетчаткой
 75 						HNML - Индусская кухня
 76 						BBML - Питание для младенцев
 77 						KSML - Кошерная кухня
 78 						SMKB - Кошерный завтрак
 79 						SMKL - Кошерный ланч
 80 						SMKD - Кошерный обед
 81 						LPML - Малобелковое питание
 82 						LCML - Низкокалорийное питание
 83 						LFML - Низкохолестериновое питание
 84 						PRML - Низкопуриновое питание
 85 						LSML - Малосоленое питание
 86 						MOML - Мюсли
 87 						NLML - Безмолочные продукты
 88 						ORML - Восточная кухня
 89 						RVML - Сырые овощи
 90 						SFML - Морепродукты
 91 						SPML - Особое питание
 92 						VLML - Вегетарианское, молоко и яйца
 93 						VGML - Строго вегетарианское питание
 94 						VJML - Джайнизское вегетарианское
 95 						VOML - Восточное вегетарианское питание-->
 96                         <PersonalInfo DateOfBirth="?" Nationality="?" Gender="?">
 97                         <!--DateOfBirth - дата рождения в формате ДД.ММ.ГГГГ (например 31.12.2000)-->
 98 			<!--Nationality - гражданство, двух буквенный код страны (RU, UA, US и т.д.)-->
 99 			<!--Gender - пол пассажира, возможные значения: M - мужской(Male), F - женский(Female)-->
100                            <FirstName>?</FirstName>
101                            <!--FirstName - имя пассажира-->
102                            <LastName>?</LastName>
103                            <!--LastName - фамилия пассажира-->
104                            <!--Optional:-->
105                            <MiddleName>?</MiddleName> <!--необязательный-->
106                            <!--MiddleName - отчество пассажира-->
107                         </PersonalInfo>
108                         <LoyaltyCard OpCode="?" Number="?"/> <!--необязательный-->
109                         <!--OpCode - код авиакомпании-->
110 			<!--Number - номер карточки-->
111                         <ContactInfo> <!--необязательный-->
112                            <!--Optional:-->
113                            <EmailID>?</EmailID>
114                            <!--EmailID - контактный email-->
115                            <!--Optional:-->
116                            <Telephone Type="?">
117                            <!--Type - тип номера, возможные значения: M - мобильный, H - домашний, B - рабочий-->
118                               <!--Optional:-->
119                               <PhoneNumber>?</PhoneNumber>
120                               <!--PhoneNumber - номер телефона-->
121                               <!--Optional:-->
122                               <CountryAccessCode>?</CountryAccessCode>
123                               <!--CountryAccessCode - код страны-->
124                               <!--Optional:-->
125                               <AreaCityCode>?</AreaCityCode>
126                               <!--AreaCityCode - код региона/города-->
127                            </Telephone>
128                         </ContactInfo>
129                         <DocumentInfo DocType="?" DocNum="?" CountryCode="?" DocElapsedTime="?"/>
130                         <!--DocType - тип документа, возможные значения:
131 								Р - Паспорт
132 								A – Паспорт иностранца
133 								С - Внутренний гражданский паспорт
134 								F – Документ заменяющий паспорт
135 								М - Воинское удостоверение
136 								N – Сертификат натурализации(специфичный документ США)
137 								T – Док.повторного въезда, паспорт беженца
138 								V – Документ для пересечения границы-->
139 			<!--DocNum - номер документа-->
140 			<!--CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.)-->
141 			<!--DocElapsedTime - срок истечения срока действия паспорта в ДД.ММ.ГГГ (например 31.12.2000)-->
142                         <VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/> 
143                         <!--необязательный-->
144                         <!--Num - номер визы-->
145                         <!--IssueDate - дата(ДД.ММ.ГГГГ) выдачи визы-->
146                         <!--IssueCountry - страна выдачи визы-->
147                         <!--IssuePlace - место выдачи визы-->
148                         <!--BirthCountry - страна рождения(IATA код страны)-->
149                         <!--BirthCity - город рождения(название)-->
150                         <ArrAddress City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/> <!--необязательный-->
151                         <!--City - город-->
152 			<!--State - штат или область въезда-->
153 			<!--StreetAddress - адрес: улица, номер дома, квартиры и т.д.-->
154 			<!--PostalCode - почтовый код-->
155 			<!--CountryCode - код страны-->
156                         <PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/> 
157                         <!--необязательный-->
158                         <!--Если указаны номер ряда и номер места, то параметры SmokingAllowed и Location игнорируются-->
159 			<!--SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих-->
160 			<!--Location - положение места в ряде, возможные значения:
161 							W - у окна (Window)
162 							M - где-то в середине ряда (Middle)
163 							NPW - возле прохода (NearPassengerWay)
164 							NS - нет предпочтения (NotSpecified)-->
165 			<!--RowNumber - номер ряда-->
166 			<!--PlaceNumber - номер места-->
167 			<!--SegNumber - номер сегмента-->
168                         <DocStringFormats>
169                            <!--Zero or more repetitions:-->
170                            <DocStringFormat>?</DocStringFormat>
171                            <!--DocStringFormat - формат паспортной строки, возможные значения: 
172                             DOCS - строка формата DOCS, FOID - строка формата FOID-->
173                         </DocStringFormats>
174                      </Traveller>
175                   </Travellers>
176                   <!--Optional:-->
177                   <QueueNum>?</QueueNum> <!--необязательный-->
178                   <!--QueueNum - номер очереди, в которую необходимо поместить бронирование-->
179                </BookFlight>
180             </Request>
181             <Source>
182                <ClientId>?</ClientId>
183                <!--ClientId - ID клиента в системе Nemo. Можно посмотреть/добавить в разделе 
184                 "Администрирование" ⇨ "Веб-служба. Авторизация".-->
185                <APIKey>?</APIKey>
186                <!--APIKey - секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе 
187                 "Администрирование" ⇨ "Веб-служба. Авторизация".-->
188                <Language>?</Language>
189                <!--Language - язык-->
190                <Currency>?</Currency>
191                <!-- CUrrency - валюта-->
192             </Source>
193          </RequestBin>
194       </ver:BookFlight>
195    </soapenv:Body>
196 </soapenv:Envelope>

Ответ

  1 <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  2    <SOAP-ENV:Body>
  3       <ns1:BookFlightResponse>
  4          <ResponseBin>
  5             <Response>
  6                <BookFlight ID="?" Status="?" Code="?">
  7                <!--ID - Id брони в системе немо, целое число, обязательный-->
  8 	       <!--Status - индикатор состояния брони, возможные значения:
  9 						booked - забронировано,
 10 						canceled - бронь отменена,
 11  						ticket - выписана
 12 						UNDEFINED - статус не определён-->
 13 	       <!--Code - код брони в системе поставщика-->
 14                   <QueryPlace xsi:nil="true"/>
 15                   <!--QueryPlace - положение брони в очереди, Number - номер брони в очереди-->
 16                   <Flight FlightId="?">
 17                   <!--FlightId - Id перелёта в системе Nemo-->
 18                      <WebService>?</WebService>
 19                      <!--WebService - поставщик перелёта-->
 20                      <ValCompany>?</ValCompany>
 21                      <!--ValCompany - код авиакомпании, являющейся валидирующим перевозчиком, IATA-->
 22                      <URL>?</URL>
 23                      <!--URL - ссылка на бронирование конкретного перелета-->
 24                      <Segments>
 25                         <Segment SegNum="?" SegGroupNum="?">
 26                         <!--SegNum - номер сегмента в перелёте-->
 27 		        <!--SegGroupNum – номер плеча перелёта-->
 28                            <DepAirp CodeType="IATA">?</DepAirp>
 29                            <!--DepAirp - аэропорт отправления, например: MOW - любой аэропорт в г.Москва 
 30                             или SVO - Шереметьево-->
 31                            <DepTerminal>?</DepTerminal>
 32                            <!--DepTerminal - терминал пункта отправления, если пустое значение, 
 33                             то в аэропорту всего 1 терминал-->
 34                            <ArrAirp CodeType="IATA">?</ArrAirp>
 35                            <!--ArrAirp - аэропорт прибытия-->
 36                            <ArrTerminal>?</ArrTerminal>
 37                            <!--ArrTerminal - терминал пункта прибытия, если пустое значение, 
 38                             то в аэропорту всего 1 терминал-->
 39                            <OpAirline>?</OpAirline>
 40                            <!--OpAirline - авиакомпания перевозчик, например: SU - Аэрофлот-->
 41                            <MarkAirline>?</MarkAirline>
 42                            <!--MarkAirline - авиакомпания, продающая перелёт-->
 43                            <FlightNumber>?</FlightNumber>
 44                            <!--FlightNumber - номер рейса-->
 45                            <AircraftType>?</AircraftType>
 46                            <!--AircraftType - тип воздушного судна, код-->
 47                            <DepDateTime>?</DepDateTime>
 48                            <!--DepDateTime - дата и время отправления, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
 49                            <ArrDateTime>?</ArrDateTime>
 50                            <!--ArrDateTime - дата и время прибытия, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
 51                            <StopNum>?</StopNum>
 52                            <!--StopNum - количество остановок-->
 53                            <BookingCodes>
 54                               <BookingCode ClassType="?">
 55                               <!--ClassType - класс перелета, например: economy-->
 56                                  <BookingCode>?</BookingCode>
 57                                  <!--BookingCode - код класса бронирования, у разных авиакомпаний один и тот же класс 
 58                                   может записываться разными литерами, например: L-->
 59                               </BookingCode>
 60                            </BookingCodes>
 61                            <FlightTime>?</FlightTime>
 62                            <!--FlightTime - время перелёта в минутах-->
 63                            <TimeZone Departure="?" Arrival="?"/>
 64                            <!--Departure временная зона аэропорта отправления-->
 65 			   <!--Arrival - временная зона аэропорта прибытия-->
 66                            <ETicket>?</ETicket>
 67                            <!--ETicket - признак электронного билета, значения: true / false-->
 68                         </Segment>
 69                      </Segments>
 70                      <PricingInfo Refundable="?">
 71                      <!--Refundable - возвратный/невозвратный, true/false. Если пустое, то не известно-->
 72                         <PassengerFare Type="?" Quantity="?">
 73                         <!--Type - тип пассажира, возможные значения: ADT - взрослые, CNN - дети, 
 74                          INF - младенцы, INS - младенцы с местом-->
 75 		        <!--Quantity - количество пассажиров данного типа-->
 76                            <BaseFare Currency="?" Amount="?"/>
 77                            <!--BaseFare - базовая стоимость, в базовой валюте. Currency - код валюты, Amount - значение цены-->
 78                            <EquiveFare Currency="?" Amount="?"/>
 79                            <!--EquiveFare - базовая стоимость, в эквивалентной валюте(валюте продажи). 
 80                             Currency - код валюты, Amount - значение цены-->
 81                            <TotalFare Currency="?" Amount="?"/>
 82                            <!--TotalFare - суммарная стоимость, в эквивалентной валюте. 
 83                             Currency - код валюты, Amount - значение цены-->
 84                            <Taxes>
 85                               <Tax CurCode="?" TaxCode="?" Amount="?"/>
 86                               <!--CurCode - код валюты, TaxCode - код таксы, Amount - сумма таксы-->
 87                            </Taxes>
 88                            <Tariffs>
 89                               <Tariff Code="?" SegNum="?"/>
 90                               <!--Code - код тарифа, SegNum - номер сегмента, к которому применён тариф-->
 91                            </Tariffs>
 92                            <FareCalc>?</FareCalc>
 93                            <!--FareCalc - строка расчёта цены-->
 94                            <LastTicketDateTime>?</LastTicketDateTime>
 95                            <!--LastTicketDateTime - дата и время таймлимита по выписке в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
 96                         </PassengerFare>
 97                      </PricingInfo>
 98                      <Commission/>
 99                      <Charges Currency="?">?</Charges>
100                      <!--Charges - сборы, Currency - код валюты-->
101                      <TotalPrice Currency="?">?</TotalPrice>
102                      <!--TotalPrice - итоговая цена, Currency - код валюты-->
103                   </Flight>
104                   <Agency Name="?"> 
105                   <!--Name - название агентства-->
106                      <Telephone Type="?">
107                      <!--Type - тип номера, обязательный, возможные значения: 
108                       M - мобильный, H - домашний, B - рабочий, A - агенство-->
109                         <!--Optional:-->
110                         <PhoneNumber>?</PhoneNumber>
111                         <!--PhoneNumber - номер телефона-->
112                         <!--Optional:-->
113                         <CountryAccessCode>?</CountryAccessCode> 
114                         <!--CountryAccessCode - код страны-->
115                         <!--Optional:-->
116                         <AreaCityCode>?</AreaCityCode> 
117                         <!--AreaCityCode - код региона/города-->
118                      </Telephone>
119                      <Address City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/> 
120                      <!--City - город-->
121 		     <!--State - штат-->
122 		     <!--StreetAddress - адрес в городе (улица, дом, корпус, офис и т.д.)-->
123 		     <!--PostalCode - почтовый индекс-->
124 		     <!--CountryCode - код страны (RU, UA и т.п.)-->
125 		  </Agency>
126                   <ItinReceipts Encoding="?" Format="?">
127                   <!--ItinReceipts - маршрут квитанция, Encoding - кодировка, Format - формат-->
128                   <FareStored xsi:nil="true"/>
129                   <Travellers>
130                      <!--Zero or more repetitions:-->
131                      <Traveller Type="?" IsContact="?" LinkedTo="?" Num="?" TravellerId="?">
132                      <!--Type - тип пассажира, обязательный, возможные значения: ADT - взрослые,
133                       CNN - дети со взрослыми,UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом-->
134 		     <!--IsContact - если true - то данный пассажир является контактным лицом, если false - то не является,
135 		      контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них 
136                       может быть контактным лицом, по умолчанию false-->
137 		     <!--Num - порядковый номер пассажира, начинается с 1-->
138                      <!--LinkedTo - номер взрослого, к которому привязан младенец/ребёнок--> 
139                      <!--TravellerId - индивидуальный номер пассажира--> 
140                         <Meal>?</Meal> 
141                         <!--Meal - код типа питания, возможные значения:
142 						NONE - отсутствует
143 						AVML - Азиатская вегетарианская кухня
144 						BLML - Блюда щадящей диеты
145 						CHML - Детское питание
146 						CHPC - Детский холодный завтрак
147 						СНСС - Детский горячий завтрак
148  						CHHC - Детский ланч, ветчина и сыр
149 						PBJS - Детский ланч, ореховое масло
150 						CHMC - Детский обед макароны с сыром
151 						DBML - Диабетическое питание
152 						FPML - Фрукты
153 						GFML - Питание без клейковины
154 						HFML - Питание богатое клетчаткой
155 						HNML - Индусская кухня
156  						BBML - Питание для младенцев
157 						KSML - Кошерная кухня
158 						SMKB - Кошерный завтрак
159 						SMKL - Кошерный ланч
160 						SMKD - Кошерный обед
161  						LPML - Малобелковое питание
162 						LCML - Низкокалорийное питание
163 						LFML - Низкохолестериновое питание
164 						PRML - Низкопуриновое питание
165 						LSML - Малосоленое питание
166 						MOML - Мюсли
167 						NLML - Безмолочные продукты
168  						ORML - Восточная кухня
169 						RVML - Сырые овощи
170 						SFML - Морепродукты
171 						SPML - Особое питание
172 						VLML - Вегетарианское, молоко и яйца
173 						VGML - Строго вегетарианское питание
174 						VJML - Джайнизское вегетарианское
175  						VOML - Восточное вегетарианское питание-->
176                         <PersonalInfo DateOfBirth="?" Nationality="?" Gender="?">
177                         <!--DateOfBirth - дата рождения в формате ДД.ММ.ГГГГ (например 31.12.2000)-->
178 			<!--Nationality - гражданство, двух буквенный код страны (RU, UA, US и т.д.)-->
179 			<!--Gender - пол пассажира, возможные значения: M - мужской(Male), F - женский(Female)-->
180                            <FirstName>?</FirstName>
181                            <!--FirstName - имя пассажира-->
182                            <LastName>?</LastName>
183                            <!--LastName - фамилия пассажира-->
184                            <!--Optional:-->
185                            <MiddleName>?</MiddleName> 
186                            <!--MiddleName - отчество пассажира-->
187                         </PersonalInfo>
188                         <LoyaltyCard OpCode="?" Number="?"/> 
189                         <!--OpCode - код авиакомпании-->
190 			<!--Number - номер карточки-->
191                         <ContactInfo> 
192                            <!--Optional:-->
193                            <EmailID>?</EmailID>
194                            <!--EmailID - контактный email-->
195                            <!--Optional:-->
196                            <Telephone Type="?">
197                            <!--Type - тип номера, возможные значения: M - мобильный, H - домашний, B - рабочий-->
198                               <!--Optional:-->
199                               <PhoneNumber>?</PhoneNumber>
200                               <!--PhoneNumber - номер телефона-->
201                               <!--Optional:-->
202                               <CountryAccessCode>?</CountryAccessCode>
203                               <!--CountryAccessCode - код страны-->
204                               <!--Optional:-->
205                               <AreaCityCode>?</AreaCityCode>
206                               <!--AreaCityCode - код региона/города-->
207                            </Telephone>
208                         </ContactInfo>
209                         <DocumentInfo DocType="?" DocNum="?" CountryCode="?" DocElapsedTime="?"/>
210                         <!--DocType - тип документа, возможные значения:
211 								Р - Паспорт
212 								A – Паспорт иностранца
213 								С - Внутренний гражданский паспорт
214 								F – Документ заменяющий паспорт
215 								М - Воинское удостоверение
216 								N – Сертификат натурализации(специфичный документ США)
217 								T – Док.повторного въезда, паспорт беженца
218   								V – Документ для пересечения границы-->
219 			<!--DocNum - номер документа-->
220 			<!--CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.)-->
221 			<!--DocElapsedTime - срок истечения срока действия паспорта в ДД.ММ.ГГГ (например 31.12.2000)-->
222                         <VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/> 
223                         <!--Num - номер визы-->
224                         <!--IssueDate - дата(ДД.ММ.ГГГГ) выдачи визы-->
225                         <!--IssueCountry - страна выдачи визы-->
226                         <!--IssuePlace - место выдачи визы-->
227                         <!--BirthCountry - страна рождения(IATA код страны)-->
228                         <!--BirthCity - город рождения(название)-->
229                         <ArrAddress City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/> 
230                         <!--City - город-->
231 			<!--State - штат или область въезда-->
232 			<!--StreetAddress - адрес: улица, номер дома, квартиры и т.д.-->
233 			<!--PostalCode - почтовый код-->
234 			<!--CountryCode - код страны-->
235                         <PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/> 
236                         <!--Если указаны номер ряда и номер места, то параметры SmokingAllowed и Location игнорируются-->
237 			<!--SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих-->
238 			<!--Location - положение места в ряде, возможные значения:
239 							W - у окна (Window)
240 							M - где-то в середине ряда (Middle)
241 							NPW - возле прохода (NearPassengerWay)
242 							NS - нет предпочтения (NotSpecified)-->
243 			<!--RowNumber - номер ряда-->
244 			<!--PlaceNumber - номер места-->
245 			<!--SegNumber - номер сегмента-->
246                         <DocStringFormats>
247                            <!--Zero or more repetitions:-->
248                            <DocStringFormat>?</DocStringFormat>
249                            <!--DocStringFormat - формат паспортной строки, возможные значения: 
250                             DOCS - строка формата DOCS, FOID - строка формата FOID-->
251                         </DocStringFormats>
252                      </Traveller>
253                   </Travellers>
254                </BookFlight>
255                <Requisites/>
256                <RequestType xsi:nil="true"/>
257                <UserID xsi:nil="true"/>
258                <Errors>
259                   <Error Code="?">
260                   <!--Code - код ошибки в системе Nemo-->
261                      <ServiceErrorMessage>?</ServiceErrorMessage>
262                      <!--ServiceErrorMessage - сообщение об ошибке полученное от веб-сервиса поставщика-->
263                      <Message>?</Message>
264                      <!--Message - сообщение об ошибке от системы Nemo-->
265                   </Error>
266                </Errors>
267             </Response>
268          </ResponseBin>
269       </ns1:BookFlightResponse>
270    </SOAP-ENV:Body>
271 </SOAP-ENV:Envelope>

Пример использования

Пример одностороннего перелета Москва - Мадрид.

Запрос

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DBookFlight">

  <soapenv:Header/>
  <soapenv:Body>
     <ver:BookFlight>
        <RequestBin>
           <Request>
              <BookFlight>
                 <FlightId>171430002</FlightId>
                 <BookingCodes>
                    <BookingCode Code="E" SegNumber="2"/>
                 </BookingCodes>
                 <Travellers>
                    <Traveller Type="ADT" IsContact="true" Num="1">
                       <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
                          <FirstName>Petr</FirstName>
                          <LastName>Ivanov</LastName>
                       </PersonalInfo>
                       <ContactInfo>
                          <EmailID>testmail@mail.ru</EmailID>
                          <Telephone Type="M">
                             <PhoneNumber>79051234567</PhoneNumber>
                          </Telephone>
                       </ContactInfo>
                       <DocumentInfo DocType="A" DocNum="123456" CountryCode="RU" DocElapsedTime="01.01.2020"/>
                    </Traveller>
                 </Travellers>
              </BookFlight>
           </Request>
               <ClientId>---</ClientId>
               <APIKey>---</APIKey>
               <Language>RU</Language>
               <Currency>RUB</Currency>
        </RequestBin>
     </ver:BookFlight>
  </soapenv:Body>

</soapenv:Envelope>

Ответ

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

  <SOAP-ENV:Body>
     <ns1:BookFlightResponse>
        <ResponseBin>
           <Response>
              <BookFlight ID="262872" Status="booked" Code="LQHZWU">
                 <QueryPlace xsi:nil="true"/>
                 <Flight FlightId="171430002">
                    <WebService>SABRE</WebService>
                    <ValCompany>SU</ValCompany>
                    <URL>http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dbooking%2Finfo%26uid%3D14290%26flight%3D171430002</URL>
                    <Segments>
                       <Segment SegNum="1" SegGroupNum="0">
                          <DepAirp CodeType="IATA">SVO</DepAirp>
                          <DepTerminal>D</DepTerminal>
                          <ArrAirp CodeType="IATA">BCN</ArrAirp>
                          <ArrTerminal>1</ArrTerminal>
                          <OpAirline>SU</OpAirline>
                          <MarkAirline>SU</MarkAirline>
                          <FlightNumber>2512</FlightNumber>
                          <AircraftType>321</AircraftType>
                          <DepDateTime>2014-03-20T20:40:00</DepDateTime>
                          <ArrDateTime>2014-03-20T22:20:00</ArrDateTime>
                          <StopNum>0</StopNum>
                          <BookingCodes>
                             <BookingCode ClassType="economy">
                                <BookingCode>E</BookingCode>
                             </BookingCode>
                          </BookingCodes>
                          <FlightTime>280</FlightTime>
                          <TimeZone Departure="4" Arrival="1"/>
                          <ETicket>true</ETicket>
                       </Segment>
                       <Segment SegNum="2" SegGroupNum="0">
                          <DepAirp CodeType="IATA">BCN</DepAirp>
                          <DepTerminal>1</DepTerminal>
                          <ArrAirp CodeType="IATA">MAD</ArrAirp>
                          <ArrTerminal>2</ArrTerminal>
                          <OpAirline>UX</OpAirline>
                          <MarkAirline>SU</MarkAirline>
                          <FlightNumber>3403</FlightNumber>
                          <AircraftType>738</AircraftType>
                          <DepDateTime>2014-03-21T12:05:00</DepDateTime>
                          <ArrDateTime>2014-03-21T13:25:00</ArrDateTime>
                          <StopNum>0</StopNum>
                          <BookingCodes>
                             <BookingCode ClassType="economy">
                                <BookingCode>E</BookingCode>
                             </BookingCode>
                          </BookingCodes>
                          <FlightTime>80</FlightTime>
                          <TimeZone Departure="1" Arrival="1"/>
                          <ETicket>true</ETicket>
                       </Segment>
                    </Segments>
                    <PricingInfo Refundable="false">
                       <PassengerFare Type="ADT" Quantity="1">
                          <BaseFare Currency="EUR" Amount="165"/>
                          <EquiveFare Currency="RUB" Amount="8335"/>
                          <TotalFare Currency="RUB" Amount="14025"/>
                          <Taxes>
                             <Tax CurCode="RUB" TaxCode="YQF" Amount="4242"/>
                             <Tax CurCode="RUB" TaxCode="YRI" Amount="374"/>
                             <Tax CurCode="RUB" TaxCode="JD" Amount="844"/>
                             <Tax CurCode="RUB" TaxCode="QV" Amount="230"/>
                          </Taxes>
                          <Tariffs/>
                          <FareCalc>MOW SU X/BCN SU MAD225.45NUC225.45END ROE0.731857</FareCalc>
                          <LastTicketDateTime>2014-03-14T12:45:00</LastTicketDateTime>
                       </PassengerFare>
                    </PricingInfo>
                    <Commission Currency="RUB">0</Commission>
                    <Charges Currency="RUB">140.25</Charges>
                    <TotalPrice Currency="RUB">14165.25</TotalPrice>
                 </Flight>
                 <Agency/>
                 <ItinReceipts xsi:nil="true"/>
                 <FareStored xsi:nil="true"/>
                 <Travellers>
                    <Traveller Type="ADT" IsContact="true" Num="1">
                       <Meal/>
                       <Ticket/>
                       <Seats/>
                       <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
                          <FirstName>PETR</FirstName>
                          <LastName>IVANOV</LastName>
                          <MiddleName/>
                       </PersonalInfo>
                       <LoyaltyCard/>
                       <ContactInfo>
                          <EmailID>TESTMAIL@MAIL.ru</EmailID>
                          <Telephone Type="M">
                             <PhoneNumber>79051234567</PhoneNumber>
                             <CountryAccessCode/>
                             <AreaCityCode/>
                          </Telephone>
                       </ContactInfo>
                       <DocumentInfo DocType="A" DocNum="123456" CountryCode="RU" DocElapsedTime="01.01.2020"/>
                       <VisaInfo/>
                       <ArrAddress/>
                       <PreferedPlace/>
                       <DocStringFormats/>
                    </Traveller>
                 </Travellers>
              </BookFlight>
              <Requisites/>
              <RequestType xsi:nil="true"/>
              <UserID xsi:nil="true"/>
              <Errors xsi:nil="true"/>
           </Response>
        </ResponseBin>
     </ns1:BookFlightResponse>
  </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

См. также