576
правок
Изменения
Нет описания правки
== Подключение ==
Получить доступ к результатам бронирования в данном сервисе можно через SOAP клиента. Для получения результата необходим параметр - — «FlightId» - — Id перелёта, для которого будет производится бронирование. WSDL находится по адресу: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=BookFlight.
== Общий формат запроса / ответа ==
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
<BookFlight>
<FlightId>?</FlightId>
<!--FlightId - — Id перелёта в системе НемоNemo-->
<!--Optional:-->
<ValidatingCompany>?</ValidatingCompany> <!--необязательный-->
<!--ValidatingCompany - — валидирующий перевозчик (тот кто выписывает билет)-->
<!--Optional:-->
<BookingCodes>
<!--Zero or more repetitions:-->
<BookingCode Code="?" SegNumber="?"/>
<!--Code - — код класса перелёта--> <!--SegNumber - — номер сегмента в перелёте (начинаются с 1)-->
</BookingCodes>
<!--Optional:-->
<CurrencyCode>?</CurrencyCode> <!--необязательный-->
<!--CurrencyCode - — код валюты-->
<!--Optional:-->
<TicketTimeLimit>?</TicketTimeLimit> <!--необязательный-->
<!--TicketTimeLimit - — таймлимит на оплату, формат: ГГГГ-ММ-ДДTЧЧ:ММ:СС-->
<!--Optional:-->
<Agency Name="?"> <!--необязательный-->
<!--Name - — название агентства-->
<Telephone Type="?">
<!--Type - — тип номера, обязательный, возможные значения: M - — мобильный, H - — домашний, B - — рабочий, A - — агенство-->
<!--Optional:-->
<PhoneNumber>?</PhoneNumber>
<!--PhoneNumber - — номер телефона-->
<!--Optional:-->
<CountryAccessCode>?</CountryAccessCode> <!--необязательный-->
<!--CountryAccessCode - — код страны-->
<!--Optional:-->
<AreaCityCode>?</AreaCityCode> <!--необязательный-->
<!--AreaCityCode - — код региона/города-->
</Telephone>
<Address City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/> <!--необязательный-->
<!--City - — город--> <!--State - — штат--> <!--StreetAddress - — адрес в городе (улица, дом, корпус, офис и т.д.)--> <!--PostalCode - — почтовый индекс--> <!--CountryCode - — код страны (RU, UA и т.п.)-->
</Agency>
<Travellers>
<!--Zero or more repetitions:-->
<Traveller Type="?" IsContact="?" LinkedTo="?" Num="?" TravellerId="?">
<!--Type - — тип пассажира, обязательный, возможные значения: ADT - — взрослые, CNN - — дети со взрослыми,UNN - — дети без сопровождения взрослых, INF - — младенцы, INS - — младенцы с местом--> <!--IsContact - — если true - — то данный пассажир является контактным лицом, если false - — то не является,
контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них
может быть контактным лицом, по умолчанию false-->
<!--Num - — порядковый номер пассажира, начинается с 1--> <!--LinkedTo - — номер взрослого, к которому привязан младенец/ребёнок--> <!--необязательный--> <!--TravellerId - — устаревший параметр, не используется-->
<Meal>?</Meal> <!--необязательный-->
<!--Meal - — код типа питания, возможные значения: 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 - — Восточное вегетарианское питание-->
<PersonalInfo DateOfBirth="?" Nationality="?" Gender="?">
<!--DateOfBirth - — дата рождения в формате ДД.ММ.ГГГГ (например 31.12.2000)--> <!--Nationality - — гражданство, двух буквенный код страны (RU, UA, US и т.д.)--> <!--Gender - — пол пассажира, возможные значения: M - — мужской(Male), F - — женский(Female)-->
<FirstName>?</FirstName>
<!--FirstName - — имя пассажира-->
<LastName>?</LastName>
<!--LastName - — фамилия пассажира-->
<!--Optional:-->
<MiddleName>?</MiddleName> <!--необязательный-->
<!--MiddleName - — отчество пассажира-->
</PersonalInfo>
<LoyaltyCard OpCode="?" Number="?"/> <!--необязательный-->
<!--OpCode - — код авиакомпании--> <!--Number - — номер карточки-->
<ContactInfo> <!--необязательный-->
<!--Optional:-->
<EmailID>?</EmailID>
<!--EmailID - — контактный email-->
<!--Optional:-->
<Telephone Type="?">
<!--Type - — тип номера, возможные значения: M - — мобильный, H - — домашний, B - — рабочий-->
<!--Optional:-->
<PhoneNumber>?</PhoneNumber>
<!--PhoneNumber - — номер телефона-->
<!--Optional:-->
<CountryAccessCode>?</CountryAccessCode>
<!--CountryAccessCode - — код страны-->
<!--Optional:-->
<AreaCityCode>?</AreaCityCode>
<!--AreaCityCode - — код региона/города-->
</Telephone>
</ContactInfo>
<DocumentInfo DocType="?" DocNum="?" CountryCode="?" DocElapsedTime="?"/>
<!--DocType - — тип документа, возможные значения: Р - — Паспорт
A – Паспорт иностранца
С - — Внутренний гражданский паспорт
F – Документ заменяющий паспорт
М - — Воинское удостоверение
N – Сертификат натурализации(специфичный документ США)
T – Док.повторного въезда, паспорт беженца
V – Документ для пересечения границы-->
<!--DocNum - — номер документа--> <!--CountryCode - — двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.)--> <!--DocElapsedTime - — срок истечения срока действия паспорта в ДД.ММ.ГГГ (например 31.12.2000)-->
<VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/>
<!--необязательный-->
<!--Num - — номер визы--> <!--IssueDate - — дата(ДД.ММ.ГГГГ) выдачи визы--> <!--IssueCountry - — страна выдачи визы--> <!--IssuePlace - — место выдачи визы--> <!--BirthCountry - — страна рождения(IATA код страны)--> <!--BirthCity - — город рождения(название)-->
<ArrAddress City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/> <!--необязательный-->
<!--City - — город--> <!--State - — штат или область въезда--> <!--StreetAddress - — адрес: улица, номер дома, квартиры и т.д.--> <!--PostalCode - — почтовый код--> <!--CountryCode - — код страны-->
<PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/>
<!--необязательный-->
<!--Если указаны номер ряда и номер места, то параметры SmokingAllowed и Location игнорируются-->
<!--SmokingAllowed - — булевское значение, true - — место для курящих, false - — место для некурящих--> <!--Location - — положение места в ряде, возможные значения: W - — у окна (Window) M - — где-то в середине ряда (Middle) NPW - — возле прохода (NearPassengerWay) NS - — нет предпочтения (NotSpecified)--> <!--RowNumber - — номер ряда--> <!--PlaceNumber - — номер места--> <!--SegNumber - — номер сегмента-->
<DocStringFormats>
<!--Zero or more repetitions:-->
<DocStringFormat>?</DocStringFormat>
<!--DocStringFormat - — формат паспортной строки, возможные значения: DOCS - — строка формата DOCS, FOID - — строка формата FOID-->
</DocStringFormats>
</Traveller>
<!--Optional:-->
<QueueNum>?</QueueNum> <!--необязательный-->
<!--QueueNum - — номер очереди, в которую необходимо поместить бронирование-->
</BookFlight>
</Request>
<Source>
<ClientId>?</ClientId>
<!--ClientId - — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" ⇨ ? "Веб-служба. Авторизация".-->
<APIKey>?</APIKey>
<!--APIKey - — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" ⇨ ? "Веб-служба. Авторизация".-->
<Language>?</Language>
<!--Language - — язык-->
<Currency>?</Currency>
<!-- CUrrency - — валюта-->
</Source>
</RequestBin>
<Response>
<BookFlight ID="?" Status="?" Code="?">
<!--ID - — Id брони в системе немоNemo, целое число, обязательный--> <!--Status - — индикатор состояния брони, возможные значения: booked - — забронировано, canceled - — бронь отменена, ticket - — выписана UNDEFINED - — статус не определён--> <!--Code - — код брони в системе поставщика-->
<QueryPlace xsi:nil="true"/>
<!--QueryPlace - — положение брони в очереди, Number - — номер брони в очереди-->
<Flight FlightId="?">
<!--FlightId - — Id перелёта в системе Nemo-->
<WebService>?</WebService>
<!--WebService - — поставщик перелёта-->
<ValCompany>?</ValCompany>
<!--ValCompany - — код авиакомпании, являющейся валидирующим перевозчиком, IATA-->
<URL>?</URL>
<!--URL - — ссылка на бронирование конкретного перелета-->
<Segments>
<Segment SegNum="?" SegGroupNum="?">
<!--SegNum - — номер сегмента в перелёте-->
<!--SegGroupNum – номер плеча перелёта-->
<DepAirp CodeType="IATA">?</DepAirp>
<!--DepAirp - — аэропорт отправления, например: MOW - — любой аэропорт в г.Москва или SVO - — Шереметьево-->
<DepTerminal>?</DepTerminal>
<!--DepTerminal - — терминал пункта отправления, если пустое значение,
то в аэропорту всего 1 терминал-->
<ArrAirp CodeType="IATA">?</ArrAirp>
<!--ArrAirp - — аэропорт прибытия-->
<ArrTerminal>?</ArrTerminal>
<!--ArrTerminal - — терминал пункта прибытия, если пустое значение,
то в аэропорту всего 1 терминал-->
<OpAirline>?</OpAirline>
<!--OpAirline - — авиакомпания перевозчик, например: SU - — Аэрофлот-->
<MarkAirline>?</MarkAirline>
<!--MarkAirline - — авиакомпания, продающая перелёт-->
<FlightNumber>?</FlightNumber>
<!--FlightNumber - — номер рейса-->
<AircraftType>?</AircraftType>
<!--AircraftType - — тип воздушного судна, код-->
<DepDateTime>?</DepDateTime>
<!--DepDateTime - — дата и время отправления, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<ArrDateTime>?</ArrDateTime>
<!--ArrDateTime - — дата и время прибытия, формат ГГГГ-MM-ДДTЧЧ:ММ:СС-->
<StopNum>?</StopNum>
<!--StopNum - — количество остановок-->
<BookingCodes>
<BookingCode ClassType="?">
<!--ClassType - — класс перелета, например: economy-->
<BookingCode>?</BookingCode>
<!--BookingCode - — код класса бронирования, у разных авиакомпаний один и тот же класс
может записываться разными литерами, например: L-->
</BookingCode>
</BookingCodes>
<FlightTime>?</FlightTime>
<!--FlightTime - — время перелёта в минутах-->
<TimeZone Departure="?" Arrival="?"/>
<!--Departure временная зона аэропорта отправления-->
<!--Arrival - — временная зона аэропорта прибытия-->
<ETicket>?</ETicket>
<!--ETicket - — признак электронного билета, значения: true / false-->
</Segment>
</Segments>
<PricingInfo Refundable="?">
<!--Refundable - — возвратный/невозвратный, true/false. Если пустое, то не известно-->
<PassengerFare Type="?" Quantity="?">
<!--Type - — тип пассажира, возможные значения: ADT - — взрослые, CNN - — дети, INF - — младенцы, INS - — младенцы с местом--> <!--Quantity - — количество пассажиров данного типа-->
<BaseFare Currency="?" Amount="?"/>
<!--BaseFare - — базовая стоимость, в базовой валюте. Currency - — код валюты, Amount - — значение цены-->
<EquiveFare Currency="?" Amount="?"/>
<!--EquiveFare - — базовая стоимость, в эквивалентной валюте(валюте продажи). Currency - — код валюты, Amount - — значение цены-->
<TotalFare Currency="?" Amount="?"/>
<!--TotalFare - — суммарная стоимость, в эквивалентной валюте. Currency - — код валюты, Amount - — значение цены-->
<Taxes>
<Tax CurCode="?" TaxCode="?" Amount="?"/>
<!--CurCode - — код валюты, TaxCode - — код таксы, Amount - — сумма таксы-->
</Taxes>
<Tariffs>
<Tariff Code="?" SegNum="?"/>
<!--Code - — код тарифа, SegNum - — номер сегмента, к которому применён тариф-->
</Tariffs>
<FareCalc>?</FareCalc>
<!--FareCalc - — строка расчёта цены-->
<LastTicketDateTime>?</LastTicketDateTime>
<!--LastTicketDateTime - — дата и время таймлимита по выписке в формате ГГГГ-MM-ДДTЧЧ:ММ:СС-->
</PassengerFare>
</PricingInfo>
<Commission/>
<Charges Currency="?">?</Charges>
<!--Charges - — сборы, Currency - — код валюты-->
<TotalPrice Currency="?">?</TotalPrice>
<!--TotalPrice - — итоговая цена, Currency - — код валюты-->
</Flight>
<Agency Name="?">
<!--Name - — название агентства-->
<Telephone Type="?">
<!--Type - — тип номера, обязательный, возможные значения: M - — мобильный, H - — домашний, B - — рабочий, A - — агенство-->
<!--Optional:-->
<PhoneNumber>?</PhoneNumber>
<!--PhoneNumber - — номер телефона-->
<!--Optional:-->
<CountryAccessCode>?</CountryAccessCode>
<!--CountryAccessCode - — код страны-->
<!--Optional:-->
<AreaCityCode>?</AreaCityCode>
<!--AreaCityCode - — код региона/города-->
</Telephone>
<Address City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/>
<!--City - — город--> <!--State - — штат--> <!--StreetAddress - — адрес в городе (улица, дом, корпус, офис и т.д.)--> <!--PostalCode - — почтовый индекс--> <!--CountryCode - — код страны (RU, UA и т.п.)-->
</Agency>
<ItinReceipts Encoding="?" Format="?">
<!--ItinReceipts - — маршрут квитанция, Encoding - — кодировка, Format - — формат-->
<FareStored xsi:nil="true"/>
<Travellers>
<!--Zero or more repetitions:-->
<Traveller Type="?" IsContact="?" LinkedTo="?" Num="?" TravellerId="?">
<!--Type - — тип пассажира, обязательный, возможные значения: ADT - — взрослые, CNN - — дети со взрослыми,UNN - — дети без сопровождения взрослых, INF - — младенцы, INS - — младенцы с местом--> <!--IsContact - — если true - — то данный пассажир является контактным лицом, если false - — то не является,
контактное лицо может быть только 1, если среди пассажиров есть взрослые, то только кто-то из них
может быть контактным лицом, по умолчанию false-->
<!--Num - — порядковый номер пассажира, начинается с 1--> <!--LinkedTo - — номер взрослого, к которому привязан младенец/ребёнок--> <!--TravellerId - — устаревший параметр, не используется-->
<Meal>?</Meal>
<!--Meal - — код типа питания, возможные значения: 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 - — Восточное вегетарианское питание-->
<PersonalInfo DateOfBirth="?" Nationality="?" Gender="?">
<!--DateOfBirth - — дата рождения в формате ДД.ММ.ГГГГ (например 31.12.2000)--> <!--Nationality - — гражданство, двух буквенный код страны (RU, UA, US и т.д.)--> <!--Gender - — пол пассажира, возможные значения: M - — мужской(Male), F - — женский(Female)-->
<FirstName>?</FirstName>
<!--FirstName - — имя пассажира-->
<LastName>?</LastName>
<!--LastName - — фамилия пассажира-->
<!--Optional:-->
<MiddleName>?</MiddleName>
<!--MiddleName - — отчество пассажира-->
</PersonalInfo>
<LoyaltyCard OpCode="?" Number="?"/>
<!--OpCode - — код авиакомпании--> <!--Number - — номер карточки-->
<ContactInfo>
<!--Optional:-->
<EmailID>?</EmailID>
<!--EmailID - — контактный email-->
<!--Optional:-->
<Telephone Type="?">
<!--Type - — тип номера, возможные значения: M - — мобильный, H - — домашний, B - — рабочий-->
<!--Optional:-->
<PhoneNumber>?</PhoneNumber>
<!--PhoneNumber - — номер телефона-->
<!--Optional:-->
<CountryAccessCode>?</CountryAccessCode>
<!--CountryAccessCode - — код страны-->
<!--Optional:-->
<AreaCityCode>?</AreaCityCode>
<!--AreaCityCode - — код региона/города-->
</Telephone>
</ContactInfo>
<DocumentInfo DocType="?" DocNum="?" CountryCode="?" DocElapsedTime="?"/>
<!--DocType - — тип документа, возможные значения: Р - — Паспорт
A – Паспорт иностранца
С - — Внутренний гражданский паспорт
F – Документ заменяющий паспорт
М - — Воинское удостоверение
N – Сертификат натурализации(специфичный документ США)
T – Док.повторного въезда, паспорт беженца
V – Документ для пересечения границы-->
<!--DocNum - — номер документа--> <!--CountryCode - — двух буквенный код страны выдачи паспорта (RU, UA, US и т.д.)--> <!--DocElapsedTime - — срок истечения срока действия паспорта в ДД.ММ.ГГГ (например 31.12.2000)-->
<VisaInfo Num="?" IssueCountry="?" IssuePlace="?" BirthCountry="?" BirthCity="?" IssueDate="?"/>
<!--Num - — номер визы--> <!--IssueDate - — дата(ДД.ММ.ГГГГ) выдачи визы--> <!--IssueCountry - — страна выдачи визы--> <!--IssuePlace - — место выдачи визы--> <!--BirthCountry - — страна рождения(IATA код страны)--> <!--BirthCity - — город рождения(название)-->
<ArrAddress City="?" State="?" StreetAddress="?" PostalCode="?" CountryCode="?"/>
<!--City - — город--> <!--State - — штат или область въезда--> <!--StreetAddress - — адрес: улица, номер дома, квартиры и т.д.--> <!--PostalCode - — почтовый код--> <!--CountryCode - — код страны-->
<PreferedPlace SmokingAllowed="?" Location="?" RowNumber="?" PlaceNumber="?" SegNumber="?"/>
<!--Если указаны номер ряда и номер места, то параметры SmokingAllowed и Location игнорируются-->
<!--SmokingAllowed - — булевское значение, true - — место для курящих, false - — место для некурящих--> <!--Location - — положение места в ряде, возможные значения: W - — у окна (Window) M - — где-то в середине ряда (Middle) NPW - — возле прохода (NearPassengerWay) NS - — нет предпочтения (NotSpecified)--> <!--RowNumber - — номер ряда--> <!--PlaceNumber - — номер места--> <!--SegNumber - — номер сегмента-->
<DocStringFormats>
<!--Zero or more repetitions:-->
<DocStringFormat>?</DocStringFormat>
<!--DocStringFormat - — формат паспортной строки, возможные значения: DOCS - — строка формата DOCS, FOID - — строка формата FOID-->
</DocStringFormats>
</Traveller>
<Errors>
<Error Code="?">
<!--Code - — код ошибки в системе Nemo-->
<ServiceErrorMessage>?</ServiceErrorMessage>
<!--ServiceErrorMessage - — сообщение об ошибке полученное от веб-сервиса поставщика-->
<Message>?</Message>
<!--Message - — сообщение об ошибке от системы Nemo-->
</Error>
</Errors>
</div>
== Пример использования ==
Пример одностороннего перелета Москва - — Мадрид.
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
</div>
== Общий формат запроса / ответа отмены бронирования ==
После бронирования, если не истек таймлимит можно аннулировать сделанный заказ. Аннуляция заказа в Nemo может быть ручной (сделанной пользователем) и автоматической - — по истечению таймлимита, установленного для заказа система сама аннулирует заказ.
WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=CancelBook
<Request>
<CancelBook BookID="?"/>
<!--BookID - — Id брони в системе Nemo, целое число-->
</Request>
<Source>
<ClientId>?</ClientId>
<!--ClientId - — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе "Администрирование" ⇨ ? "Веб-служба. Авторизация".-->
<APIKey>?</APIKey>
<!--APIKey - — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе "Администрирование" ⇨ ? "Веб-служба. Авторизация".-->
<Language>?</Language>
<!--Language - — язык-->
<Currency>?</Currency>
<!-- CUrrency - — валюта-->
</Source>
</RequestBin>
<Response>
<CancelBook BookID="?">
<!--BookID - — Id брони в системе Nemo, целое число-->
<Result Success="?"/>
<!--Success - — результат отмены брони, true или false-->
</CancelBook>
<Requisites/>