Веб-служба бронирования: различия между версиями
Перейти к навигации
Перейти к поиску
(Новая страница: « *Запрос на бронирование *Односторонний перелет. Бронирование *[[Бронирование через Trav...») |
|||
Строка 1: | Строка 1: | ||
+ | == Запрос на бронирование == | ||
− | + | Получить доступ к результатам бронирования в данном сервисе можно через SOAP клиента. Для получения результата необходим параметр - «FlightId» - ИД перелёта для которого будет производится бронирование. | |
− | + | ||
− | + | Запрос на бронирование выглядит следующим образом: | |
+ | |||
+ | '''Request''' | ||
+ | <pre><!--Запрос, обязательный--> | ||
+ | <BookFlight> | ||
+ | <!--@FlightId ид перелёта в системе Немо, обязательный--> | ||
+ | <FlightId>?</FlightId> | ||
+ | <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> | ||
+ | <ValidatingCompany>?</ValidatingCompany> | ||
+ | <!--Код класс перелёта, один для каждого сегмента в перелёте, необязательный--> | ||
+ | <BookingCodes> | ||
+ | <!--Код класс перелёта, обязательный--> | ||
+ | <!--@Code - код класса перелёта, обязательный--> | ||
+ | <!--@SegNumber - номер сегмента в перелёте (начинаются с 1), обязательный--> | ||
+ | <BookingCode> | ||
+ | <Code>?</Code> | ||
+ | <SegNumber>?</SegNumber> | ||
+ | </BookingCode> | ||
+ | </BookingCodes> | ||
+ | <!--Код валюты, необязательный--> | ||
+ | <CurrencyCode>?</CurrencyCode> | ||
+ | <!--Оплатить не позже, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС, необязательный--> | ||
+ | <TicketTimeLimit>?</TicketTimeLimit> | ||
+ | <!--Информация об агенстве, обязательный--> | ||
+ | <!--@Name - название агентства, обязательный--> | ||
+ | <Agency Name="?"> | ||
+ | <!--Телефон агентсва, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий, | ||
+ | A - агенство--> | ||
+ | <Telephone Type="?"> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber>?</PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode>?</CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode>?</AreaCityCode> | ||
+ | </Telephone> | ||
+ | <!--Адресс агенства. Обязательный.--> | ||
+ | <Address> | ||
+ | <!--Город. Обязательный.--> | ||
+ | <City>?</City> | ||
+ | <!--Штат. Необязательный.--> | ||
+ | <State>?</State> | ||
+ | <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> | ||
+ | <StreetAddress>?</StreetAddress> | ||
+ | <!--Почтовый индекс. Необязательный.--> | ||
+ | <PostalCode>?</PostalCode> | ||
+ | <!--Код страны (RU, UA и т.п.). Необязательный.--> | ||
+ | <CountryCode>?</CountryCode> | ||
+ | </Address> | ||
+ | </Agency> | ||
+ | <!--Список пассажиров, обязательный--> | ||
+ | <Travellers> | ||
+ | <!--Информация о пассажире, обязательный--> | ||
+ | <!--@Type - тип пассажира, обязательный, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом--> | ||
+ | <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, | ||
+ | контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> | ||
+ | <!--@Num - порядковый номер пассажира, начинается с 1, обязательный--><!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> | ||
+ | <Traveller Type="?" IsContact="?" LinkedTo="?" Num="?"> | ||
+ | <!--Код типа питания, необязательный, возможные значения: | ||
+ | NONE - отсутствует | ||
+ | AVML - Азиатская вегетарианская кухня | ||
+ | BLML - Блюда щадящей диеты | ||
+ | CHML - Детское питание | ||
+ | CHPC - Детский холодный завтрак | ||
+ | СНСС - Детский горячий завтрак | ||
+ | CHHC - Детский ланч, ветчина и сыр | ||
+ | PBJS - Детский ланч, ореховое масло | ||
+ | CHMC - Детский обед макароны с сыром | ||
+ | DBML - Диабетическое питание | ||
+ | FPML - Фрукты | ||
+ | GFML - Питание без клейковины | ||
+ | HFML - Питание богатое клетчаткой | ||
+ | HNML - Индусская кухня | ||
+ | BBML - Питание для младенцев | ||
+ | KSML - Кошерная кухня | ||
+ | SMKB - Кошерный завтрак | ||
+ | SMKL - Кошерный ланч | ||
+ | SMKD - Кошерный обед | ||
+ | LPML - Малобелковое питание | ||
+ | LCML - Низкокалорийное питание | ||
+ | LFML - Низкохолестериновое питание | ||
+ | PRML - Низкопуриновое питание | ||
+ | LSML - Малосоленое питание | ||
+ | MOML - Мюсли | ||
+ | NLML - Безмолочные продукты | ||
+ | ORML - Восточная кухня | ||
+ | RVML - Сырые овощи | ||
+ | SFML - Морепродукты | ||
+ | SPML - Особое питание | ||
+ | VLML - Вегетарианское, молоко и яйца | ||
+ | VGML - Строго вегетарианское питание | ||
+ | VJML - Джайнизское вегетарианское | ||
+ | VOML - Восточное вегетарианское питание--> | ||
+ | <Meal>?</Meal> | ||
+ | <!--Optional:--> | ||
+ | <Ticket TickectNum="?"/> | ||
+ | <!--Optional:--> | ||
+ | <Seats> | ||
+ | <!--Zero or more repetitions:--> | ||
+ | <Seat Number="?" Characteristic="?" SmokingPreference="?" SegmentNumber="?"/> | ||
+ | </Seats> | ||
+ | <!--Персональные данные, обязательный--> | ||
+ | <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> | ||
+ | <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@Gender - пол пассажира, обязательный, возможные значения: | ||
+ | M - мужской(Male) | ||
+ | F - женский(Female)--> | ||
+ | <PersonalInfo DateOfBirth="?" Nationality="?" Gender="?"> | ||
+ | <!--Имя пассажира, обязательный--> | ||
+ | <FirstName>?</FirstName> | ||
+ | <!--Фамилия пассажира, обязательный--> | ||
+ | <LastName>?</LastName> | ||
+ | <!--Отчество пассажира, необязательный--> | ||
+ | <MiddleName>?</MiddleName> | ||
+ | </PersonalInfo> | ||
+ | <!--Карточка часто летающего пассажира, необязательный --> | ||
+ | <!--@OpCode - код авиакомпании, обязательный--> | ||
+ | <!--@Number - номер карточки, обязательный--> | ||
+ | <LoyaltyCard OpCode="?" Number="?"/> | ||
+ | <!--Контактная информация, необязательный--> | ||
+ | <ContactInfo> | ||
+ | <!--Контактный email, необязательный--> | ||
+ | <EmailID>?</EmailID> | ||
+ | <!--Контактный телефон, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий--> | ||
+ | <Telephone Type="?"> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber>?</PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode>?</CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode>?</AreaCityCode> | ||
+ | </Telephone> | ||
+ | </ContactInfo> | ||
+ | <!--Паспортные данные, обязательный--> | ||
+ | <!--@DocType - тип документа, обязательный, возможные значения: | ||
+ | Р - Паспорт | ||
+ | A – Паспорт иностранца | ||
+ | С - Внутренний гражданский паспорт | ||
+ | F – Документ заменяющий паспорт | ||
+ | М - Воинское удостоверение | ||
+ | N – Сертификат натурализации(специфичный документ США) | ||
+ | T – Док.повторного въезда, паспорт беженца | ||
+ | V – Документ для пересечения границы--> | ||
+ | <!--@DocNum - номер документа, обязательный--> | ||
+ | <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> | ||
+ | <DocumentInfo DocType="?" DocNum="?" CountryCode="?" DocElapsedTime="?"/> | ||
+ | <!--информация о визе, необязательная.(Заполняется через SSR DOCO) | ||
+ | @Num - номер визы, обязательный | ||
+ | @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный | ||
+ | @IssueCountry - страна выдачи визы, обязательный | ||
+ | @IssuePlace - место выдачи визы, обязательный | ||
+ | @BirthCountry - страна рождения(IATA код страны), необязательный | ||
+ | @BirthCity - город рождения(название), необязательный | ||
+ | --> | ||
+ | <VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/> | ||
+ | <!--Адрес прибытия, необязательный--> | ||
+ | <ArrAddress> | ||
+ | <!--@City - Город. Обязательный--> | ||
+ | <City>?</City> | ||
+ | <!--@State - Штат или область въезда. Обязательный--> | ||
+ | <State>?</State> | ||
+ | <!--@StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный--> | ||
+ | <StreetAddress>?</StreetAddress> | ||
+ | <!--@PostalCode - Почтовый код. Обязательный--> | ||
+ | <PostalCode>?</PostalCode> | ||
+ | <!--@CountryCode - Код страны. Обязательный--> | ||
+ | <CountryCode>?</CountryCode> | ||
+ | </ArrAddress> | ||
+ | <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> | ||
+ | <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> | ||
+ | <!--@Location - положение места в ряде, необязательный, возможные значения: | ||
+ | W - у окна (Window) | ||
+ | M - где-то в середине ряда (Middle) | ||
+ | NPW - возле прохода (NearPassengerWay) | ||
+ | NS - нет предпочтения (NotSpecified) | ||
+ | --> | ||
+ | <!--@RowNumber - Номер ряда, строка, необязательный--> | ||
+ | <!--@PlaceNumber - Номер места, строка, необязательный--> | ||
+ | <!--@SegNumber - Номер сегмента, строка, обязательный--> | ||
+ | <PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/> | ||
+ | <!--Список форматов строк паспортных данны, необязательный--> | ||
+ | <DocStringFormats> | ||
+ | <!--Формат паспортной строки, обязательный, возможные значения: | ||
+ | DOCS - строка формата DOCS, | ||
+ | FOID - строка формата FOID--> | ||
+ | <DocStringFormat>?</DocStringFormat> | ||
+ | </DocStringFormats> | ||
+ | </Traveller> | ||
+ | </Travellers> | ||
+ | <!--Номер очереди, в которую необходимо поместить бронирование. Строка, необязательный--> | ||
+ | <QueueNum>?</QueueNum> | ||
+ | </BookFlight></pre> | ||
+ | |||
+ | == Односторонний перелет: Москва - Санкт-Петербург. == | ||
+ | |||
+ | '''REQUEST''' | ||
+ | <pre>soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight"> | ||
+ | <soapenv:Header/> | ||
+ | <soapenv:Body> | ||
+ | <ver:BookFlight> | ||
+ | <RequestBin> | ||
+ | <Request> | ||
+ | <BookFlight> | ||
+ | <!--@FlightId ид перелёта в системе Немо, обязательный--> | ||
+ | <FlightId>534733</FlightId> | ||
+ | <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> | ||
+ | <ValidatingCompany>SU</ValidatingCompany> | ||
+ | <!--Код класс перелёта, один для каждого сегмента в перелёте, необязательный--> | ||
+ | <BookingCodes> | ||
+ | <!--@Code - код класса перелёта, обязательный--> | ||
+ | <!--@SegNumber - номер сегмента в перелёте (начинаются с 1), обязательный--> | ||
+ | <BookingCode Code="Q" SegNumber="1"/> | ||
+ | </BookingCodes> | ||
+ | <!--Код валюты, необязательный--> | ||
+ | <CurrencyCode>RUB</CurrencyCode> | ||
+ | <!--Оплатить не позже, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС, необязательный--> | ||
+ | <TicketTimeLimit>2011-06-20 00:00:00</TicketTimeLimit> | ||
+ | <!--Информация об агенстве, обязательный--> | ||
+ | <!--@Name - название агентства, обязательный--> | ||
+ | <Agency Name=""> | ||
+ | <!--Телефон агентсва, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий, | ||
+ | A - агенство--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | <!--Адресс агенства. Обязательный.--> | ||
+ | <!--@ City - Город. Обязательный.--> | ||
+ | <!--@StreetAddress - Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> | ||
+ | <!--@PostalCode - Почтовый индекс. Необязательный.--> | ||
+ | <!--@CountryCode - Код страны (RU, UA и т.п.). Необязательный.--> | ||
+ | <Address City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> | ||
+ | </Agency> | ||
+ | <!--Список пассажиров, обязательный--> | ||
+ | <Travellers> | ||
+ | <!--Информация о пассажире, обязательный--> | ||
+ | <!--@Type - тип пассажира, обязательный, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом--> | ||
+ | <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, | ||
+ | контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> | ||
+ | <!--@Num - порядковый номер пассажира, начинается с 1, обязательный--> | ||
+ | <!--@TravellerId - id номер пассажира из БД, необязательный--> | ||
+ | <Traveller Type="ADT" IsContact="true" Num="1" TravellerId=""> | ||
+ | <!--Код типа питания, необязательный, возможные значения: | ||
+ | NONE - отсутствует | ||
+ | AVML - Азиатская вегетарианская кухня | ||
+ | BLML - Блюда щадящей диеты | ||
+ | CHML - Детское питание | ||
+ | CHPC - Детский холодный завтрак | ||
+ | СНСС - Детский горячий завтрак | ||
+ | CHHC - Детский ланч, ветчина и сыр | ||
+ | PBJS - Детский ланч, ореховое масло | ||
+ | CHMC - Детский обед макароны с сыром | ||
+ | DBML - Диабетическое питание | ||
+ | FPML - Фрукты | ||
+ | GFML - Питание без клейковины | ||
+ | HFML - Питание богатое клетчаткой | ||
+ | HNML - Индусская кухня | ||
+ | BBML - Питание для младенцев | ||
+ | KSML - Кошерная кухня | ||
+ | SMKB - Кошерный завтрак | ||
+ | SMKL - Кошерный ланч | ||
+ | SMKD - Кошерный обед | ||
+ | LPML - Малобелковое питание | ||
+ | LCML - Низкокалорийное питание | ||
+ | LFML - Низкохолестериновое питание | ||
+ | PRML - Низкопуриновое питание | ||
+ | LSML - Малосоленое питание | ||
+ | MOML - Мюсли | ||
+ | NLML - Безмолочные продукты | ||
+ | ORML - Восточная кухня | ||
+ | RVML - Сырые овощи | ||
+ | SFML - Морепродукты | ||
+ | SPML - Особое питание | ||
+ | VLML - Вегетарианское, молоко и яйца | ||
+ | VGML - Строго вегетарианское питание | ||
+ | VJML - Джайнизское вегетарианское | ||
+ | VOML - Восточное вегетарианское питание--> | ||
+ | <Meal></Meal> | ||
+ | <!--Персональные данные, обязательный--> | ||
+ | <!--@DateOfBirth - дата рождения в формате yyyy-mm-dd (например 2000-12-31), обязательный--> | ||
+ | <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@Gender - пол пассажира, обязательный, возможные значения: | ||
+ | M - мужской(Male) | ||
+ | F - женский(Female)--> | ||
+ | <PersonalInfo DateOfBirth="1975-05-15" Nationality="RU" Gender="M"> | ||
+ | <!--Имя пассажира, обязательный--> | ||
+ | <FirstName>Ivan</FirstName> | ||
+ | <!--Фамилия пассажира, обязательный--> | ||
+ | <LastName>Ivanov</LastName> | ||
+ | <!--Отчество пассажира, обязательный--> | ||
+ | <MiddleName></MiddleName> | ||
+ | </PersonalInfo> | ||
+ | <!--Карточка часто летающего пассажира, необязательный --> | ||
+ | <!--@OpCode - код авиакомпании, обязательный--> | ||
+ | <!--@Number - номер карточки, обязательный--> | ||
+ | <LoyaltyCard OpCode="" Number=""/> | ||
+ | <!--Контактная информация, необязательный--> | ||
+ | <ContactInfo> | ||
+ | <!--Контактный email, необязательный--> | ||
+ | <EmailID></EmailID> | ||
+ | <!--Контактный телефон, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | </ContactInfo> | ||
+ | <!--Паспортные данные, обязательный--> | ||
+ | <!--@DocType - тип документа, обязательный, возможные значения: | ||
+ | Р - Паспорт | ||
+ | A – Паспорт иностранца | ||
+ | С - Внутренний гражданский паспорт | ||
+ | F – Документ заменяющий паспорт | ||
+ | М - Воинское удостоверение | ||
+ | N – Сертификат натурализации(специфичный документ США) | ||
+ | T – Док.повторного въезда, паспорт беженца | ||
+ | V – Документ для пересечения границы--> | ||
+ | <!--@DocNum - номер документа, обязательный--> | ||
+ | <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@DocElapsedTime - Срок истечения срока действия паспорта в yyyy-mm-dd (например 2000-12-31), обязательный--> | ||
+ | <DocumentInfo DocType="P" DocNum="1234123456" CountryCode="RU" DocElapsedTime="2025-06-15"/> | ||
+ | <!--информация о визе, необязательная.(Заполняется через SSR DOCO) | ||
+ | @Num - номер визы, обязательный | ||
+ | @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный | ||
+ | @IssueCountry - страна выдачи визы, обязательный | ||
+ | @IssuePlace - место выдачи визы, обязательный | ||
+ | @BirthCountry - страна рождения(IATA код страны), необязательный | ||
+ | @BirthCity - город рождения(название), необязательный | ||
+ | --> | ||
+ | <VisaInfo Num="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity="" IssueDate=""/> | ||
+ | <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) | ||
+ | Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется | ||
+ | при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. | ||
+ | @CountryCode - Код страны. Обязательный | ||
+ | @State - Штат или область въезда. Обязательный | ||
+ | @PostalCode - Почтовый код. Обязательный | ||
+ | @City - Город. Обязательный | ||
+ | @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный | ||
+ | --> | ||
+ | <ArrAddress City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> | ||
+ | <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> | ||
+ | <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> | ||
+ | <!--@Location - положение места в ряде, необязательный, возможные значения: | ||
+ | W - у окна (Window) | ||
+ | M - где-то в середине ряда (Middle) | ||
+ | NPW - возле прохода (NearPassengerWay) | ||
+ | NS - нет предпочтения (NotSpecified) | ||
+ | --> | ||
+ | <!--@RowNumber - Номер ряда, строка, необязательный--> | ||
+ | <!--@PlaceNumber - Номер места, строка, необязательный--> | ||
+ | <!--@SegNumber - Номер сегмента, строка, обязательный--> | ||
+ | <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> | ||
+ | <!--Список форматов строк паспортных данных, необязательный--> | ||
+ | <DocStringFormats> | ||
+ | <!--Формат паспортной строки, обязательный, возможные значения: | ||
+ | DOCS - строка формата DOCS, | ||
+ | FOID - строка формата FOID--> | ||
+ | <DocStringFormat></DocStringFormat> | ||
+ | </DocStringFormats> | ||
+ | </Traveller> | ||
+ | </Travellers> | ||
+ | <!--Номер очереди, в которую необходимо поместить бронирование. Строка, необязательный--> | ||
+ | <QueueNum></QueueNum> | ||
+ | </BookFlight> | ||
+ | </Request> | ||
+ | <!--Авторизация, обязательный--> | ||
+ | <!--@ClientId, идентификатор клиента, обязательный--> | ||
+ | <!--@APIKey, API ключ клиента, обязательный--> | ||
+ | <!--@Language, код языка, обязательный--> | ||
+ | <!--@Currency код валюты, обязательный--> | ||
+ | <Source> | ||
+ | <ClientId>102</ClientId> | ||
+ | <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> | ||
+ | <Language>RU</Language> | ||
+ | <Currency>RUB</Currency> | ||
+ | </Source></pre> | ||
+ | |||
+ | '''RESPONSE''' | ||
+ | <div><pre> | ||
+ | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||
+ | <SOAP-ENV:Body> | ||
+ | <ns1:BookFlightResponse> | ||
+ | <ResponseBin> | ||
+ | <Response> | ||
+ | <!--Ответ, обязательный--> | ||
+ | <!--@ID - Ид брони в системе немо, целое число, обязательный--> | ||
+ | <!--@Status - Индикатор состояния брони, обязательный, возможные значения: | ||
+ | booked - забронировано, | ||
+ | canceled - бронь отменена, | ||
+ | ticket - выписана | ||
+ | UNDEFINED - статус не определён | ||
+ | --> | ||
+ | <!--@Code - Код брони в системе бронирования/поиска (sabre, sirena и т.д.), строка, обязательный--> | ||
+ | <BookFlight ID="21282" Status="booked" Code="QSSRL0"> | ||
+ | <!--Положение брони в очереди, необязательный--> | ||
+ | <!--@Number - номер брони в очереди, обязательный--> | ||
+ | <QueryPlace xsi:nil="true"/> | ||
+ | <!--@FlightId ид перелёта в системе Немо, обязательный--> | ||
+ | <Flight FlightId="535464"> | ||
+ | <!--Веб-сервис из которого получен перелёт, обязательный--> | ||
+ | <WebService>GALILEO</WebService> | ||
+ | <!--Код авиакомпании - валидирующего перевозчика, IATA, обязательный--> | ||
+ | <ValCompany>S7</ValCompany> | ||
+ | <URL>http%3A%2F%2Flocalhost%2F%3Fgo%3Dbooking%2Finfo%26uid%3D26664%26flight%3D535464</URL> | ||
+ | <Segments> | ||
+ | <!--SegNum - Номер сегмента в перелёте, обязательный--> | ||
+ | <Segment SegNum="1"> | ||
+ | <!--Аэропорт отправления. Обязательный--> | ||
+ | <DepAirp CodeType="IATA">DME</DepAirp> | ||
+ | <!--Терминал пункта отправления, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> | ||
+ | <DepTerminal xsi:nil="true"/> | ||
+ | <!--Аэропорт прибытия. Обязательный--> | ||
+ | <ArrAirp CodeType="IATA">LED</ArrAirp> | ||
+ | <!--Терминал пункта прибытия, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> | ||
+ | <ArrTerminal>1</ArrTerminal> | ||
+ | <!--Авиакомпания перевозчик. Обязательный--> | ||
+ | <OpAirline>S7</OpAirline> | ||
+ | <!--Авиакомпания, продающая перелёт. Обязательный--> | ||
+ | <MarkAirline>S7</MarkAirline> | ||
+ | <!--Номер рейса. Обязательный--> | ||
+ | <FlightNumber>39</FlightNumber> | ||
+ | <!--Тип воздушного судна, код. Обязательный--> | ||
+ | <AircraftType>320</AircraftType> | ||
+ | <!--Дата и время отправления, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> | ||
+ | <DepDateTime>2011-06-15T12:15:00</DepDateTime> | ||
+ | <!--Дата и время прибытия, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> | ||
+ | <ArrDateTime>2011-06-15T13:45:00</ArrDateTime> | ||
+ | <!--Количество остановок. Обязательный--> | ||
+ | <StopNum>0</StopNum> | ||
+ | <!--Код класса бронирования. Обязательный--> | ||
+ | <BookingCodes> | ||
+ | <BookingCode>O</BookingCode> | ||
+ | </BookingCodes> | ||
+ | <!--Время перелёта, в минутах. Обязательный--> | ||
+ | <FlightTime>90</FlightTime> | ||
+ | <!--Временные зоны точки отправления и прибытия. Необязательный--> | ||
+ | <!--@departure временная зона аэропорта отправления, обязательный--> | ||
+ | <!--@arrival - временная зона аэропорта прибытия, обязательный--> | ||
+ | <TimeZone xsi:nil="true"/> | ||
+ | <!--Признак электронного билета. Значения: true или false. Обязательный--> | ||
+ | <ETicket>true</ETicket> | ||
+ | </Segment> | ||
+ | </Segments> | ||
+ | <!--информация о стоимости, может встречаться более 1 раза, обязательный--> | ||
+ | <!--@Refundable возвратный/невозвратный, true/false. Если пустое, то не известно, необязательный--> | ||
+ | <PricingInfo Refundable="true"> | ||
+ | <!--Типы пассажиров с ценами, таксами и тп, может встречаться более 1 раза, необязательный--> | ||
+ | <!--@Type тип пассажира, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом, обязательный--> | ||
+ | <!--@Quantity Количество пассажиров данного типа, обязательный--> | ||
+ | <PassengerFare Type="ADT" Quantity="1"> | ||
+ | <!--Базовая стоимость, в базовой валюте, обязательный--> | ||
+ | <!--@Currency код валюты, @Amount значение цены, обязательный--> | ||
+ | <BaseFare Currency="RUB" Amount="3300"/> | ||
+ | <!--Базовая стоимость, в эквивалентной валюте(валюте продажи), обязательный--> | ||
+ | <!--@Currency код валюты, @Amount значение цены, обязательный--> | ||
+ | <EquiveFare Currency="RUB" Amount="3300"/> | ||
+ | <!--Суммарная стоимость в эквивалентной валюте, необязательный--> | ||
+ | <!--@Currency код валюты, @Amount значение цены, обязательный--> | ||
+ | <TotalFare Currency="RUB" Amount="3710"/> | ||
+ | <!--Массив такс, необязательный--> | ||
+ | <Taxes> | ||
+ | <!--Одна такса, обязательный--> | ||
+ | <!--@CurCode код валюты, обязательный--> | ||
+ | <!--@TaxCode код таксы, обязательный--> | ||
+ | <!--@Amount сумма таксы, обязательный--> | ||
+ | <Tax CurCode="RUB" TaxCode="RU" Amount="41"/> | ||
+ | <Tax CurCode="RUB" TaxCode="YQ" Amount="369"/> | ||
+ | </Taxes> | ||
+ | <!--Массив тарифов, необязательный--> | ||
+ | <Tariffs> | ||
+ | <!--Тариф, обязательный--> | ||
+ | <!--@Code код тарифа, обязательный--> | ||
+ | <!--@SegNum номер сегмента, к которому применён тариф, обязательный--> | ||
+ | <Tariff Code="OPOOW" SegNum="1"/> | ||
+ | </Tariffs> | ||
+ | <!--Строка расчёта цены, необязательный--> | ||
+ | <FareCalc xsi:nil="true"/> | ||
+ | <!--Дата и время таймлимита по выписке в формате ГГГГ-MM-DDTЧЧ:ММ:СС, обязательный--> | ||
+ | <LastTicketDateTime>2011-05-27T23:59:00</LastTicketDateTime> | ||
+ | </PassengerFare> | ||
+ | </PricingInfo> | ||
+ | <!--Комиссии, обязательный--> | ||
+ | <!--@Currency, код валюты, обязательный--> | ||
+ | <Commission Currency="RUB">382.2</Commission> | ||
+ | <!--Сборы, обязательный--> | ||
+ | <!--@Currency, код валюты, обязательный--> | ||
+ | <Charges Currency="RUB">112</Charges> | ||
+ | </Flight> | ||
+ | <!--Информация об агенстве, обязательный--> | ||
+ | <!--@Name - название агентства, обязательный--> | ||
+ | <Agency Name=""> | ||
+ | <!--Телефон агентсва, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий, | ||
+ | A - агенство--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | <!--Адресс агенства. Обязательный.--> | ||
+ | <Address> | ||
+ | <!--Город. Обязательный.--> | ||
+ | <City></City> | ||
+ | <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> | ||
+ | <StreetAddress></StreetAddress> | ||
+ | <!--Почтовый индекс. Необязательный.--> | ||
+ | <PostalCode></PostalCode> | ||
+ | <!--Код страны (RU, UA и т.п.). Необязательный.--> | ||
+ | <CountryCode></CountryCode> | ||
+ | </Address> | ||
+ | </Agency> | ||
+ | <!--Маршрут квитанция, необязательный--> | ||
+ | <!--@Encoding - кодировка, обязательный--> | ||
+ | <!--@Format - формат, обязательный--> | ||
+ | <ItinReceipts Encoding="" Format=""> | ||
+ | <FareStored xsi:nil="true"/> | ||
+ | <!--Список пассажиров, обязательный--> | ||
+ | <Travellers> | ||
+ | <!--@Type тип пассажира, обязательный, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом--> | ||
+ | <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, | ||
+ | контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> | ||
+ | <!--@Num - порядковый номер пассажира , начинается с 1, обязательный--> | ||
+ | <!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> | ||
+ | <Traveller Type="ADT" IsContact="true" Num="1"> | ||
+ | <!--Тип питания, обязательный, возможные значения: | ||
+ | UNDEFINED - неизвестно | ||
+ | N - Нет питания | ||
+ | P - Алкогольные напитки в продаже | ||
+ | B - Завтрак | ||
+ | O - Холодная еда | ||
+ | C - Бесплатные алкогольные напитки | ||
+ | K - Континтальный завтрак | ||
+ | D - Обед | ||
+ | F - Еда в продаже | ||
+ | G - Еда/напитки в продаже | ||
+ | H - Горячая еда | ||
+ | L - Ланч | ||
+ | M - Еда | ||
+ | R - Освежающие еда/напитки бесплатно | ||
+ | V - Освежающие еда/напитки за отдельную плату | ||
+ | S - Закуска | ||
+ | --> | ||
+ | <Meal xsi:nil="true"/> | ||
+ | <!--Билет, необязательный--> | ||
+ | <!--@TickectNum - номер билета, обязательный--> | ||
+ | <Ticket TickectNum="" /> | ||
+ | <Seats> | ||
+ | <!--Место пассажира в самолёте, обязательный--> | ||
+ | <!--@Number - номер места, обязательный--> | ||
+ | <!--@Characteristic - Характеристика места в соответствии со стандартом EDIFACT, необязательный--> | ||
+ | <!--@SmokingPreference - статус курения на этом месте, если Y - место для курящих, если N - место для некурящих, необязательный--> | ||
+ | <!--@SegmentNumber - номер сегмента в перелёте, обязательный--> | ||
+ | <Seat Number="" Characteristic="" SmokingPreference="" SegmentNumber=""/> | ||
+ | </Seats> | ||
+ | <!--Персональные данные, обязательный--> | ||
+ | <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> | ||
+ | <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@Gender - пол пассажира, обязательный, возможные значения: | ||
+ | M - мужской(Male) | ||
+ | F - женский(Female)--> | ||
+ | <PersonalInfo DateOfBirth="15.05.1975" Nationality="RU" Gender="M"> | ||
+ | <!--Имя пассажира, обязательный--> | ||
+ | <FirstName>HKSFG</FirstName> | ||
+ | <!--Фамилия пассажира, обязательный--> | ||
+ | <LastName>DFGDG</LastName> | ||
+ | <!--Отчество пассажира, обязательный--> | ||
+ | <MiddleName>SHHHHHHH</MiddleName> | ||
+ | </PersonalInfo> | ||
+ | <!--Карточка часто летающего пассажира, необязательный --> | ||
+ | <!--@OpCode - код авиакомпании, обязательный--> | ||
+ | <!--@Number - номер карточки, обязательный --> | ||
+ | <LoyaltyCard OpCode="" Number=""/> | ||
+ | <ContactInfo> | ||
+ | <!--Контактный email, необязательный--> | ||
+ | <EmailID></EmailID> | ||
+ | <!--Контактный телефон, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | </ContactInfo> | ||
+ | <!--Паспортные данные, обязательный--> | ||
+ | <!--@DocType - тип документа, обязательный, возможные значения: | ||
+ | Р - Паспорт | ||
+ | A – Паспорт иностранца | ||
+ | С - Внутренний гражданский паспорт | ||
+ | F – Документ заменяющий паспорт | ||
+ | М - Воинское удостоверение | ||
+ | N – Сертификат натурализации(специфичный документ США) | ||
+ | T – Док.повторного въезда, паспорт беженца | ||
+ | V – Документ для пересечения границы--> | ||
+ | <!--@DocNum - номер документа, обязательный--> | ||
+ | <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> | ||
+ | <DocumentInfo DocType="P" DocNum="1234123456" CountryCode="RU" DocElapsedTime="15.06.2025"/> | ||
+ | <!--информация о визе, необязательная.(Заполняется через SSR DOCO) | ||
+ | @Num - номер визы, обязательный | ||
+ | @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный | ||
+ | @IssueCountry - страна выдачи визы, обязательный | ||
+ | @IssuePlace - место выдачи визы, обязательный | ||
+ | @BirthCountry - страна рождения(IATA код страны), необязательный | ||
+ | @BirthCity - город рождения(название), необязательный | ||
+ | --> | ||
+ | <VisaInfo Num="" IssueDate="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity=""/> | ||
+ | <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) | ||
+ | Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется | ||
+ | при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. | ||
+ | @CountryCode - Код страны. Обязательный | ||
+ | @State - Штат или область въезда. Обязательный | ||
+ | @PostalCode - Почтовый код. Обязательный | ||
+ | @City - Город. Обязательный | ||
+ | @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный | ||
+ | --> | ||
+ | <ArrAddress CountryCode="" State="" PostalCode="" City="" StreetAddress=""/> | ||
+ | <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> | ||
+ | <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> | ||
+ | <!--@Location - положение места в ряде, необязательный, возможные значения: | ||
+ | W - у окна (Window) | ||
+ | M - где-то в середине ряда (Middle) | ||
+ | NPW - возле прохода (NearPassengerWay) | ||
+ | NS - нет предпочтения (NotSpecified) | ||
+ | --> | ||
+ | <!--@RowNumber - Номер ряда, строка, необязательный--> | ||
+ | <!--@PlaceNumber - Номер места, строка, необязательный--> | ||
+ | <!--@SegNumber - Номер сегмента, строка, обязательный--> | ||
+ | <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> | ||
+ | <DocStringFormats> | ||
+ | <!--Формат паспортной строки, обязательный, возможные значения: | ||
+ | DOCS - строка формата DOCS, | ||
+ | FOID - строка формата FOID--> | ||
+ | <DocStringFormat></DocStringFormat> | ||
+ | </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></pre></div> | ||
+ | |||
+ | == Перелет Москва - Санкт-петербург: == | ||
+ | |||
+ | '''REQUEST''' | ||
+ | <pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight"> | ||
+ | <soapenv:Header/> | ||
+ | <soapenv:Body> | ||
+ | <ver:BookFlight> | ||
+ | <RequestBin> | ||
+ | <Request> | ||
+ | <BookFlight> | ||
+ | <!--@FlightId ид перелёта в системе Немо, обязательный--> | ||
+ | <FlightId>534339</FlightId> | ||
+ | <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> | ||
+ | <ValidatingCompany>SU</ValidatingCompany> | ||
+ | <!--Код класс перелёта, один для каждого сегмента в перелёте, необязательный--> | ||
+ | <BookingCodes> | ||
+ | <!--@Code - код класса перелёта, обязательный--> | ||
+ | <!--@SegNumber - номер сегмента в перелёте (начинаются с 1), обязательный--> | ||
+ | <BookingCode Code="Q" SegNumber="1"/> | ||
+ | </BookingCodes> | ||
+ | <!--Код валюты, необязательный--> | ||
+ | <CurrencyCode>RUB</CurrencyCode> | ||
+ | <!--Оплатить не позже, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС, необязательный--> | ||
+ | <TicketTimeLimit>2011-06-20 00:00:00</TicketTimeLimit> | ||
+ | <!--Информация об агенстве, обязательный--> | ||
+ | <!--@Name - название агентства, обязательный--> | ||
+ | <Agency Name=""> | ||
+ | <!--Телефон агентсва, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий, | ||
+ | A - агенство--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | <!--Адресс агенства. Обязательный.--> | ||
+ | <!--@ City - Город. Обязательный.--> | ||
+ | <!--@StreetAddress - Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> | ||
+ | <!--@PostalCode - Почтовый индекс. Необязательный.--> | ||
+ | <!--@CountryCode - Код страны (RU, UA и т.п.). Необязательный.--> | ||
+ | <Address City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> | ||
+ | </Agency> | ||
+ | <!--Список пассажиров, обязательный--> | ||
+ | <Travellers> | ||
+ | <Travellers> | ||
+ | <!--Информация о пассажире, обязательный--> | ||
+ | <!--@Type - тип пассажира, обязательный, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом--> | ||
+ | <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, | ||
+ | контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> | ||
+ | <!--@Num - порядковый номер пассажира, начинается с 1, обязательный--> | ||
+ | <!--@TravellerId - id пользователя в БД, необязательный--> | ||
+ | <Traveller Type="ADT" IsContact="true" Num="1" TravellerId="32738"/> | ||
+ | <!--Код типа питания, необязательный, возможные значения: | ||
+ | NONE - отсутствует | ||
+ | AVML - Азиатская вегетарианская кухня | ||
+ | BLML - Блюда щадящей диеты | ||
+ | CHML - Детское питание | ||
+ | CHPC - Детский холодный завтрак | ||
+ | СНСС - Детский горячий завтрак | ||
+ | CHHC - Детский ланч, ветчина и сыр | ||
+ | PBJS - Детский ланч, ореховое масло | ||
+ | CHMC - Детский обед макароны с сыром | ||
+ | DBML - Диабетическое питание | ||
+ | FPML - Фрукты | ||
+ | GFML - Питание без клейковины | ||
+ | HFML - Питание богатое клетчаткой | ||
+ | HNML - Индусская кухня | ||
+ | BBML - Питание для младенцев | ||
+ | KSML - Кошерная кухня | ||
+ | SMKB - Кошерный завтрак | ||
+ | SMKL - Кошерный ланч | ||
+ | SMKD - Кошерный обед | ||
+ | LPML - Малобелковое питание | ||
+ | LCML - Низкокалорийное питание | ||
+ | LFML - Низкохолестериновое питание | ||
+ | PRML - Низкопуриновое питание | ||
+ | LSML - Малосоленое питание | ||
+ | MOML - Мюсли | ||
+ | NLML - Безмолочные продукты | ||
+ | ORML - Восточная кухня | ||
+ | RVML - Сырые овощи | ||
+ | SFML - Морепродукты | ||
+ | SPML - Особое питание | ||
+ | VLML - Вегетарианское, молоко и яйца | ||
+ | VGML - Строго вегетарианское питание | ||
+ | VJML - Джайнизское вегетарианское | ||
+ | VOML - Восточное вегетарианское питание--> | ||
+ | <Meal></Meal> | ||
+ | <!--Персональные данные, обязательный--> | ||
+ | <!--@DateOfBirth - дата рождения в формате yyyy-mm-dd (например 2000-12-31), обязательный--> | ||
+ | <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@Gender - пол пассажира, обязательный, возможные значения: | ||
+ | M - мужской(Male) | ||
+ | F - женский(Female)--> | ||
+ | <PersonalInfo DateOfBirth="1975-05-15" Nationality="RU" Gender="M"> | ||
+ | <!--Имя пассажира, обязательный--> | ||
+ | <FirstName>Ivan</FirstName> | ||
+ | <!--Фамилия пассажира, обязательный--> | ||
+ | <LastName>Ivanov</LastName> | ||
+ | <!--Отчество пассажира, обязательный--> | ||
+ | <MiddleName></MiddleName> | ||
+ | </PersonalInfo> | ||
+ | <!--Карточка часто летающего пассажира, необязательный --> | ||
+ | <!--@OpCode - код авиакомпании, обязательный--> | ||
+ | <!--@Number - номер карточки, обязательный--> | ||
+ | <LoyaltyCard OpCode="" Number=""/> | ||
+ | <!--Контактная информация, необязательный--> | ||
+ | <ContactInfo> | ||
+ | <!--Контактный email, необязательный--> | ||
+ | <EmailID></EmailID> | ||
+ | <!--Контактный телефон, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | </ContactInfo> | ||
+ | <!--Паспортные данные, обязательный--> | ||
+ | <!--@DocType - тип документа, обязательный, возможные значения: | ||
+ | Р - Паспорт | ||
+ | A – Паспорт иностранца | ||
+ | С - Внутренний гражданский паспорт | ||
+ | F – Документ заменяющий паспорт | ||
+ | М - Воинское удостоверение | ||
+ | N – Сертификат натурализации(специфичный документ США) | ||
+ | T – Док.повторного въезда, паспорт беженца | ||
+ | V – Документ для пересечения границы--> | ||
+ | <!--@DocNum - номер документа, обязательный--> | ||
+ | <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@DocElapsedTime - Срок истечения срока действия паспорта в yyyy-mm-dd (например 2000-12-31), обязательный--> | ||
+ | <DocumentInfo DocType="P" DocNum="1234123456" CountryCode="RU" DocElapsedTime="2025-06-15"/> | ||
+ | <!--информация о визе, необязательная.(Заполняется через SSR DOCO) | ||
+ | @Num - номер визы, обязательный | ||
+ | @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный | ||
+ | @IssueCountry - страна выдачи визы, обязательный | ||
+ | @IssuePlace - место выдачи визы, обязательный | ||
+ | @BirthCountry - страна рождения(IATA код страны), необязательный | ||
+ | @BirthCity - город рождения(название), необязательный | ||
+ | --> | ||
+ | <VisaInfo Num="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity="" IssueDate=""/> | ||
+ | <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) | ||
+ | Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется | ||
+ | при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. | ||
+ | @CountryCode - Код страны. Обязательный | ||
+ | @State - Штат или область въезда. Обязательный | ||
+ | @PostalCode - Почтовый код. Обязательный | ||
+ | @City - Город. Обязательный | ||
+ | @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный | ||
+ | --> | ||
+ | <ArrAddress City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> | ||
+ | <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> | ||
+ | <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> | ||
+ | <!--@Location - положение места в ряде, необязательный, возможные значения: | ||
+ | W - у окна (Window) | ||
+ | M - где-то в середине ряда (Middle) | ||
+ | NPW - возле прохода (NearPassengerWay) | ||
+ | NS - нет предпочтения (NotSpecified) | ||
+ | --> | ||
+ | <!--@RowNumber - Номер ряда, строка, необязательный--> | ||
+ | <!--@PlaceNumber - Номер места, строка, необязательный--> | ||
+ | <!--@SegNumber - Номер сегмента, строка, обязательный--> | ||
+ | <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> | ||
+ | <!--Список форматов строк паспортных данных, необязательный--> | ||
+ | <DocStringFormats> | ||
+ | <!--Формат паспортной строки, обязательный, возможные значения: | ||
+ | DOCS - строка формата DOCS, | ||
+ | FOID - строка формата FOID--> | ||
+ | <DocStringFormat></DocStringFormat> | ||
+ | </DocStringFormats> | ||
+ | </Traveller> | ||
+ | </Travellers> | ||
+ | <!--Номер очереди, в которую необходимо поместить бронирование. Строка, необязательный--> | ||
+ | <QueueNum></QueueNum> | ||
+ | </BookFlight> | ||
+ | </Request> | ||
+ | <!--Авторизация, обязательный--> | ||
+ | <!--@ClientId, идентификатор клиента, обязательный--> | ||
+ | <!--@APIKey, API ключ клиента, обязательный--> | ||
+ | <!--@Language, код языка, обязательный--> | ||
+ | <!--@Currency код валюты, обязательный--> | ||
+ | <Source> | ||
+ | <ClientId>102</ClientId> | ||
+ | <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> | ||
+ | <Language>RU</Language> | ||
+ | <Currency>RUB</Currency> | ||
+ | </Source> | ||
+ | </RequestBin> | ||
+ | </ver:BookFlight> | ||
+ | </soapenv:Body> | ||
+ | </soapenv:Envelope></pre> | ||
+ | |||
+ | |||
+ | '''RESPONSE''' | ||
+ | |||
+ | <pre><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | ||
+ | <SOAP-ENV:Body> | ||
+ | <ns1:BookFlightResponse> | ||
+ | <ResponseBin> | ||
+ | <Response> | ||
+ | <!--Ответ, обязательный--> | ||
+ | <!--@ID - Ид брони в системе немо, целое число, обязательный--> | ||
+ | <!--@Status - Индикатор состояния брони, обязательный, возможные значения: | ||
+ | booked - забронировано, | ||
+ | canceled - бронь отменена, | ||
+ | ticket - выписана | ||
+ | UNDEFINED - статус не определён | ||
+ | --> | ||
+ | <!--@Code - Код брони в системе бронирования/поиска (sabre, sirena и т.д.), строка, обязательный--> | ||
+ | <BookFlight ID="21282" Status="booked" Code="QSSRL0"> | ||
+ | <!--Положение брони в очереди, необязательный--> | ||
+ | <!--@Number - номер брони в очереди, обязательный--> | ||
+ | <QueryPlace xsi:nil="true"/> | ||
+ | <!--@FlightId ид перелёта в системе Немо, обязательный--> | ||
+ | <Flight FlightId="535464"> | ||
+ | <!--Веб-сервис из которого получен перелёт, обязательный--> | ||
+ | <WebService>GALILEO</WebService> | ||
+ | <!--Код авиакомпании - валидирующего перевозчика, IATA, обязательный--> | ||
+ | <ValCompany>S7</ValCompany> | ||
+ | <URL>http%3A%2F%2Flocalhost%2F%3Fgo%3Dbooking%2Finfo%26uid%3D26664%26flight%3D535464</URL> | ||
+ | <Segments> | ||
+ | <!--SegNum - Номер сегмента в перелёте, обязательный--> | ||
+ | <Segment SegNum="1"> | ||
+ | <!--Аэропорт отправления. Обязательный--> | ||
+ | <DepAirp CodeType="IATA">DME</DepAirp> | ||
+ | <!--Терминал пункта отправления, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> | ||
+ | <DepTerminal xsi:nil="true"/> | ||
+ | <!--Аэропорт прибытия. Обязательный--> | ||
+ | <ArrAirp CodeType="IATA">LED</ArrAirp> | ||
+ | <!--Терминал пункта прибытия, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> | ||
+ | <ArrTerminal>1</ArrTerminal> | ||
+ | <!--Авиакомпания перевозчик. Обязательный--> | ||
+ | <OpAirline>S7</OpAirline> | ||
+ | <!--Авиакомпания, продающая перелёт. Обязательный--> | ||
+ | <MarkAirline>S7</MarkAirline> | ||
+ | <!--Номер рейса. Обязательный--> | ||
+ | <FlightNumber>39</FlightNumber> | ||
+ | <!--Тип воздушного судна, код. Обязательный--> | ||
+ | <AircraftType>320</AircraftType> | ||
+ | <!--Дата и время отправления, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> | ||
+ | <DepDateTime>2011-06-15T12:15:00</DepDateTime> | ||
+ | <!--Дата и время прибытия, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> | ||
+ | <ArrDateTime>2011-06-15T13:45:00</ArrDateTime> | ||
+ | <!--Количество остановок. Обязательный--> | ||
+ | <StopNum>0</StopNum> | ||
+ | <!--Код класса бронирования. Обязательный--> | ||
+ | <BookingCodes> | ||
+ | <BookingCode>O</BookingCode> | ||
+ | </BookingCodes> | ||
+ | <!--Время перелёта, в минутах. Обязательный--> | ||
+ | <FlightTime>90</FlightTime> | ||
+ | <!--Временные зоны точки отправления и прибытия. Необязательный--> | ||
+ | <!--@departure временная зона аэропорта отправления, обязательный--> | ||
+ | <!--@arrival - временная зона аэропорта прибытия, обязательный--> | ||
+ | <TimeZone xsi:nil="true"/> | ||
+ | <!--Признак электронного билета. Значения: true или false. Обязательный--> | ||
+ | <ETicket>true</ETicket> | ||
+ | </Segment> | ||
+ | </Segments> | ||
+ | <!--информация о стоимости, может встречаться более 1 раза, обязательный--> | ||
+ | <!--@Refundable возвратный/невозвратный, true/false. Если пустое, то не известно, необязательный--> | ||
+ | <PricingInfo Refundable="true"> | ||
+ | <!--Типы пассажиров с ценами, таксами и тп, может встречаться более 1 раза, необязательный--> | ||
+ | <!--@Type тип пассажира, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом, обязательный--> | ||
+ | <!--@Quantity Количество пассажиров данного типа, обязательный--> | ||
+ | <PassengerFare Type="ADT" Quantity="1"> | ||
+ | <!--Базовая стоимость, в базовой валюте, обязательный--> | ||
+ | <!--@Currency код валюты, @Amount значение цены, обязательный--> | ||
+ | <BaseFare Currency="RUB" Amount="3300"/> | ||
+ | <!--Базовая стоимость, в эквивалентной валюте(валюте продажи), обязательный--> | ||
+ | <!--@Currency код валюты, @Amount значение цены, обязательный--> | ||
+ | <EquiveFare Currency="RUB" Amount="3300"/> | ||
+ | <!--Суммарная стоимость в эквивалентной валюте, необязательный--> | ||
+ | <!--@Currency код валюты, @Amount значение цены, обязательный--> | ||
+ | <TotalFare Currency="RUB" Amount="3710"/> | ||
+ | <!--Массив такс, необязательный--> | ||
+ | <Taxes> | ||
+ | <!--Одна такса, обязательный--> | ||
+ | <!--@CurCode код валюты, обязательный--> | ||
+ | <!--@TaxCode код таксы, обязательный--> | ||
+ | <!--@Amount сумма таксы, обязательный--> | ||
+ | <Tax CurCode="RUB" TaxCode="RU" Amount="41"/> | ||
+ | <Tax CurCode="RUB" TaxCode="YQ" Amount="369"/> | ||
+ | </Taxes> | ||
+ | <!--Массив тарифов, необязательный--> | ||
+ | <Tariffs> | ||
+ | <!--Тариф, обязательный--> | ||
+ | <!--@Code код тарифа, обязательный--> | ||
+ | <!--@SegNum номер сегмента, к которому применён тариф, обязательный--> | ||
+ | <Tariff Code="OPOOW" SegNum="1"/> | ||
+ | </Tariffs> | ||
+ | <!--Строка расчёта цены, необязательный--> | ||
+ | <FareCalc xsi:nil="true"/> | ||
+ | <!--Дата и время таймлимита по выписке в формате ГГГГ-MM-DDTЧЧ:ММ:СС, обязательный--> | ||
+ | <LastTicketDateTime>2011-05-27T23:59:00</LastTicketDateTime> | ||
+ | </PassengerFare> | ||
+ | </PricingInfo> | ||
+ | <!--Комиссии, обязательный--> | ||
+ | <!--@Currency, код валюты, обязательный--> | ||
+ | <Commission Currency="RUB">382.2</Commission> | ||
+ | <!--Сборы, обязательный--> | ||
+ | <!--@Currency, код валюты, обязательный--> | ||
+ | <Charges Currency="RUB">112</Charges> | ||
+ | </Flight> | ||
+ | <!--Информация об агенстве, обязательный--> | ||
+ | <!--@Name - название агентства, обязательный--> | ||
+ | <Agency Name=""> | ||
+ | <!--Телефон агентсва, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий, | ||
+ | A - агенство--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | <!--Адресс агенства. Обязательный.--> | ||
+ | <Address> | ||
+ | <!--Город. Обязательный.--> | ||
+ | <City></City> | ||
+ | <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> | ||
+ | <StreetAddress></StreetAddress> | ||
+ | <!--Почтовый индекс. Необязательный.--> | ||
+ | <PostalCode></PostalCode> | ||
+ | <!--Код страны (RU, UA и т.п.). Необязательный.--> | ||
+ | <CountryCode></CountryCode> | ||
+ | </Address> | ||
+ | </Agency> | ||
+ | <!--Маршрут квитанция, необязательный--> | ||
+ | <!--@Encoding - кодировка, обязательный--> | ||
+ | <!--@Format - формат, обязательный--> | ||
+ | <ItinReceipts Encoding="" Format=""> | ||
+ | <FareStored xsi:nil="true"/> | ||
+ | <!--Список пассажиров, обязательный--> | ||
+ | <Travellers> | ||
+ | <!--@Type тип пассажира, обязательный, возможные значения: | ||
+ | ADT - взрослые, | ||
+ | CNN - дети со взрослыми, | ||
+ | UNN - дети без сопровождения взрослых, | ||
+ | INF - младенцы, | ||
+ | INS - младенцы с местом--> | ||
+ | <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, | ||
+ | контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> | ||
+ | <!--@Num - порядковый номер пассажира , начинается с 1, обязательный--> | ||
+ | <!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> | ||
+ | <Traveller Type="ADT" IsContact="true" Num="1"> | ||
+ | <!--Тип питания, обязательный, возможные значения: | ||
+ | UNDEFINED - неизвестно | ||
+ | N - Нет питания | ||
+ | P - Алкогольные напитки в продаже | ||
+ | B - Завтрак | ||
+ | O - Холодная еда | ||
+ | C - Бесплатные алкогольные напитки | ||
+ | K - Континтальный завтрак | ||
+ | D - Обед | ||
+ | F - Еда в продаже | ||
+ | G - Еда/напитки в продаже | ||
+ | H - Горячая еда | ||
+ | L - Ланч | ||
+ | M - Еда | ||
+ | R - Освежающие еда/напитки бесплатно | ||
+ | V - Освежающие еда/напитки за отдельную плату | ||
+ | S - Закуска | ||
+ | --> | ||
+ | <Meal xsi:nil="true"/> | ||
+ | <!--Билет, необязательный--> | ||
+ | <!--@TickectNum - номер билета, обязательный--> | ||
+ | <Ticket TickectNum="" /> | ||
+ | <Seats> | ||
+ | <!--Место пассажира в самолёте, обязательный--> | ||
+ | <!--@Number - номер места, обязательный--> | ||
+ | <!--@Characteristic - Характеристика места в соответствии со стандартом EDIFACT, необязательный--> | ||
+ | <!--@SmokingPreference - статус курения на этом месте, если Y - место для курящих, если N - место для некурящих, необязательный--> | ||
+ | <!--@SegmentNumber - номер сегмента в перелёте, обязательный--> | ||
+ | <Seat Number="" Characteristic="" SmokingPreference="" SegmentNumber=""/> | ||
+ | </Seats> | ||
+ | <!--Персональные данные, обязательный--> | ||
+ | <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> | ||
+ | <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@Gender - пол пассажира, обязательный, возможные значения: | ||
+ | M - мужской(Male) | ||
+ | F - женский(Female)--> | ||
+ | <PersonalInfo DateOfBirth="01.05.1981" Nationality="AU" Gender="M"> | ||
+ | <!--Имя пассажира, обязательный--> | ||
+ | <FirstName>ANDREW</FirstName> | ||
+ | <!--Фамилия пассажира, обязательный--> | ||
+ | <LastName>RESH</LastName> | ||
+ | <!--Отчество пассажира, обязательный--> | ||
+ | <MiddleName>SARAT</MiddleName> | ||
+ | </PersonalInfo> | ||
+ | <!--Карточка часто летающего пассажира, необязательный --> | ||
+ | <!--@OpCode - код авиакомпании, обязательный--> | ||
+ | <!--@Number - номер карточки, обязательный --> | ||
+ | <LoyaltyCard OpCode="" Number=""/> | ||
+ | <ContactInfo> | ||
+ | <!--Контактный email, необязательный--> | ||
+ | <EmailID></EmailID> | ||
+ | <!--Контактный телефон, необязательный--> | ||
+ | <!--@Type - тип номера, обязательный, возможные значения: | ||
+ | M - мобильный, | ||
+ | H - домашний, | ||
+ | B - рабочий--> | ||
+ | <Telephone Type=""> | ||
+ | <!--Номер телефона, обязательный--> | ||
+ | <PhoneNumber></PhoneNumber> | ||
+ | <!--Код страны, необязательный--> | ||
+ | <CountryAccessCode></CountryAccessCode> | ||
+ | <!--Код региона/города, необязательный--> | ||
+ | <AreaCityCode></AreaCityCode> | ||
+ | </Telephone> | ||
+ | </ContactInfo> | ||
+ | <!--Паспортные данные, обязательный--> | ||
+ | <!--@DocType - тип документа, обязательный, возможные значения: | ||
+ | Р - Паспорт | ||
+ | A – Паспорт иностранца | ||
+ | С - Внутренний гражданский паспорт | ||
+ | F – Документ заменяющий паспорт | ||
+ | М - Воинское удостоверение | ||
+ | N – Сертификат натурализации(специфичный документ США) | ||
+ | T – Док.повторного въезда, паспорт беженца | ||
+ | V – Документ для пересечения границы--> | ||
+ | <!--@DocNum - номер документа, обязательный--> | ||
+ | <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> | ||
+ | <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> | ||
+ | <DocumentInfo DocType="P" DocNum="3254253345" CountryCode="AU" DocElapsedTime="29.05.2011"/> | ||
+ | <!--информация о визе, необязательная.(Заполняется через SSR DOCO) | ||
+ | @Num - номер визы, обязательный | ||
+ | @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный | ||
+ | @IssueCountry - страна выдачи визы, обязательный | ||
+ | @IssuePlace - место выдачи визы, обязательный | ||
+ | @BirthCountry - страна рождения(IATA код страны), необязательный | ||
+ | @BirthCity - город рождения(название), необязательный | ||
+ | --> | ||
+ | <VisaInfo Num="" IssueDate="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity=""/> | ||
+ | <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) | ||
+ | Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется | ||
+ | при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. | ||
+ | @CountryCode - Код страны. Обязательный | ||
+ | @State - Штат или область въезда. Обязательный | ||
+ | @PostalCode - Почтовый код. Обязательный | ||
+ | @City - Город. Обязательный | ||
+ | @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный | ||
+ | --> | ||
+ | <ArrAddress CountryCode="" State="" PostalCode="" City="" StreetAddress=""/> | ||
+ | <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> | ||
+ | <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> | ||
+ | <!--@Location - положение места в ряде, необязательный, возможные значения: | ||
+ | W - у окна (Window) | ||
+ | M - где-то в середине ряда (Middle) | ||
+ | NPW - возле прохода (NearPassengerWay) | ||
+ | NS - нет предпочтения (NotSpecified) | ||
+ | --> | ||
+ | <!--@RowNumber - Номер ряда, строка, необязательный--> | ||
+ | <!--@PlaceNumber - Номер места, строка, необязательный--> | ||
+ | <!--@SegNumber - Номер сегмента, строка, обязательный--> | ||
+ | <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> | ||
+ | <DocStringFormats> | ||
+ | <!--Формат паспортной строки, обязательный, возможные значения: | ||
+ | DOCS - строка формата DOCS, | ||
+ | FOID - строка формата FOID--> | ||
+ | <DocStringFormat></DocStringFormat> | ||
+ | </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></pre> |
Версия 18:40, 23 января 2012
Запрос на бронирование
Получить доступ к результатам бронирования в данном сервисе можно через SOAP клиента. Для получения результата необходим параметр - «FlightId» - ИД перелёта для которого будет производится бронирование.
Запрос на бронирование выглядит следующим образом:
Request
<!--Запрос, обязательный--> <BookFlight> <!--@FlightId ид перелёта в системе Немо, обязательный--> <FlightId>?</FlightId> <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> <ValidatingCompany>?</ValidatingCompany> <!--Код класс перелёта, один для каждого сегмента в перелёте, необязательный--> <BookingCodes> <!--Код класс перелёта, обязательный--> <!--@Code - код класса перелёта, обязательный--> <!--@SegNumber - номер сегмента в перелёте (начинаются с 1), обязательный--> <BookingCode> <Code>?</Code> <SegNumber>?</SegNumber> </BookingCode> </BookingCodes> <!--Код валюты, необязательный--> <CurrencyCode>?</CurrencyCode> <!--Оплатить не позже, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС, необязательный--> <TicketTimeLimit>?</TicketTimeLimit> <!--Информация об агенстве, обязательный--> <!--@Name - название агентства, обязательный--> <Agency Name="?"> <!--Телефон агентсва, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агенство--> <Telephone Type="?"> <!--Номер телефона, обязательный--> <PhoneNumber>?</PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode>?</CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode>?</AreaCityCode> </Telephone> <!--Адресс агенства. Обязательный.--> <Address> <!--Город. Обязательный.--> <City>?</City> <!--Штат. Необязательный.--> <State>?</State> <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> <StreetAddress>?</StreetAddress> <!--Почтовый индекс. Необязательный.--> <PostalCode>?</PostalCode> <!--Код страны (RU, UA и т.п.). Необязательный.--> <CountryCode>?</CountryCode> </Address> </Agency> <!--Список пассажиров, обязательный--> <Travellers> <!--Информация о пассажире, обязательный--> <!--@Type - тип пассажира, обязательный, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом--> <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> <!--@Num - порядковый номер пассажира, начинается с 1, обязательный--><!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> <Traveller Type="?" IsContact="?" LinkedTo="?" Num="?"> <!--Код типа питания, необязательный, возможные значения: NONE - отсутствует AVML - Азиатская вегетарианская кухня BLML - Блюда щадящей диеты CHML - Детское питание CHPC - Детский холодный завтрак СНСС - Детский горячий завтрак CHHC - Детский ланч, ветчина и сыр PBJS - Детский ланч, ореховое масло CHMC - Детский обед макароны с сыром DBML - Диабетическое питание FPML - Фрукты GFML - Питание без клейковины HFML - Питание богатое клетчаткой HNML - Индусская кухня BBML - Питание для младенцев KSML - Кошерная кухня SMKB - Кошерный завтрак SMKL - Кошерный ланч SMKD - Кошерный обед LPML - Малобелковое питание LCML - Низкокалорийное питание LFML - Низкохолестериновое питание PRML - Низкопуриновое питание LSML - Малосоленое питание MOML - Мюсли NLML - Безмолочные продукты ORML - Восточная кухня RVML - Сырые овощи SFML - Морепродукты SPML - Особое питание VLML - Вегетарианское, молоко и яйца VGML - Строго вегетарианское питание VJML - Джайнизское вегетарианское VOML - Восточное вегетарианское питание--> <Meal>?</Meal> <!--Optional:--> <Ticket TickectNum="?"/> <!--Optional:--> <Seats> <!--Zero or more repetitions:--> <Seat Number="?" Characteristic="?" SmokingPreference="?" SegmentNumber="?"/> </Seats> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> <PersonalInfo DateOfBirth="?" Nationality="?" Gender="?"> <!--Имя пассажира, обязательный--> <FirstName>?</FirstName> <!--Фамилия пассажира, обязательный--> <LastName>?</LastName> <!--Отчество пассажира, необязательный--> <MiddleName>?</MiddleName> </PersonalInfo> <!--Карточка часто летающего пассажира, необязательный --> <!--@OpCode - код авиакомпании, обязательный--> <!--@Number - номер карточки, обязательный--> <LoyaltyCard OpCode="?" Number="?"/> <!--Контактная информация, необязательный--> <ContactInfo> <!--Контактный email, необязательный--> <EmailID>?</EmailID> <!--Контактный телефон, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий--> <Telephone Type="?"> <!--Номер телефона, обязательный--> <PhoneNumber>?</PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode>?</CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode>?</AreaCityCode> </Telephone> </ContactInfo> <!--Паспортные данные, обязательный--> <!--@DocType - тип документа, обязательный, возможные значения: Р - Паспорт A – Паспорт иностранца С - Внутренний гражданский паспорт F – Документ заменяющий паспорт М - Воинское удостоверение N – Сертификат натурализации(специфичный документ США) T – Док.повторного въезда, паспорт беженца V – Документ для пересечения границы--> <!--@DocNum - номер документа, обязательный--> <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> <DocumentInfo DocType="?" DocNum="?" CountryCode="?" DocElapsedTime="?"/> <!--информация о визе, необязательная.(Заполняется через SSR DOCO) @Num - номер визы, обязательный @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный @IssueCountry - страна выдачи визы, обязательный @IssuePlace - место выдачи визы, обязательный @BirthCountry - страна рождения(IATA код страны), необязательный @BirthCity - город рождения(название), необязательный --> <VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/> <!--Адрес прибытия, необязательный--> <ArrAddress> <!--@City - Город. Обязательный--> <City>?</City> <!--@State - Штат или область въезда. Обязательный--> <State>?</State> <!--@StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный--> <StreetAddress>?</StreetAddress> <!--@PostalCode - Почтовый код. Обязательный--> <PostalCode>?</PostalCode> <!--@CountryCode - Код страны. Обязательный--> <CountryCode>?</CountryCode> </ArrAddress> <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> <!--@Location - положение места в ряде, необязательный, возможные значения: W - у окна (Window) M - где-то в середине ряда (Middle) NPW - возле прохода (NearPassengerWay) NS - нет предпочтения (NotSpecified) --> <!--@RowNumber - Номер ряда, строка, необязательный--> <!--@PlaceNumber - Номер места, строка, необязательный--> <!--@SegNumber - Номер сегмента, строка, обязательный--> <PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/> <!--Список форматов строк паспортных данны, необязательный--> <DocStringFormats> <!--Формат паспортной строки, обязательный, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID--> <DocStringFormat>?</DocStringFormat> </DocStringFormats> </Traveller> </Travellers> <!--Номер очереди, в которую необходимо поместить бронирование. Строка, необязательный--> <QueueNum>?</QueueNum> </BookFlight>
Односторонний перелет: Москва - Санкт-Петербург.
REQUEST
soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight"> <soapenv:Header/> <soapenv:Body> <ver:BookFlight> <RequestBin> <Request> <BookFlight> <!--@FlightId ид перелёта в системе Немо, обязательный--> <FlightId>534733</FlightId> <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> <ValidatingCompany>SU</ValidatingCompany> <!--Код класс перелёта, один для каждого сегмента в перелёте, необязательный--> <BookingCodes> <!--@Code - код класса перелёта, обязательный--> <!--@SegNumber - номер сегмента в перелёте (начинаются с 1), обязательный--> <BookingCode Code="Q" SegNumber="1"/> </BookingCodes> <!--Код валюты, необязательный--> <CurrencyCode>RUB</CurrencyCode> <!--Оплатить не позже, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС, необязательный--> <TicketTimeLimit>2011-06-20 00:00:00</TicketTimeLimit> <!--Информация об агенстве, обязательный--> <!--@Name - название агентства, обязательный--> <Agency Name=""> <!--Телефон агентсва, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агенство--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> <!--Адресс агенства. Обязательный.--> <!--@ City - Город. Обязательный.--> <!--@StreetAddress - Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> <!--@PostalCode - Почтовый индекс. Необязательный.--> <!--@CountryCode - Код страны (RU, UA и т.п.). Необязательный.--> <Address City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> </Agency> <!--Список пассажиров, обязательный--> <Travellers> <!--Информация о пассажире, обязательный--> <!--@Type - тип пассажира, обязательный, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом--> <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> <!--@Num - порядковый номер пассажира, начинается с 1, обязательный--> <!--@TravellerId - id номер пассажира из БД, необязательный--> <Traveller Type="ADT" IsContact="true" Num="1" TravellerId=""> <!--Код типа питания, необязательный, возможные значения: NONE - отсутствует AVML - Азиатская вегетарианская кухня BLML - Блюда щадящей диеты CHML - Детское питание CHPC - Детский холодный завтрак СНСС - Детский горячий завтрак CHHC - Детский ланч, ветчина и сыр PBJS - Детский ланч, ореховое масло CHMC - Детский обед макароны с сыром DBML - Диабетическое питание FPML - Фрукты GFML - Питание без клейковины HFML - Питание богатое клетчаткой HNML - Индусская кухня BBML - Питание для младенцев KSML - Кошерная кухня SMKB - Кошерный завтрак SMKL - Кошерный ланч SMKD - Кошерный обед LPML - Малобелковое питание LCML - Низкокалорийное питание LFML - Низкохолестериновое питание PRML - Низкопуриновое питание LSML - Малосоленое питание MOML - Мюсли NLML - Безмолочные продукты ORML - Восточная кухня RVML - Сырые овощи SFML - Морепродукты SPML - Особое питание VLML - Вегетарианское, молоко и яйца VGML - Строго вегетарианское питание VJML - Джайнизское вегетарианское VOML - Восточное вегетарианское питание--> <Meal></Meal> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате yyyy-mm-dd (например 2000-12-31), обязательный--> <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> <PersonalInfo DateOfBirth="1975-05-15" Nationality="RU" Gender="M"> <!--Имя пассажира, обязательный--> <FirstName>Ivan</FirstName> <!--Фамилия пассажира, обязательный--> <LastName>Ivanov</LastName> <!--Отчество пассажира, обязательный--> <MiddleName></MiddleName> </PersonalInfo> <!--Карточка часто летающего пассажира, необязательный --> <!--@OpCode - код авиакомпании, обязательный--> <!--@Number - номер карточки, обязательный--> <LoyaltyCard OpCode="" Number=""/> <!--Контактная информация, необязательный--> <ContactInfo> <!--Контактный email, необязательный--> <EmailID></EmailID> <!--Контактный телефон, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> </ContactInfo> <!--Паспортные данные, обязательный--> <!--@DocType - тип документа, обязательный, возможные значения: Р - Паспорт A – Паспорт иностранца С - Внутренний гражданский паспорт F – Документ заменяющий паспорт М - Воинское удостоверение N – Сертификат натурализации(специфичный документ США) T – Док.повторного въезда, паспорт беженца V – Документ для пересечения границы--> <!--@DocNum - номер документа, обязательный--> <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> <!--@DocElapsedTime - Срок истечения срока действия паспорта в yyyy-mm-dd (например 2000-12-31), обязательный--> <DocumentInfo DocType="P" DocNum="1234123456" CountryCode="RU" DocElapsedTime="2025-06-15"/> <!--информация о визе, необязательная.(Заполняется через SSR DOCO) @Num - номер визы, обязательный @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный @IssueCountry - страна выдачи визы, обязательный @IssuePlace - место выдачи визы, обязательный @BirthCountry - страна рождения(IATA код страны), необязательный @BirthCity - город рождения(название), необязательный --> <VisaInfo Num="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity="" IssueDate=""/> <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. @CountryCode - Код страны. Обязательный @State - Штат или область въезда. Обязательный @PostalCode - Почтовый код. Обязательный @City - Город. Обязательный @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный --> <ArrAddress City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> <!--@Location - положение места в ряде, необязательный, возможные значения: W - у окна (Window) M - где-то в середине ряда (Middle) NPW - возле прохода (NearPassengerWay) NS - нет предпочтения (NotSpecified) --> <!--@RowNumber - Номер ряда, строка, необязательный--> <!--@PlaceNumber - Номер места, строка, необязательный--> <!--@SegNumber - Номер сегмента, строка, обязательный--> <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> <!--Список форматов строк паспортных данных, необязательный--> <DocStringFormats> <!--Формат паспортной строки, обязательный, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID--> <DocStringFormat></DocStringFormat> </DocStringFormats> </Traveller> </Travellers> <!--Номер очереди, в которую необходимо поместить бронирование. Строка, необязательный--> <QueueNum></QueueNum> </BookFlight> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source>
RESPONSE
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SOAP-ENV:Body> <ns1:BookFlightResponse> <ResponseBin> <Response> <!--Ответ, обязательный--> <!--@ID - Ид брони в системе немо, целое число, обязательный--> <!--@Status - Индикатор состояния брони, обязательный, возможные значения: booked - забронировано, canceled - бронь отменена, ticket - выписана UNDEFINED - статус не определён --> <!--@Code - Код брони в системе бронирования/поиска (sabre, sirena и т.д.), строка, обязательный--> <BookFlight ID="21282" Status="booked" Code="QSSRL0"> <!--Положение брони в очереди, необязательный--> <!--@Number - номер брони в очереди, обязательный--> <QueryPlace xsi:nil="true"/> <!--@FlightId ид перелёта в системе Немо, обязательный--> <Flight FlightId="535464"> <!--Веб-сервис из которого получен перелёт, обязательный--> <WebService>GALILEO</WebService> <!--Код авиакомпании - валидирующего перевозчика, IATA, обязательный--> <ValCompany>S7</ValCompany> <URL>http%3A%2F%2Flocalhost%2F%3Fgo%3Dbooking%2Finfo%26uid%3D26664%26flight%3D535464</URL> <Segments> <!--SegNum - Номер сегмента в перелёте, обязательный--> <Segment SegNum="1"> <!--Аэропорт отправления. Обязательный--> <DepAirp CodeType="IATA">DME</DepAirp> <!--Терминал пункта отправления, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> <DepTerminal xsi:nil="true"/> <!--Аэропорт прибытия. Обязательный--> <ArrAirp CodeType="IATA">LED</ArrAirp> <!--Терминал пункта прибытия, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> <ArrTerminal>1</ArrTerminal> <!--Авиакомпания перевозчик. Обязательный--> <OpAirline>S7</OpAirline> <!--Авиакомпания, продающая перелёт. Обязательный--> <MarkAirline>S7</MarkAirline> <!--Номер рейса. Обязательный--> <FlightNumber>39</FlightNumber> <!--Тип воздушного судна, код. Обязательный--> <AircraftType>320</AircraftType> <!--Дата и время отправления, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> <DepDateTime>2011-06-15T12:15:00</DepDateTime> <!--Дата и время прибытия, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> <ArrDateTime>2011-06-15T13:45:00</ArrDateTime> <!--Количество остановок. Обязательный--> <StopNum>0</StopNum> <!--Код класса бронирования. Обязательный--> <BookingCodes> <BookingCode>O</BookingCode> </BookingCodes> <!--Время перелёта, в минутах. Обязательный--> <FlightTime>90</FlightTime> <!--Временные зоны точки отправления и прибытия. Необязательный--> <!--@departure временная зона аэропорта отправления, обязательный--> <!--@arrival - временная зона аэропорта прибытия, обязательный--> <TimeZone xsi:nil="true"/> <!--Признак электронного билета. Значения: true или false. Обязательный--> <ETicket>true</ETicket> </Segment> </Segments> <!--информация о стоимости, может встречаться более 1 раза, обязательный--> <!--@Refundable возвратный/невозвратный, true/false. Если пустое, то не известно, необязательный--> <PricingInfo Refundable="true"> <!--Типы пассажиров с ценами, таксами и тп, может встречаться более 1 раза, необязательный--> <!--@Type тип пассажира, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом, обязательный--> <!--@Quantity Количество пассажиров данного типа, обязательный--> <PassengerFare Type="ADT" Quantity="1"> <!--Базовая стоимость, в базовой валюте, обязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <BaseFare Currency="RUB" Amount="3300"/> <!--Базовая стоимость, в эквивалентной валюте(валюте продажи), обязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <EquiveFare Currency="RUB" Amount="3300"/> <!--Суммарная стоимость в эквивалентной валюте, необязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <TotalFare Currency="RUB" Amount="3710"/> <!--Массив такс, необязательный--> <Taxes> <!--Одна такса, обязательный--> <!--@CurCode код валюты, обязательный--> <!--@TaxCode код таксы, обязательный--> <!--@Amount сумма таксы, обязательный--> <Tax CurCode="RUB" TaxCode="RU" Amount="41"/> <Tax CurCode="RUB" TaxCode="YQ" Amount="369"/> </Taxes> <!--Массив тарифов, необязательный--> <Tariffs> <!--Тариф, обязательный--> <!--@Code код тарифа, обязательный--> <!--@SegNum номер сегмента, к которому применён тариф, обязательный--> <Tariff Code="OPOOW" SegNum="1"/> </Tariffs> <!--Строка расчёта цены, необязательный--> <FareCalc xsi:nil="true"/> <!--Дата и время таймлимита по выписке в формате ГГГГ-MM-DDTЧЧ:ММ:СС, обязательный--> <LastTicketDateTime>2011-05-27T23:59:00</LastTicketDateTime> </PassengerFare> </PricingInfo> <!--Комиссии, обязательный--> <!--@Currency, код валюты, обязательный--> <Commission Currency="RUB">382.2</Commission> <!--Сборы, обязательный--> <!--@Currency, код валюты, обязательный--> <Charges Currency="RUB">112</Charges> </Flight> <!--Информация об агенстве, обязательный--> <!--@Name - название агентства, обязательный--> <Agency Name=""> <!--Телефон агентсва, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агенство--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> <!--Адресс агенства. Обязательный.--> <Address> <!--Город. Обязательный.--> <City></City> <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> <StreetAddress></StreetAddress> <!--Почтовый индекс. Необязательный.--> <PostalCode></PostalCode> <!--Код страны (RU, UA и т.п.). Необязательный.--> <CountryCode></CountryCode> </Address> </Agency> <!--Маршрут квитанция, необязательный--> <!--@Encoding - кодировка, обязательный--> <!--@Format - формат, обязательный--> <ItinReceipts Encoding="" Format=""> <FareStored xsi:nil="true"/> <!--Список пассажиров, обязательный--> <Travellers> <!--@Type тип пассажира, обязательный, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом--> <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> <!--@Num - порядковый номер пассажира , начинается с 1, обязательный--> <!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> <Traveller Type="ADT" IsContact="true" Num="1"> <!--Тип питания, обязательный, возможные значения: UNDEFINED - неизвестно N - Нет питания P - Алкогольные напитки в продаже B - Завтрак O - Холодная еда C - Бесплатные алкогольные напитки K - Континтальный завтрак D - Обед F - Еда в продаже G - Еда/напитки в продаже H - Горячая еда L - Ланч M - Еда R - Освежающие еда/напитки бесплатно V - Освежающие еда/напитки за отдельную плату S - Закуска --> <Meal xsi:nil="true"/> <!--Билет, необязательный--> <!--@TickectNum - номер билета, обязательный--> <Ticket TickectNum="" /> <Seats> <!--Место пассажира в самолёте, обязательный--> <!--@Number - номер места, обязательный--> <!--@Characteristic - Характеристика места в соответствии со стандартом EDIFACT, необязательный--> <!--@SmokingPreference - статус курения на этом месте, если Y - место для курящих, если N - место для некурящих, необязательный--> <!--@SegmentNumber - номер сегмента в перелёте, обязательный--> <Seat Number="" Characteristic="" SmokingPreference="" SegmentNumber=""/> </Seats> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> <PersonalInfo DateOfBirth="15.05.1975" Nationality="RU" Gender="M"> <!--Имя пассажира, обязательный--> <FirstName>HKSFG</FirstName> <!--Фамилия пассажира, обязательный--> <LastName>DFGDG</LastName> <!--Отчество пассажира, обязательный--> <MiddleName>SHHHHHHH</MiddleName> </PersonalInfo> <!--Карточка часто летающего пассажира, необязательный --> <!--@OpCode - код авиакомпании, обязательный--> <!--@Number - номер карточки, обязательный --> <LoyaltyCard OpCode="" Number=""/> <ContactInfo> <!--Контактный email, необязательный--> <EmailID></EmailID> <!--Контактный телефон, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> </ContactInfo> <!--Паспортные данные, обязательный--> <!--@DocType - тип документа, обязательный, возможные значения: Р - Паспорт A – Паспорт иностранца С - Внутренний гражданский паспорт F – Документ заменяющий паспорт М - Воинское удостоверение N – Сертификат натурализации(специфичный документ США) T – Док.повторного въезда, паспорт беженца V – Документ для пересечения границы--> <!--@DocNum - номер документа, обязательный--> <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> <DocumentInfo DocType="P" DocNum="1234123456" CountryCode="RU" DocElapsedTime="15.06.2025"/> <!--информация о визе, необязательная.(Заполняется через SSR DOCO) @Num - номер визы, обязательный @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный @IssueCountry - страна выдачи визы, обязательный @IssuePlace - место выдачи визы, обязательный @BirthCountry - страна рождения(IATA код страны), необязательный @BirthCity - город рождения(название), необязательный --> <VisaInfo Num="" IssueDate="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity=""/> <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. @CountryCode - Код страны. Обязательный @State - Штат или область въезда. Обязательный @PostalCode - Почтовый код. Обязательный @City - Город. Обязательный @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный --> <ArrAddress CountryCode="" State="" PostalCode="" City="" StreetAddress=""/> <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> <!--@Location - положение места в ряде, необязательный, возможные значения: W - у окна (Window) M - где-то в середине ряда (Middle) NPW - возле прохода (NearPassengerWay) NS - нет предпочтения (NotSpecified) --> <!--@RowNumber - Номер ряда, строка, необязательный--> <!--@PlaceNumber - Номер места, строка, необязательный--> <!--@SegNumber - Номер сегмента, строка, обязательный--> <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> <DocStringFormats> <!--Формат паспортной строки, обязательный, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID--> <DocStringFormat></DocStringFormat> </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>
Перелет Москва - Санкт-петербург:
REQUEST
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight"> <soapenv:Header/> <soapenv:Body> <ver:BookFlight> <RequestBin> <Request> <BookFlight> <!--@FlightId ид перелёта в системе Немо, обязательный--> <FlightId>534339</FlightId> <!--Валидирующий перевозчик (тот кто выписывает билет), необязательный--> <ValidatingCompany>SU</ValidatingCompany> <!--Код класс перелёта, один для каждого сегмента в перелёте, необязательный--> <BookingCodes> <!--@Code - код класса перелёта, обязательный--> <!--@SegNumber - номер сегмента в перелёте (начинаются с 1), обязательный--> <BookingCode Code="Q" SegNumber="1"/> </BookingCodes> <!--Код валюты, необязательный--> <CurrencyCode>RUB</CurrencyCode> <!--Оплатить не позже, формат: ГГГГ-ММ-ДДTЧЧ:мм:СС, необязательный--> <TicketTimeLimit>2011-06-20 00:00:00</TicketTimeLimit> <!--Информация об агенстве, обязательный--> <!--@Name - название агентства, обязательный--> <Agency Name=""> <!--Телефон агентсва, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агенство--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> <!--Адресс агенства. Обязательный.--> <!--@ City - Город. Обязательный.--> <!--@StreetAddress - Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> <!--@PostalCode - Почтовый индекс. Необязательный.--> <!--@CountryCode - Код страны (RU, UA и т.п.). Необязательный.--> <Address City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> </Agency> <!--Список пассажиров, обязательный--> <Travellers> <Travellers> <!--Информация о пассажире, обязательный--> <!--@Type - тип пассажира, обязательный, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом--> <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> <!--@Num - порядковый номер пассажира, начинается с 1, обязательный--> <!--@TravellerId - id пользователя в БД, необязательный--> <Traveller Type="ADT" IsContact="true" Num="1" TravellerId="32738"/> <!--Код типа питания, необязательный, возможные значения: NONE - отсутствует AVML - Азиатская вегетарианская кухня BLML - Блюда щадящей диеты CHML - Детское питание CHPC - Детский холодный завтрак СНСС - Детский горячий завтрак CHHC - Детский ланч, ветчина и сыр PBJS - Детский ланч, ореховое масло CHMC - Детский обед макароны с сыром DBML - Диабетическое питание FPML - Фрукты GFML - Питание без клейковины HFML - Питание богатое клетчаткой HNML - Индусская кухня BBML - Питание для младенцев KSML - Кошерная кухня SMKB - Кошерный завтрак SMKL - Кошерный ланч SMKD - Кошерный обед LPML - Малобелковое питание LCML - Низкокалорийное питание LFML - Низкохолестериновое питание PRML - Низкопуриновое питание LSML - Малосоленое питание MOML - Мюсли NLML - Безмолочные продукты ORML - Восточная кухня RVML - Сырые овощи SFML - Морепродукты SPML - Особое питание VLML - Вегетарианское, молоко и яйца VGML - Строго вегетарианское питание VJML - Джайнизское вегетарианское VOML - Восточное вегетарианское питание--> <Meal></Meal> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате yyyy-mm-dd (например 2000-12-31), обязательный--> <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> <PersonalInfo DateOfBirth="1975-05-15" Nationality="RU" Gender="M"> <!--Имя пассажира, обязательный--> <FirstName>Ivan</FirstName> <!--Фамилия пассажира, обязательный--> <LastName>Ivanov</LastName> <!--Отчество пассажира, обязательный--> <MiddleName></MiddleName> </PersonalInfo> <!--Карточка часто летающего пассажира, необязательный --> <!--@OpCode - код авиакомпании, обязательный--> <!--@Number - номер карточки, обязательный--> <LoyaltyCard OpCode="" Number=""/> <!--Контактная информация, необязательный--> <ContactInfo> <!--Контактный email, необязательный--> <EmailID></EmailID> <!--Контактный телефон, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> </ContactInfo> <!--Паспортные данные, обязательный--> <!--@DocType - тип документа, обязательный, возможные значения: Р - Паспорт A – Паспорт иностранца С - Внутренний гражданский паспорт F – Документ заменяющий паспорт М - Воинское удостоверение N – Сертификат натурализации(специфичный документ США) T – Док.повторного въезда, паспорт беженца V – Документ для пересечения границы--> <!--@DocNum - номер документа, обязательный--> <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> <!--@DocElapsedTime - Срок истечения срока действия паспорта в yyyy-mm-dd (например 2000-12-31), обязательный--> <DocumentInfo DocType="P" DocNum="1234123456" CountryCode="RU" DocElapsedTime="2025-06-15"/> <!--информация о визе, необязательная.(Заполняется через SSR DOCO) @Num - номер визы, обязательный @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный @IssueCountry - страна выдачи визы, обязательный @IssuePlace - место выдачи визы, обязательный @BirthCountry - страна рождения(IATA код страны), необязательный @BirthCity - город рождения(название), необязательный --> <VisaInfo Num="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity="" IssueDate=""/> <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. @CountryCode - Код страны. Обязательный @State - Штат или область въезда. Обязательный @PostalCode - Почтовый код. Обязательный @City - Город. Обязательный @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный --> <ArrAddress City="" State="" StreetAddress="" PostalCode="" CountryCode=""/> <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> <!--@Location - положение места в ряде, необязательный, возможные значения: W - у окна (Window) M - где-то в середине ряда (Middle) NPW - возле прохода (NearPassengerWay) NS - нет предпочтения (NotSpecified) --> <!--@RowNumber - Номер ряда, строка, необязательный--> <!--@PlaceNumber - Номер места, строка, необязательный--> <!--@SegNumber - Номер сегмента, строка, обязательный--> <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> <!--Список форматов строк паспортных данных, необязательный--> <DocStringFormats> <!--Формат паспортной строки, обязательный, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID--> <DocStringFormat></DocStringFormat> </DocStringFormats> </Traveller> </Travellers> <!--Номер очереди, в которую необходимо поместить бронирование. Строка, необязательный--> <QueueNum></QueueNum> </BookFlight> </Request> <!--Авторизация, обязательный--> <!--@ClientId, идентификатор клиента, обязательный--> <!--@APIKey, API ключ клиента, обязательный--> <!--@Language, код языка, обязательный--> <!--@Currency код валюты, обязательный--> <Source> <ClientId>102</ClientId> <APIKey>7F48365D42B73307C99C12A578E92B36</APIKey> <Language>RU</Language> <Currency>RUB</Currency> </Source> </RequestBin> </ver:BookFlight> </soapenv:Body> </soapenv:Envelope>
RESPONSE
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://localhost/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <SOAP-ENV:Body> <ns1:BookFlightResponse> <ResponseBin> <Response> <!--Ответ, обязательный--> <!--@ID - Ид брони в системе немо, целое число, обязательный--> <!--@Status - Индикатор состояния брони, обязательный, возможные значения: booked - забронировано, canceled - бронь отменена, ticket - выписана UNDEFINED - статус не определён --> <!--@Code - Код брони в системе бронирования/поиска (sabre, sirena и т.д.), строка, обязательный--> <BookFlight ID="21282" Status="booked" Code="QSSRL0"> <!--Положение брони в очереди, необязательный--> <!--@Number - номер брони в очереди, обязательный--> <QueryPlace xsi:nil="true"/> <!--@FlightId ид перелёта в системе Немо, обязательный--> <Flight FlightId="535464"> <!--Веб-сервис из которого получен перелёт, обязательный--> <WebService>GALILEO</WebService> <!--Код авиакомпании - валидирующего перевозчика, IATA, обязательный--> <ValCompany>S7</ValCompany> <URL>http%3A%2F%2Flocalhost%2F%3Fgo%3Dbooking%2Finfo%26uid%3D26664%26flight%3D535464</URL> <Segments> <!--SegNum - Номер сегмента в перелёте, обязательный--> <Segment SegNum="1"> <!--Аэропорт отправления. Обязательный--> <DepAirp CodeType="IATA">DME</DepAirp> <!--Терминал пункта отправления, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> <DepTerminal xsi:nil="true"/> <!--Аэропорт прибытия. Обязательный--> <ArrAirp CodeType="IATA">LED</ArrAirp> <!--Терминал пункта прибытия, если пустое значение, то терминала нет, т.е. в аэропорту всего 1 терминал, необязательный--> <ArrTerminal>1</ArrTerminal> <!--Авиакомпания перевозчик. Обязательный--> <OpAirline>S7</OpAirline> <!--Авиакомпания, продающая перелёт. Обязательный--> <MarkAirline>S7</MarkAirline> <!--Номер рейса. Обязательный--> <FlightNumber>39</FlightNumber> <!--Тип воздушного судна, код. Обязательный--> <AircraftType>320</AircraftType> <!--Дата и время отправления, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> <DepDateTime>2011-06-15T12:15:00</DepDateTime> <!--Дата и время прибытия, формат ГГГГ-MM-DDTЧЧ:ММ:СС. Обязательный--> <ArrDateTime>2011-06-15T13:45:00</ArrDateTime> <!--Количество остановок. Обязательный--> <StopNum>0</StopNum> <!--Код класса бронирования. Обязательный--> <BookingCodes> <BookingCode>O</BookingCode> </BookingCodes> <!--Время перелёта, в минутах. Обязательный--> <FlightTime>90</FlightTime> <!--Временные зоны точки отправления и прибытия. Необязательный--> <!--@departure временная зона аэропорта отправления, обязательный--> <!--@arrival - временная зона аэропорта прибытия, обязательный--> <TimeZone xsi:nil="true"/> <!--Признак электронного билета. Значения: true или false. Обязательный--> <ETicket>true</ETicket> </Segment> </Segments> <!--информация о стоимости, может встречаться более 1 раза, обязательный--> <!--@Refundable возвратный/невозвратный, true/false. Если пустое, то не известно, необязательный--> <PricingInfo Refundable="true"> <!--Типы пассажиров с ценами, таксами и тп, может встречаться более 1 раза, необязательный--> <!--@Type тип пассажира, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом, обязательный--> <!--@Quantity Количество пассажиров данного типа, обязательный--> <PassengerFare Type="ADT" Quantity="1"> <!--Базовая стоимость, в базовой валюте, обязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <BaseFare Currency="RUB" Amount="3300"/> <!--Базовая стоимость, в эквивалентной валюте(валюте продажи), обязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <EquiveFare Currency="RUB" Amount="3300"/> <!--Суммарная стоимость в эквивалентной валюте, необязательный--> <!--@Currency код валюты, @Amount значение цены, обязательный--> <TotalFare Currency="RUB" Amount="3710"/> <!--Массив такс, необязательный--> <Taxes> <!--Одна такса, обязательный--> <!--@CurCode код валюты, обязательный--> <!--@TaxCode код таксы, обязательный--> <!--@Amount сумма таксы, обязательный--> <Tax CurCode="RUB" TaxCode="RU" Amount="41"/> <Tax CurCode="RUB" TaxCode="YQ" Amount="369"/> </Taxes> <!--Массив тарифов, необязательный--> <Tariffs> <!--Тариф, обязательный--> <!--@Code код тарифа, обязательный--> <!--@SegNum номер сегмента, к которому применён тариф, обязательный--> <Tariff Code="OPOOW" SegNum="1"/> </Tariffs> <!--Строка расчёта цены, необязательный--> <FareCalc xsi:nil="true"/> <!--Дата и время таймлимита по выписке в формате ГГГГ-MM-DDTЧЧ:ММ:СС, обязательный--> <LastTicketDateTime>2011-05-27T23:59:00</LastTicketDateTime> </PassengerFare> </PricingInfo> <!--Комиссии, обязательный--> <!--@Currency, код валюты, обязательный--> <Commission Currency="RUB">382.2</Commission> <!--Сборы, обязательный--> <!--@Currency, код валюты, обязательный--> <Charges Currency="RUB">112</Charges> </Flight> <!--Информация об агенстве, обязательный--> <!--@Name - название агентства, обязательный--> <Agency Name=""> <!--Телефон агентсва, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агенство--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> <!--Адресс агенства. Обязательный.--> <Address> <!--Город. Обязательный.--> <City></City> <!--Адрес в городе (улица, дом, корпус, офис и т.д.). Необязательный.--> <StreetAddress></StreetAddress> <!--Почтовый индекс. Необязательный.--> <PostalCode></PostalCode> <!--Код страны (RU, UA и т.п.). Необязательный.--> <CountryCode></CountryCode> </Address> </Agency> <!--Маршрут квитанция, необязательный--> <!--@Encoding - кодировка, обязательный--> <!--@Format - формат, обязательный--> <ItinReceipts Encoding="" Format=""> <FareStored xsi:nil="true"/> <!--Список пассажиров, обязательный--> <Travellers> <!--@Type тип пассажира, обязательный, возможные значения: ADT - взрослые, CNN - дети со взрослыми, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом--> <!--@IsContact - если true - то данный пассажир является контактным лицом, если false - то не является, контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом, по умолчанию false, обязательный--> <!--@Num - порядковый номер пассажира , начинается с 1, обязательный--> <!--@LinkedTo - номер взрослого, к которому привязан младенец/ребёнок, необязательный--> <Traveller Type="ADT" IsContact="true" Num="1"> <!--Тип питания, обязательный, возможные значения: UNDEFINED - неизвестно N - Нет питания P - Алкогольные напитки в продаже B - Завтрак O - Холодная еда C - Бесплатные алкогольные напитки K - Континтальный завтрак D - Обед F - Еда в продаже G - Еда/напитки в продаже H - Горячая еда L - Ланч M - Еда R - Освежающие еда/напитки бесплатно V - Освежающие еда/напитки за отдельную плату S - Закуска --> <Meal xsi:nil="true"/> <!--Билет, необязательный--> <!--@TickectNum - номер билета, обязательный--> <Ticket TickectNum="" /> <Seats> <!--Место пассажира в самолёте, обязательный--> <!--@Number - номер места, обязательный--> <!--@Characteristic - Характеристика места в соответствии со стандартом EDIFACT, необязательный--> <!--@SmokingPreference - статус курения на этом месте, если Y - место для курящих, если N - место для некурящих, необязательный--> <!--@SegmentNumber - номер сегмента в перелёте, обязательный--> <Seat Number="" Characteristic="" SmokingPreference="" SegmentNumber=""/> </Seats> <!--Персональные данные, обязательный--> <!--@DateOfBirth - дата рождения в формате dd.mm.yyyy (например 31.12.2000), обязательный--> <!--@Nationality - национальность(гражданство?), двух буквенный код страны (RU, UA, US и т.д.), обязательный--> <!--@Gender - пол пассажира, обязательный, возможные значения: M - мужской(Male) F - женский(Female)--> <PersonalInfo DateOfBirth="01.05.1981" Nationality="AU" Gender="M"> <!--Имя пассажира, обязательный--> <FirstName>ANDREW</FirstName> <!--Фамилия пассажира, обязательный--> <LastName>RESH</LastName> <!--Отчество пассажира, обязательный--> <MiddleName>SARAT</MiddleName> </PersonalInfo> <!--Карточка часто летающего пассажира, необязательный --> <!--@OpCode - код авиакомпании, обязательный--> <!--@Number - номер карточки, обязательный --> <LoyaltyCard OpCode="" Number=""/> <ContactInfo> <!--Контактный email, необязательный--> <EmailID></EmailID> <!--Контактный телефон, необязательный--> <!--@Type - тип номера, обязательный, возможные значения: M - мобильный, H - домашний, B - рабочий--> <Telephone Type=""> <!--Номер телефона, обязательный--> <PhoneNumber></PhoneNumber> <!--Код страны, необязательный--> <CountryAccessCode></CountryAccessCode> <!--Код региона/города, необязательный--> <AreaCityCode></AreaCityCode> </Telephone> </ContactInfo> <!--Паспортные данные, обязательный--> <!--@DocType - тип документа, обязательный, возможные значения: Р - Паспорт A – Паспорт иностранца С - Внутренний гражданский паспорт F – Документ заменяющий паспорт М - Воинское удостоверение N – Сертификат натурализации(специфичный документ США) T – Док.повторного въезда, паспорт беженца V – Документ для пересечения границы--> <!--@DocNum - номер документа, обязательный--> <!--@CountryCode - двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.), обязательный--> <!--@DocElapsedTime - Срок истечения срока действия паспорта в dd.mm.yyyy (например 31.12.2000), обязательный--> <DocumentInfo DocType="P" DocNum="3254253345" CountryCode="AU" DocElapsedTime="29.05.2011"/> <!--информация о визе, необязательная.(Заполняется через SSR DOCO) @Num - номер визы, обязательный @IssueDate - дата(dd.mm.yyyy) выдачи визы, обязательный @IssueCountry - страна выдачи визы, обязательный @IssuePlace - место выдачи визы, обязательный @BirthCountry - страна рождения(IATA код страны), необязательный @BirthCity - город рождения(название), необязательный --> <VisaInfo Num="" IssueDate="" IssueCountry="" IssuePlace="" BirthCountry="" BirthCity=""/> <!--Адрес прибытия, необязательный.(Заполняется через SSR DOCA) Но для въезжающих в США(неграждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнить при посадке на самолёт. @CountryCode - Код страны. Обязательный @State - Штат или область въезда. Обязательный @PostalCode - Почтовый код. Обязательный @City - Город. Обязательный @StreetAddress - Адрес: улица, номер дома, квартиры и тп. Обязательный --> <ArrAddress CountryCode="" State="" PostalCode="" City="" StreetAddress=""/> <!--Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры @Smoking и @Location игнорируются и могут быть не указаны. Необязательный--> <!--@SmokingAllowed - булевское значение, true - место для курящих, false - место для некурящих, необязательный--> <!--@Location - положение места в ряде, необязательный, возможные значения: W - у окна (Window) M - где-то в середине ряда (Middle) NPW - возле прохода (NearPassengerWay) NS - нет предпочтения (NotSpecified) --> <!--@RowNumber - Номер ряда, строка, необязательный--> <!--@PlaceNumber - Номер места, строка, необязательный--> <!--@SegNumber - Номер сегмента, строка, обязательный--> <PreferedPlace SmokingAllowed="" Location="" RowNumber="" PlaceNumber="" SegNumber=""/> <DocStringFormats> <!--Формат паспортной строки, обязательный, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID--> <DocStringFormat></DocStringFormat> </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>