|
|
| (не показано 87 промежуточных версий 4 участников) |
| Строка 1: |
Строка 1: |
| − | ==API Поиска авиабилетов== | + | ==API Авиабилетов== |
| − | === Подключение ===
| |
| | | | |
| | + | Чтобы авторизоваться в системе, в запросе необходимо указать APIKey и ClientID. Эти данные можно узнать в разделе Администрирование - Веб-сервис. Авторизация. Там же можно включить/выключить нотификацию для действий, совершенных через АПИ. |
| | + | |
| | + | === API Поиска авиабилетов === |
| | Это сервис внутри Nemo, который позволяет получить результаты поиска. | | Это сервис внутри Nemo, который позволяет получить результаты поиска. |
| | | | |
| | Для подключения к веб-службе поиска авиабилетов необходимо открыть доступ нужному пользователю. Это можно сделать в разделе '''«Администрирование»''' ⇨ '''«Веб-служба. Авторизация»'''. | | Для подключения к веб-службе поиска авиабилетов необходимо открыть доступ нужному пользователю. Это можно сделать в разделе '''«Администрирование»''' ⇨ '''«Веб-служба. Авторизация»'''. |
| | | | |
| − | После добавления пользователя, ему будут присвоены Номер (ClientId) и API ключ клиента, которые нужно использовать для подключения.
| + | Подробнее можно узнать в специальной статье [[Веб-служба поиска авиабилетов]] |
| − | | |
| − | WSDL находится по адресу: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=SearchFlights
| |
| − | | |
| − | === Общий формат запроса / ответа поиска ===
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | === API Бронирования авиабилетов === |
| − | ===== Запрос ===== | + | Сервис позволяет забронировать/войдировать авиабилет с использованием API, описание подключения, запроса, ответов находится в этой статье [[Веб-служба бронирования]] |
| − | <div class="mw-collapsible-content">
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DSearchFlights">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:search>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <SearchFlights LinkOnly="?">
| |
| − | <!--LinkOnly — Позволяет управлять выдачей результатов. true — вернуть только ссылку на результаты поиска,
| |
| − | без перелётов (занимает меньше времени), false — полная выдача, ссылки и перелёты.-->
| |
| − | <ODPairs Type="?" Direct="?" AroundDates="?">
| |
| − | <!--Type — тип перелёта, возможные значения: OW — туда, RT — туда-обратно, CR — сложный маршрут. Для перелета
| |
| − | туда-обратно или сложного маршрута необходимо добавить еще один или несколько тэгов ODPair, примеры далее-->
| |
| − | <!--Direct — искать только прямые перелёты, возможные значения: true/false-->
| |
| − | <!--AroundDates — поиск по окружным датам, количество дней +/- от даты заезда/возвращения, значения: 0, 1, 3.
| |
| − | Применим только для типов перелёта в одну сторону(OW) и туда-обратно(RT)-->
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <ODPair>
| |
| − | <DepDate>?</DepDate>
| |
| − | <!--DepDate — дата вылета, в формате ГГГГ-MM-ДД-->
| |
| − | <DepAirp CodeType="IATA">?</DepAirp>
| |
| − | <!--DepAirp — аэропорт вылета, IATA код-->
| |
| − | <ArrAirp CodeType="IATA">?</ArrAirp>
| |
| − | <!--ArrAirp — аэропорт прилёта, IATA код-->
| |
| − | </ODPair>
| |
| − | </ODPairs>
| |
| − | <Travellers>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Traveller Type="?" Count="?"/>
| |
| − | <!--Type — тип пассажира, возможные значения: ADT — взрослые, CNN — дети,
| |
| − | INF — младенцы, INS — младенцы с местом-->
| |
| − | <!--Count — количество пассажиров-->
| |
| − | </Travellers>
| |
| − | <Restrictions>
| |
| − | <ClassPref>?</ClassPref> <!--необязательный-->
| |
| − | <!--ClassPref — предпочитаемый класс поиска, возможные значения: economy, business, first.
| |
| − | Если не заполнять, то будет произведен поиск эконом класса-->
| |
| − | <OnlyAvail>?</OnlyAvail> <!--необязательный-->
| |
| − | <!--OnlyAvail — искать только доступные, возможные значения: true/false-->
| |
| − | <AirVPrefs>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <AirVPref Code="?" Include="?" Type="IATA"/> <!--необязательный-->
| |
| − | <!--Code — код авиакомпании, SU, FV и т.п.-->
| |
| − | <!--Include — включить или исключить авиакомпанию из результатов: true — включить, false — исключить-->
| |
| − | </AirVPrefs>
| |
| − | <IncludePrivateFare>?</IncludePrivateFare> <!--необязательный-->
| |
| − | <!--IncludePrivateFare — искать цены для агентства, если true — то включаем приватные, false — публичные-->
| |
| − | <CurrencyCode>?</CurrencyCode> <!--необязательный-->
| |
| − | <!--CurrencyCode — код валюты, например: RUB, EUR-->
| |
| − | </Restrictions>
| |
| − | </SearchFlights>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId>?</ClientId>
| |
| − | <!--ClientId — ID клиента в системе Nemo. Можно посмотреть/добавить в разделе
| |
| − | "Администрирование" ? "Веб-служба. Авторизация".-->
| |
| − | <APIKey>?</APIKey>
| |
| − | <!--APIKey — секретный ключ доступа к API Nemo. Можно посмотреть/добавить в разделе
| |
| − | "Администрирование" ? "Веб-служба. Авторизация".-->
| |
| − | <Language>?</Language>
| |
| − | <!--Language — язык, например: RU-->
| |
| − | <Currency>?</Currency>
| |
| − | <!-- Currency — валюта, например: RUB, EUR-->
| |
| − | <ShowNames>?</ShowNames>
| |
| − | <!-- ShowNames — отображение названий аэропортов, авиакомпаний и воздушных судов: true - отображать, false - не отображать. Возвращает значение на том языке, который был указан в запросе. Для RU - русский вариант, для UKR, EN, ES - латинский вариант. Опциональный элемент. -->
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:search>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | === API Выписки авиабилетов === |
| | | | |
| − | ===== Ответ =====
| + | Агентский АПИ выписки позволяет определить валидирующего перевозчика и значение комиссии от авиакомпании для брони, а также запустить процедуру выписки билета. [[Веб-служба выписки]] |
| − | <div class="mw-collapsible-content">
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DSearchFlights" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:searchResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <SearchFlights>
| |
| − | <Flights SearchId="?" ResultURL="?">
| |
| − | <!--SearchId — номер процесса поиска в Nemo-->
| |
| − | <!--ResultURL — ссылка на страницу просмотра результатов на сайте агентства-->
| |
| − | <Flight FlightId="?">
| |
| − | <!--FlightId — Id перелёта в системе Nemo-->
| |
| − | <WebService>?</WebService>
| |
| − | <!--WebService — поставщик перелёта-->
| |
| − | <ValCompany>?</ValCompany>
| |
| − | <!--ValCompany — код авиакомпании, являющейся валидирующим перевозчиком, IATA-->
| |
| − | <URL>?</URL>
| |
| − | <!--URL — ссылка на бронирование конкретного перелета-->
| |
| − | <Segments>
| |
| − | <Segment SegNum="?" SegGroupNum="?">
| |
| − | <!--SegNum — номер сегмента в перелёте-->
| |
| − | <!--SegGroupNum – номер плеча перелёта-->
| |
| − | <DepAirp CodeType="IATA" Name="?">?</DepAirp>
| |
| − | <!--DepAirp — аэропорт отправления, например: MOW — любой аэропорт в г.Москва или SVO — Шереметьево. Name - название аэропорта отправления-->
| |
| − | <DepTerminal>?</DepTerminal>
| |
| − | <!--DepTerminal — терминал пункта отправления, если пустое значение,
| |
| − | то в аэропорту всего 1 терминал-->
| |
| − | <ArrAirp CodeType="IATA" Name="?">?</ArrAirp>
| |
| − | <!--ArrAirp — аэропорт прибытия. Name - название аэропорта прибытия-->
| |
| − | <ArrTerminal>?</ArrTerminal>
| |
| − | <!--ArrTerminal — терминал пункта прибытия, если пустое значение,
| |
| − | то в аэропорту всего 1 терминал-->
| |
| − | <OpAirline>?</OpAirline>
| |
| − | <!--OpAirline — авиакомпания перевозчик, например: SU — Аэрофлот-->
| |
| − | <OpAirlineName>?</OpAirlineName>
| |
| − | <!--OpAirlineName — название авиакомпании перевозчика, например: Аэрофлот - Российские авиалинии -->
| |
| − | <MarkAirline>?</MarkAirline>
| |
| − | <!--MarkAirline — авиакомпания, продающая перелёт-->
| |
| − | <MarkAirlineName>?</MarkAirlineName>
| |
| − | <!--MarkAirlineName — название авиакомпании, продающей перелёт-->
| |
| − | <FlightNumber>?</FlightNumber>
| |
| − | <!--FlightNumber — номер рейса-->
| |
| − | <AircraftName>?</AircraftName>
| |
| − | <!--AircraftName — название воздушного судна. Например: Airbus 320-->
| |
| − | <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>
| |
| − | <Flight>...</Flight>
| |
| − | ....................
| |
| − | <Flight>...</Flight>
| |
| − | </Flights>
| |
| − | <Errors>
| |
| − | <Error Code="?">
| |
| − | <!--Code — код ошибки в системе Nemo-->
| |
| − | <ServiceErrorMessage>?</ServiceErrorMessage>
| |
| − | <!--ServiceErrorMessage — сообщение об ошибке полученное от веб-сервиса поставщика-->
| |
| − | <Message>?</Message>
| |
| − | <!--Message — сообщение об ошибке от системы Nemo-->
| |
| − | </Error>
| |
| − | </Errors>
| |
| − | </SearchFlights>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:searchResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| − | В ссылках на просмотр страницы результата поиска и на бронирование конкретного перелета, домен агентства/субагентства определяется следующим образом:
| + | === API Оплаты === |
| − | * Если текущий домен агентства/субагентства есть в настройках ('''Администрирование''' ⇨ '''Настройки агентства''' ⇨ '''Доменное имя сайта для загрузки настроек'''), то этот домен используется в ссылках.
| |
| − | * Если текущего домена нет в настройках, то используется первый домен из настроек.
| |
| − | * Если в настройках не прописано ни одного домена, то используется текущий домен.
| |
| | | | |
| − | На поиск действуют ограничения заданные в настройках агентства, в частности ограничения по пассажирам и ограничение ближайшей разрешенной даты поиска билетов.
| + | Сервис внутри Nemo, который предназначен для выполнения различных операций, относящихся к оплате заказов. [[Агентские АПИ оплаты]] |
| − | * Если дата поиска меньше ближайшей разрешенной даты для поиска билетов, то выводится сообщение об ошибке Invalid search param: Неверная дата вылета: слишком близкая
| |
| − | * Если количество взрослых пассажиров превышает допустимое ограничение - Invalid search param: Слишком много взрослых
| |
| − | * Если количество детей в поисковом запросе превышает допустимое ограничение - Invalid search param: Слишком много детей
| |
| − | * Если количество младенцев в поисковом запросе превышает допустимое ограничение - Invalid search param: Слишком много инфантов
| |
| − | * Если количество младенцев с местом в поисковом запросе превышает допустимое ограничение - Invalid search param: Слишком много инфантов
| |
| | | | |
| − | === Примеры использования === | + | === API Дополнительных запросов авиабилетов === |
| | | | |
| − | ==== Односторонний перелет ====
| + | К дополнительных запросам относятся проверка на доступность, запрос на обновление заказа, чтение тарифных правил. [[Дополнительные запросы АПИ авиабилетов]] |
| | | | |
| − | Пример одностороннего перелета: Москва — Мадрид, 1 взрослый, 1 ребенок, эконом класс, предпочитаемая авиакомпания — Аэрофлот.
| + | === Используемые параметры === |
| | | | |
| | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> |
| − | ===== Запрос ===== | + | ==== Параметры, используемые в запросах ==== |
| | <div class="mw-collapsible-content"> | | <div class="mw-collapsible-content"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | <table border="1"> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DSearchFlights">
| + | <tr bgcolor="#CCCCCC"> |
| − | <soapenv:Header/>
| + | <th> Имя элемента </th><th> Обязательный </th><th> Тип </th><th> Описание </th> |
| − | <soapenv:Body>
| + | </tr> |
| − | <ver:search>
| + | <tr> |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <SearchFlights LinkOnly="false">
| |
| − | <ODPairs Type="OW" Direct="false" AroundDates="0">
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <ODPair>
| |
| − | <DepDate>2014-03-20</DepDate>
| |
| − | <DepAirp CodeType="IATA">MOW</DepAirp>
| |
| − | <ArrAirp CodeType="IATA">MAD</ArrAirp>
| |
| − | </ODPair>
| |
| − | </ODPairs>
| |
| − | <Travellers>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Traveller Type="ADT" Count="1"/>
| |
| − | <Traveller Type="CNN" Count="1"/>
| |
| − | </Travellers>
| |
| − | <Restrictions>
| |
| − | <ClassPref>economy</ClassPref>
| |
| − | <OnlyAvail>false</OnlyAvail>
| |
| − | <AirVPrefs>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <AirVPref Code="SU" Include="true" Type="IATA"/>
| |
| − | </AirVPrefs>
| |
| − | <IncludePrivateFare>false</IncludePrivateFare>
| |
| − | <CurrencyCode>RUB</CurrencyCode>
| |
| − | </Restrictions>
| |
| − | </SearchFlights>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId>---</ClientId>
| |
| − | <APIKey>---</APIKey>
| |
| − | <Language>RU</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | <ShowNames>true</ShowNames>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:search>
| |
| − | </soapenv:Body> | |
| − | </soapenv:Envelope> | |
| − | </syntaxhighlight> | |
| − | </div>
| |
| − | </div>
| |
| − | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| |
| | | | |
| − | ===== Ответ =====
| + | <td>BookFlight </td><td>да </td><td>сложный </td><td>Контейнер для тела запроса бронирования</td> |
| − | <div class="mw-collapsible-content">
| + | </tr> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| + | <tr> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIEN_DOMAIN/nemoflights/?version%3D1.0%26for%3DSearchFlights" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| + | <td>FlightId </td><td class="col1">да </td><td>число</td><td >Id перелёта для которого будет производится бронирование(поиск тарифных правил, проверка доступности)</td> |
| − | <SOAP-ENV:Body>
| + | </tr> |
| − | <ns1:searchResponse>
| + | <tr> |
| − | <ResponseBin>
| + | <td>CurrencyCode </td><td>нет</td><td>строка</td><td>Трёх буквенный код валюты (обязателен для комиссии в валюте)</td> |
| − | <Response>
| |
| − | <SearchFlights>
| |
| − | <Flights SearchId="13949" ResultURL="http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dsearch%2Fview_results%26uid%3D13949">
| |
| − | <Flight FlightId="168090001">
| |
| − | <WebService>SABRE</WebService>
| |
| − | <ValCompany/>
| |
| − | <URL>http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dbooking%2Finfo%26uid%3D13949%26flight%3D168090001</URL>
| |
| − | <Segments>
| |
| − | <Segment SegNum="1" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA" Name="Шереметьево, Москва">SVO</DepAirp>
| |
| − | <DepTerminal/>
| |
| − | <ArrAirp CodeType="IATA" Name="Мадрид">MAD</ArrAirp>
| |
| − | <ArrTerminal/>
| |
| − | <OpAirline>SU</OpAirline>
| |
| − | <OpAirlineName>Аэрофлот - Российские авиалинии</OpAirlineName>
| |
| − | <MarkAirline>SU</MarkAirline>
| |
| − | <MarkAirlineName>Аэрофлот - Российские авиалинии</MarkAirlineName>
| |
| − | <FlightNumber>2500</FlightNumber>
| |
| − | <AircraftName>Airbus 320</AircraftName>
| |
| − | <AircraftType>320</AircraftType>
| |
| − | <DepDateTime>2014-03-20T08:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-03-20T10:15:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>E</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>310</FlightTime>
| |
| − | <TimeZone Departure="4" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | </Segments>
| |
| − | <PricingInfo Refundable="false">
| |
| − | <PassengerFare Type="ADT" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="165"/>
| |
| − | <EquiveFare Currency="RUB" Amount="8250"/>
| |
| − | <TotalFare Currency="RUB" Amount="10535"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU MAD225.45NUC225.45END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-09T23:59:59</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | <PassengerFare Type="CNN" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="124"/>
| |
| − | <EquiveFare Currency="RUB" Amount="6200"/>
| |
| − | <TotalFare Currency="RUB" Amount="8485"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU MAD169.08NUC169.08END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-09T23:59:59</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | </PricingInfo>
| |
| − | <Commission/>
| |
| − | <Charges Currency="RUB">0</Charges>
| |
| − | <TotalPrice Currency="RUB">19020</TotalPrice>
| |
| − | </Flight>
| |
| − | <Flight FlightId="168090002">
| |
| − | <WebService>SABRE</WebService>
| |
| − | <ValCompany/>
| |
| − | <URL>http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dbooking%2Finfo%26uid%3D13949%26flight%3D168090002</URL>
| |
| − | <Segments>
| |
| − | <Segment SegNum="1" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA">SVO</DepAirp>
| |
| − | <DepTerminal/>
| |
| − | <ArrAirp CodeType="IATA">MAD</ArrAirp>
| |
| − | <ArrTerminal/>
| |
| − | <OpAirline>SU</OpAirline>
| |
| − | <MarkAirline>SU</MarkAirline>
| |
| − | <FlightNumber>2604</FlightNumber>
| |
| − | <AircraftType>320</AircraftType>
| |
| − | <DepDateTime>2014-03-20T20:30:00</DepDateTime>
| |
| − | <ArrDateTime>2014-03-20T22:40:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>E</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>310</FlightTime>
| |
| − | <TimeZone Departure="4" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | </Segments>
| |
| − | <PricingInfo Refundable="false">
| |
| − | <PassengerFare Type="ADT" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="165"/>
| |
| − | <EquiveFare Currency="RUB" Amount="8250"/>
| |
| − | <TotalFare Currency="RUB" Amount="10535"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU MAD225.45NUC225.45END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-09T23:59:59</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | <PassengerFare Type="CNN" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="124"/>
| |
| − | <EquiveFare Currency="RUB" Amount="6200"/>
| |
| − | <TotalFare Currency="RUB" Amount="8485"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU MAD169.08NUC169.08END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-09T23:59:59</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | </PricingInfo>
| |
| − | <Commission/>
| |
| − | <Charges Currency="RUB">0</Charges>
| |
| − | <TotalPrice Currency="RUB">19020</TotalPrice>
| |
| − | </Flight>
| |
| − | <Flight FlightId="168090003">
| |
| − | <WebService>SABRE</WebService>
| |
| − | <ValCompany/>
| |
| − | <URL>http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dbooking%2Finfo%26uid%3D13949%26flight%3D168090003</URL>
| |
| − | <Segments>
| |
| − | <Segment SegNum="1" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA">SVO</DepAirp>
| |
| − | <DepTerminal/>
| |
| − | <ArrAirp CodeType="IATA">BCN</ArrAirp>
| |
| − | <ArrTerminal/>
| |
| − | <OpAirline>SU</OpAirline>
| |
| − | <MarkAirline>SU</MarkAirline>
| |
| − | <FlightNumber>2638</FlightNumber>
| |
| − | <AircraftType>321</AircraftType>
| |
| − | <DepDateTime>2014-03-20T09:10:00</DepDateTime>
| |
| − | <ArrDateTime>2014-03-20T10:40:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>E</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>270</FlightTime>
| |
| − | <TimeZone Departure="4" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="2" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA">BCN</DepAirp>
| |
| − | <DepTerminal/>
| |
| − | <ArrAirp CodeType="IATA">MAD</ArrAirp>
| |
| − | <ArrTerminal/>
| |
| − | <OpAirline>UX</OpAirline>
| |
| − | <MarkAirline>SU</MarkAirline>
| |
| − | <FlightNumber>3403</FlightNumber>
| |
| − | <AircraftType>738</AircraftType>
| |
| − | <DepDateTime>2014-03-20T12:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-03-20T13:25:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>E</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>80</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | </Segments>
| |
| − | <PricingInfo Refundable="false">
| |
| − | <PassengerFare Type="ADT" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="165"/>
| |
| − | <EquiveFare Currency="RUB" Amount="8250"/>
| |
| − | <TotalFare Currency="RUB" Amount="13681"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | <Tax CurCode="RUB" TaxCode="JD" Amount="675"/>
| |
| − | <Tax CurCode="RUB" TaxCode="QV" Amount="186"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU X/BCN SU MAD225.45NUC225.45END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-09T23:59:59</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | <PassengerFare Type="CNN" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="124"/>
| |
| − | <EquiveFare Currency="RUB" Amount="6200"/>
| |
| − | <TotalFare Currency="RUB" Amount="11631"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="2100"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="185"/>
| |
| − | <Tax CurCode="RUB" TaxCode="JD" Amount="675"/>
| |
| − | <Tax CurCode="RUB" TaxCode="QV" Amount="186"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU X/BCN SU MAD169.08NUC169.08END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-09T23:59:59</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | </PricingInfo>
| |
| − | <Commission/>
| |
| − | <Charges Currency="RUB">0</Charges>
| |
| − | <TotalPrice Currency="RUB">25312</TotalPrice>
| |
| − | </Flight>
| |
| − | .........
| |
| − | <Flight>...</Flight>
| |
| − | </Flights>
| |
| − | <Errors xsi:nil="true"/>
| |
| − | </SearchFlights>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:searchResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | ==== Перелет туда-обратно ====
| + | </tr> |
| | + | <tr> |
| | + | <td>Agency </td><td>да </td><td>сложный </td><td>Информация об агентстве</td> |
| | | | |
| − | Пример перелета туда-обратно: Москва — Париж, 2 взрослых, бизнес класс. '''Выдача с именами авиакомпаний, воздушных судов, аэропортов.'''
| + | </tr> |
| | + | <tr> |
| | + | <td>Name </td><td>да </td><td>строка </td><td>Название агентства</td> |
| | + | </tr> |
| | + | <tr> |
| | + | <td>Telephone </td><td>нет </td><td>сложный </td><td>Контактный телефон агентства</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr> |
| − | <div class="mw-collapsible-content">
| + | <td>Type</td><td>да </td><td>строка </td><td>Тип номера, возможные значения: M - мобильный, H - домашний, B - рабочий, A - агентство</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DSearchFlights">
| + | <tr> |
| − | <soapenv:Header/>
| + | <td>PhoneNumber </td><td>да </td><td>строка </td><td>Номер телефона</td> |
| − | <soapenv:Body>
| |
| − | <ver:search>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <SearchFlights LinkOnly="false">
| |
| − | <ODPairs Type="RT" Direct="false" AroundDates="0">
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <ODPair>
| |
| − | <DepDate>2014-12-20</DepDate>
| |
| − | <DepAirp CodeType="IATA">MOW</DepAirp>
| |
| − | <ArrAirp CodeType="IATA">PAR</ArrAirp>
| |
| − | </ODPair>
| |
| − | <ODPair>
| |
| − | <DepDate>2014-12-21</DepDate>
| |
| − | <DepAirp CodeType="IATA">PAR</DepAirp>
| |
| − | <ArrAirp CodeType="IATA">MOW</ArrAirp>
| |
| − | </ODPair>
| |
| − | </ODPairs>
| |
| − | <Travellers>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Traveller Type="ADT" Count="2"/>
| |
| − | </Travellers>
| |
| − | <Restrictions>
| |
| − | <ClassPref>business</ClassPref>
| |
| − | <OnlyAvail>false</OnlyAvail>
| |
| − | <AirVPrefs/>
| |
| − | <IncludePrivateFare>false</IncludePrivateFare>
| |
| − | <CurrencyCode>RUB</CurrencyCode>
| |
| − | </Restrictions>
| |
| − | </SearchFlights>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId>---</ClientId>
| |
| − | <APIKey>---</APIKey>
| |
| − | <Language>RU</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | <ShowNames>true</ShowNames>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:search>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div> | |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| | + | <tr> |
| | + | <td>CountryAccessCode </td><td>нет </td><td>строка </td><td>Код страны</td> |
| | + | </tr> |
| | + | <tr> |
| | + | <td>AreaCityCode </td><td>нет </td><td>строка</td><td>Код региона/города</td> |
| | | | |
| − | ===== Ответ =====
| + | </tr> |
| − | <div class="mw-collapsible-content">
| + | <tr> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | <td>Address</td><td>да </td><td>сложный </td><td class="col3">Адрес агентства</td> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DSearchFlights" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| + | </tr> |
| − | <SOAP-ENV:Body>
| + | <tr> |
| − | <ns1:searchResponse>
| + | <td>City</td><td>да </td><td class="col2">строка </td><td>Город, в котором расположено агентство</td> |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <SearchFlights>
| |
| − | <Flights SearchId="190484987" ResultURL="http%3A%2F%2Ftst.nemo.travel%2F%3Fgo%3Dsearch%2Fview_results%26uid%3D190484987">
| |
| − | <Flight FlightId="372384680001">
| |
| − | <WebService>SABRE</WebService>
| |
| − | <ValCompany/>
| |
| − | <URL>http%3A%2F%2Ftst.nemo.travel%2F%3Fgo%3Dbooking%2Finfo%26uid%3D190484987%26flight%3D372384680001%26utm_source%3Dalias1</URL>
| |
| − | <Segments>
| |
| − | <Segment SegNum="1" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA" Name="Шереметьево, Москва">SVO</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Белград, Никола Тесла">BEG</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>JU</OpAirline>
| |
| − | <OpAirlineName>ДЖАТ Эйрвэйз</OpAirlineName>
| |
| − | <MarkAirline>JU</MarkAirline>
| |
| − | <MarkAirlineName>ДЖАТ Эйрвэйз</MarkAirlineName>
| |
| − | <FlightNumber>657</FlightNumber>
| |
| − | <AircraftName>Airbus 319</AircraftName>
| |
| − | <AircraftType>319</AircraftType>
| |
| − | <DepDateTime>2014-12-20T05:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-20T06:05:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="business">
| |
| − | <BookingCode>W</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>180</FlightTime>
| |
| − | <TimeZone Departure="3" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="2" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA" Name="Белград, Никола Тесла">BEG</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Шарль де Голль, Париж">CDG</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>JU</OpAirline>
| |
| − | <OpAirlineName>ДЖАТ Эйрвэйз</OpAirlineName>
| |
| − | <MarkAirline>JU</MarkAirline>
| |
| − | <MarkAirlineName>ДЖАТ Эйрвэйз</MarkAirlineName>
| |
| − | <FlightNumber>314</FlightNumber>
| |
| − | <AircraftName>Airbus 320</AircraftName>
| |
| − | <AircraftType>320</AircraftType>
| |
| − | <DepDateTime>2014-12-20T17:10:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-20T19:50:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="business">
| |
| − | <BookingCode>W</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>160</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="3" SegGroupNum="1">
| |
| − | <DepAirp CodeType="IATA" Name="Шарль де Голль, Париж">CDG</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Белград, Никола Тесла">BEG</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>JU</OpAirline>
| |
| − | <OpAirlineName>ДЖАТ Эйрвэйз</OpAirlineName>
| |
| − | <MarkAirline>JU</MarkAirline>
| |
| − | <MarkAirlineName>ДЖАТ Эйрвэйз</MarkAirlineName>
| |
| − | <FlightNumber>311</FlightNumber>
| |
| − | <AircraftName>Airbus 320</AircraftName>
| |
| − | <AircraftType>320</AircraftType>
| |
| − | <DepDateTime>2014-12-21T10:10:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-21T12:30:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="business">
| |
| − | <BookingCode>W</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>140</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="4" SegGroupNum="1">
| |
| − | <DepAirp CodeType="IATA" Name="Белград, Никола Тесла">BEG</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Шереметьево, Москва">SVO</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>JU</OpAirline>
| |
| − | <OpAirlineName>ДЖАТ Эйрвэйз</OpAirlineName>
| |
| − | <MarkAirline>JU</MarkAirline>
| |
| − | <MarkAirlineName>ДЖАТ Эйрвэйз</MarkAirlineName>
| |
| − | <FlightNumber>656</FlightNumber>
| |
| − | <AircraftName>Airbus 319</AircraftName>
| |
| − | <AircraftType>319</AircraftType>
| |
| − | <DepDateTime>2014-12-21T23:20:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-22T04:10:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="business">
| |
| − | <BookingCode>W</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>170</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="3"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | </Segments>
| |
| − | <PricingInfo Refundable="true">
| |
| − | <PassengerFare Type="ADT" Quantity="2">
| |
| − | <BaseFare Currency="EUR" Amount="620"/>
| |
| − | <EquiveFare Currency="RUB" Amount="34720"/>
| |
| − | <TotalFare Currency="RUB" Amount="44430"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="1176"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="1176"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="1176"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="1176"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RI" Amount="428"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RI" Amount="428"/>
| |
| − | <Tax CurCode="RUB" TaxCode="UH" Amount="304"/>
| |
| − | <Tax CurCode="RUB" TaxCode="LG" Amount="185"/>
| |
| − | <Tax CurCode="RUB" TaxCode="LG" Amount="185"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RS" Amount="224"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RS" Amount="224"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RF" Amount="55"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RF" Amount="55"/>
| |
| − | <Tax CurCode="RUB" TaxCode="FR1" Amount="434"/>
| |
| − | <Tax CurCode="RUB" TaxCode="FR4" Amount="714"/>
| |
| − | <Tax CurCode="RUB" TaxCode="QX3" Amount="1546"/>
| |
| − | <Tax CurCode="RUB" TaxCode="IZ4" Amount="224"/>
| |
| − | </Taxes>
| |
| − | <Tariffs>
| |
| − | <Tariff Code="WRTRU" SegNum="4"/>
| |
| − | </Tariffs>
| |
| − | <FareCalc>MOW JU X/BEG JU PAR401.57JU X/BEG JU MOW401.57NUC803.14END ROE0.771963</FareCalc>
| |
| − | <LastTicketDateTime>2014-12-20T04:05:00</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | </PricingInfo>
| |
| − | <Commission/>
| |
| − | <Charges Currency="RUB">0</Charges>
| |
| − | <TotalPrice Currency="RUB">88860</TotalPrice>
| |
| − | </Flight>
| |
| − | .........
| |
| − | <Flight>...</Flight>
| |
| − | </Flights>
| |
| − | <Errors xsi:nil="true"/>
| |
| − | </SearchFlights>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:searchResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | ==== Сложный маршрут ====
| + | </tr> |
| | + | <tr> |
| | + | <td>StreetAddress </td><td>нет </td><td>сложный </td><td>Адрес агентства в городе (улица, дом, корпус, офис и т.д.)</td> |
| | + | </tr> |
| | + | <tr> |
| | + | <td>PostalCode </td><td>нет </td><td>строка </td><td>Почтовый код, индекс.</td> |
| | | | |
| − | Пример сложного маршрута: Прага — Москва — Милан — Мадрид, 1 взрослый, 1 младенец, эконом класс. '''Выдача с именами авиакомпаний, воздушных судов, аэропортов.'''
| + | </tr> |
| | + | <tr> |
| | + | <td>CountryCode </td><td>нет </td><td>строка </td><td>Код страны (RU, UA, US и т.д.)</td> |
| | + | </tr> |
| | + | <tr> |
| | + | <td>Travellers </td><td>да </td><td>сложный </td><td>Контейнер для информации о пассажирах (для которых будет производится поиск перелёта, бронирование)</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">Traveller </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Информация о пассажире</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DSearchFlights"> | + | <tr class="row24"> |
| − | <soapenv:Header/>
| + | <td>Type</td><td>да</td><td>строка</td><td>Тип пассажира возможные значения: ADT - взрослые, CNN - дети, UNN - дети без сопровождения взрослых, INF - младенцы, INS - младенцы с местом</td> |
| − | <soapenv:Body>
| |
| − | <ver:search>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <SearchFlights LinkOnly="false">
| |
| − | <ODPairs Type="CR" Direct="false" AroundDates="0">
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <ODPair>
| |
| − | <DepDate>2014-12-20</DepDate>
| |
| − | <DepAirp CodeType="IATA">PRG</DepAirp>
| |
| − | <ArrAirp CodeType="IATA">MOW</ArrAirp>
| |
| − | </ODPair>
| |
| − | <ODPair>
| |
| − | <DepDate>2014-12-23</DepDate>
| |
| − | <DepAirp CodeType="IATA">MOW</DepAirp>
| |
| − | <ArrAirp CodeType="IATA">MIL</ArrAirp>
| |
| − | </ODPair>
| |
| − | <ODPair>
| |
| − | <DepDate>2014-12-27</DepDate>
| |
| − | <DepAirp CodeType="IATA">MIL</DepAirp>
| |
| − | <ArrAirp CodeType="IATA">MAD</ArrAirp>
| |
| − | </ODPair>
| |
| − | </ODPairs>
| |
| − | <Travellers>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Traveller Type="ADT" Count="1"/>
| |
| − | <Traveller Type="INF" Count="1"/>
| |
| − | </Travellers>
| |
| − | <Restrictions>
| |
| − | <ClassPref>economy</ClassPref>
| |
| − | <OnlyAvail>false</OnlyAvail>
| |
| − | <AirVPrefs/>
| |
| − | <IncludePrivateFare>false</IncludePrivateFare>
| |
| − | <CurrencyCode>RUB</CurrencyCode>
| |
| − | </Restrictions>
| |
| − | </SearchFlights>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId>134</ClientId>
| |
| − | <APIKey>93632C10DA299034C03D742FB160C2D6</APIKey>
| |
| − | <Language>RU</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | <ShowNames>true</ShowNames>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:search>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| | + | <tr class="row25"> |
| | + | <td class="col0">IsContact </td><td class="col1">нет</td><td class="col2">булевский </td><td class="col3">Индикатор показывающий является ли данное лицо контактным, возможные значение: true - пассажир является контактным лицом, false - не является. Контактное лицо может быть только одно, если среди пассажиров есть взрослые, то только кто-то из них может быть контактным лицом. Если не указано, то по умолчанию false.</td> |
| | + | </tr> |
| | + | <tr class="row26"> |
| | + | <td class="col0">LinkedTo </td><td class="col1">нет </td><td class="col2">целое число </td><td class="col3">Номер взрослого, к которому привязан младенец/ребёнок (привязка ребёнка ко взрослому является опциональной)</td> |
| | | | |
| − | ===== Ответ =====
| + | </tr> |
| − | <div class="mw-collapsible-content">
| + | <tr class="row27"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| + | <td class="col0">Num </td><td class="col1">да </td><td class="col2">число </td><td class="col3">Номер пассажира.</td> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://trunk.mlsd.ru/nemoflights/?version%3D1.0%26for%3DSearchFlights" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | + | </tr> |
| − | <SOAP-ENV:Body>
| + | <tr class="row28"> |
| − | <ns1:searchResponse>
| + | <td class="col0">PreferedPlace </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Информация о предпочитаемом месте. Если указаны номер ряда и номер места, то параметры Smoking и Location игнорируются и могут быть не указаны.</td> |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <SearchFlights>
| |
| − | <Flights SearchId="190491108" ResultURL="http%3A%2F%2Ftst.nemo.travel%2F%3Fgo%3Dsearch%2Fview_results%26uid%3D190491108">
| |
| − | <Flight FlightId="372394480001">
| |
| − | <WebService>SABRE</WebService>
| |
| − | <ValCompany/>
| |
| − | <URL>http%3A%2F%2Ftst.nemo.travel%2F%3Fgo%3Dbooking%2Finfo%26uid%3D190491108%26flight%3D372394480001%26utm_source%3Dalias1</URL>
| |
| − | <Segments>
| |
| − | <Segment SegNum="1" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA" Name="Прага">PRG</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Цюрих">ZRH</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>LX</OpAirline>
| |
| − | <OpAirlineName>Свисс Интернешнл Эйрлайнз</OpAirlineName>
| |
| − | <MarkAirline>LX</MarkAirline>
| |
| − | <MarkAirlineName>Свисс Интернешнл Эйрлайнз</MarkAirlineName>
| |
| − | <FlightNumber>1485</FlightNumber>
| |
| − | <AircraftName>Avro RJ100</AircraftName>
| |
| − | <AircraftType>AR1</AircraftType>
| |
| − | <DepDateTime>2014-12-20T10:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-20T11:30:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>K</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>85</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="2" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA" Name="Цюрих">ZRH</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Домодедово, Москва">DME</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>LX</OpAirline>
| |
| − | <OpAirlineName>Свисс Интернешнл Эйрлайнз</OpAirlineName>
| |
| − | <MarkAirline>LX</MarkAirline>
| |
| − | <MarkAirlineName>Свисс Интернешнл Эйрлайнз</MarkAirlineName>
| |
| − | <FlightNumber>1326</FlightNumber>
| |
| − | <AircraftName>Airbus 321</AircraftName>
| |
| − | <AircraftType>321</AircraftType>
| |
| − | <DepDateTime>2014-12-20T12:20:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-20T17:50:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>K</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>210</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="3"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="3" SegGroupNum="1">
| |
| − | <DepAirp CodeType="IATA" Name="Домодедово, Москва">DME</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Цюрих">ZRH</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>LX</OpAirline>
| |
| − | <OpAirlineName>Свисс Интернешнл Эйрлайнз</OpAirlineName>
| |
| − | <MarkAirline>LX</MarkAirline>
| |
| − | <MarkAirlineName>Свисс Интернешнл Эйрлайнз</MarkAirlineName>
| |
| − | <FlightNumber>1325</FlightNumber>
| |
| − | <AircraftName>Airbus 321</AircraftName>
| |
| − | <AircraftType>321</AircraftType>
| |
| − | <DepDateTime>2014-12-23T09:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-23T10:50:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>V</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>225</FlightTime>
| |
| − | <TimeZone Departure="3" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="4" SegGroupNum="1">
| |
| − | <DepAirp CodeType="IATA" Name="Цюрих">ZRH</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Мальпенса, Милан">MXP</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>LX</OpAirline>
| |
| − | <OpAirlineName>Свисс Интернешнл Эйрлайнз</OpAirlineName>
| |
| − | <MarkAirline>LX</MarkAirline>
| |
| − | <MarkAirlineName>Свисс Интернешнл Эйрлайнз</MarkAirlineName>
| |
| − | <FlightNumber>1628</FlightNumber>
| |
| − | <AircraftName>Avro RJ100</AircraftName>
| |
| − | <AircraftType>AR1</AircraftType>
| |
| − | <DepDateTime>2014-12-23T12:25:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-23T13:20:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>K</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>55</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="5" SegGroupNum="2">
| |
| − | <DepAirp CodeType="IATA" Name="Мальпенса, Милан">MXP</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Цюрих">ZRH</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>LX</OpAirline>
| |
| − | <OpAirlineName>Свисс Интернешнл Эйрлайнз</OpAirlineName>
| |
| − | <MarkAirline>LX</MarkAirline>
| |
| − | <MarkAirlineName>Свисс Интернешнл Эйрлайнз</MarkAirlineName>
| |
| − | <FlightNumber>1639</FlightNumber>
| |
| − | <AircraftName>Avro RJ100</AircraftName>
| |
| − | <AircraftType>AR1</AircraftType>
| |
| − | <DepDateTime>2014-12-27T07:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-27T08:05:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>K</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>60</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="6" SegGroupNum="2">
| |
| − | <DepAirp CodeType="IATA" Name="Цюрих">ZRH</DepAirp>
| |
| − | <DepTerminal xsi:nil="true"/>
| |
| − | <ArrAirp CodeType="IATA" Name="Мадрид">MAD</ArrAirp>
| |
| − | <ArrTerminal xsi:nil="true"/>
| |
| − | <OpAirline>LX</OpAirline>
| |
| − | <OpAirlineName>Свисс Интернешнл Эйрлайнз</OpAirlineName>
| |
| − | <MarkAirline>LX</MarkAirline>
| |
| − | <MarkAirlineName>Свисс Интернешнл Эйрлайнз</MarkAirlineName>
| |
| − | <FlightNumber>2026</FlightNumber>
| |
| − | <AircraftName/>
| |
| − | <AircraftType>32A</AircraftType>
| |
| − | <DepDateTime>2014-12-27T12:30:00</DepDateTime>
| |
| − | <ArrDateTime>2014-12-27T14:50:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>V</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>140</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | </Segments>
| |
| − | <PricingInfo Refundable="false">
| |
| − | <PassengerFare Type="ADT" Quantity="1">
| |
| − | <BaseFare Currency="CZK" Amount="8440"/>
| |
| − | <EquiveFare Currency="RUB" Amount="17305"/>
| |
| − | <TotalFare Currency="RUB" Amount="31456"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQI" Amount="840"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQI" Amount="840"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQI" Amount="1960"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQI" Amount="840"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQI" Amount="840"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YQI" Amount="1960"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RI" Amount="378"/>
| |
| − | <Tax CurCode="RUB" TaxCode="RI" Amount="378"/>
| |
| − | <Tax CurCode="RUB" TaxCode="UH" Amount="284"/>
| |
| − | <Tax CurCode="RUB" TaxCode="CZ" Amount="1159"/>
| |
| − | <Tax CurCode="RUB" TaxCode="CH2" Amount="1112"/>
| |
| − | <Tax CurCode="RUB" TaxCode="CH2" Amount="1112"/>
| |
| − | <Tax CurCode="RUB" TaxCode="CH2" Amount="1112"/>
| |
| − | <Tax CurCode="RUB" TaxCode="EX" Amount="56"/>
| |
| − | <Tax CurCode="RUB" TaxCode="IT1" Amount="707"/>
| |
| − | <Tax CurCode="RUB" TaxCode="VT" Amount="142"/>
| |
| − | <Tax CurCode="RUB" TaxCode="HB" Amount="364"/>
| |
| − | <Tax CurCode="RUB" TaxCode="MJ" Amount="67"/>
| |
| − | </Taxes>
| |
| − | <Tariffs>
| |
| − | <Tariff Code="KNC29F3S" SegNum="2"/>
| |
| − | <Tariff Code="VNC28G2S" SegNum="6"/>
| |
| − | <Tariff Code="KNN2SSR" SegNum="5"/>
| |
| − | </Tariffs>
| |
| − | <FareCalc>PRG LX X/ZRH LX MOW28.06LX ZRH*LX MIL31.13LX ZRH31.13*LX MAD175.52 1S129.53NUC395.37END ROE21.3469</FareCalc>
| |
| − | <LastTicketDateTime>2014-12-20T11:05:00</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | <PassengerFare Type="INF" Quantity="1">
| |
| − | <BaseFare Currency="CZK" Amount="3333"/>
| |
| − | <EquiveFare Currency="RUB" Amount="6835"/>
| |
| − | <TotalFare Currency="RUB" Amount="6835"/>
| |
| − | <Taxes/>
| |
| − | <Tariffs>
| |
| − | <Tariff Code="KNC29F3S/IN90" SegNum="2"/>
| |
| − | <Tariff Code="VNC28G2S/IN90" SegNum="6"/>
| |
| − | <Tariff Code="KNN2SSR/IN90" SegNum="5"/>
| |
| − | </Tariffs>
| |
| − | <FareCalc>PRG LX X/ZRH LX MOW2.80LX ZRH*LX MIL3.11LX ZRH3.11*LX MAD17.55 1S129.53NUC156.10END ROE21.3469</FareCalc>
| |
| − | <LastTicketDateTime>2014-12-20T11:05:00</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | </PricingInfo>
| |
| − | <Commission/>
| |
| − | <Charges Currency="RUB">765.82</Charges>
| |
| − | <TotalPrice Currency="RUB">39056.82</TotalPrice>
| |
| − | </Flight>
| |
| − | .........
| |
| − | <Flight>...</Flight>
| |
| − | </Flights>
| |
| − | <Errors xsi:nil="true"/>
| |
| − | </SearchFlights>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:searchResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| | + | </tr> |
| | + | <tr class="row29"> |
| | + | <td class="col0">SmokingAllowed </td><td class="col1">нет </td><td class="col2">булевский </td><td class="col3">true - место для курящих, false - место для некурящих. По умолчанию false.</td> |
| | + | </tr> |
| | + | <tr class="row30"> |
| | + | <td class="col0">Location </td><td class="col1">нет </td><td class="col2">строка </td><td class="col3">Расположение места, возможные значения: W - у окна (Window); M - где-то в середине ряда (Middle); NPW - возле прохода (NearPassengerWay); NS - нет предпочтения (NotSpecified).</td> |
| | + | </tr> |
| | + | <tr class="row31"> |
| | + | <td class="col0">RowNumber</td><td class="col1">нет</td><td class="col2">строка </td><td class="col3">Номер ряда</td> |
| | + | </tr> |
| | + | <tr class="row32"> |
| | + | <td class="col0">PlaceNumber </td><td class="col1">нет </td><td class="col2">строка </td><td class="col3">Номер места</td> |
| | | | |
| | + | </tr> |
| | + | <tr class="row33"> |
| | + | <td class="col0">SegNumber </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Номер сегмента</td> |
| | + | </tr> |
| | + | <tr class="row34"> |
| | + | <td class="col0">DocumentInfo </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Паспортные данные</td> |
| | | | |
| − | ==API Поиска отелей== | + | </tr> |
| − | '''Агентский API Отелей''' - система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации.
| + | <tr class="row35"> |
| | + | <td class="col0">DocType </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Тип документа, обязательный.</td> |
| | + | </tr> |
| | + | <tr class="row36"> |
| | + | <td class="col0">DocNum </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Номер документа</td> |
| | + | </tr> |
| | + | <tr class="row37"> |
| | + | <td class="col0">CountryCode </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Страна выдачи, двух буквенный код(RU, US и т.д.)</td> |
| | + | </tr> |
| | + | <tr class="row38"> |
| | + | <td class="col0">DocElapsedTime</td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Срок истечения срока действия паспорта в фирмате dd.mm.yyyy (например 31.12.2012)</td> |
| | | | |
| − | === Динамические данные === | + | </tr> |
| − | ==== Поиск ==== | + | <tr class="row39"> |
| | + | <td class="col0">VisaInfo </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Информация о визе</td> |
| | + | </tr> |
| | + | <tr class="row40"> |
| | + | <td class="col0">Num </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Номер визы</td> |
| | | | |
| − | Сервис предназначен для получения списка отелей, удовлетворяющих условиям запроса. В условия запроса входят: идентификатор города, где будет вестись поиск; дата заезда и дата выезда; информация о количестве людей и способе их размещения в комнатах. Так же указываются дополнительные необязательные поля фильтров.
| + | </tr> |
| | + | <tr class="row41"> |
| | + | <td class="col0">IssueDate </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Дата выдачи визы в формате dd.mm.yyyy</td> |
| | + | </tr> |
| | + | <tr class="row42"> |
| | + | <td class="col0">IssueCountry </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Страна выдачи визы</td> |
| | | | |
| − | Для получения списка доступных городов, воспользуйтесь запросом на выгрузку статики (см. ССЫЛКА). Список допустимых отелей для фильтра также доступен через сервис (см. ССЫЛКА). Рекомендуется выгрузить все данные по отелям, городам и странам в локальную базу, для экономии времени и запросов.
| + | </tr> |
| | + | <tr class="row43"> |
| | + | <td class="col0">IssuePlace </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Место выдачи визы</td> |
| | + | </tr> |
| | + | <tr class="row44"> |
| | + | <td class="col0">BirthCountry </td><td class="col1">нет </td><td class="col2">строка </td><td class="col3">Страна рождения (IATA код страны)</td> |
| | | | |
| − | '''WSDL''' (тестовый сервер): [http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch]
| + | </tr> |
| | + | <tr class="row45"> |
| | + | <td class="col0">BirthCity </td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Город рождения (название)</td> |
| | + | </tr> |
| | + | <tr class="row46"> |
| | + | <td class="col0">ArrAddress </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Адрес прибытия, для въезжающих в США (не граждан США) информация является обязательной. Если она не заполняется при оформлении брони, то её всё равно придётся заполнять при посадке на самолёт.</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr class="row47"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">CountryCode </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">IATA код страны</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row48"> |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelsSearch">
| + | <td class="col0">State </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Штат или область въезда</td> |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:search>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <HotelSearch>
| |
| − | <CityId>22046</CityId>
| |
| − | <DateBegin>2013-10-15</DateBegin>
| |
| − | <DateEnd>2013-10-18</DateEnd>
| |
| − | <Rooms>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Room>
| |
| − | <Persons>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Person Id="1" Type="ADT" Age="30"/>
| |
| − | <Person Id="2" Type="CLD" Age="10"/>
| |
| − | </Persons>
| |
| − | <!--Optional:-->
| |
| − | <DoubleBed>false</DoubleBed>
| |
| − | </Room>
| |
| − | <Room>
| |
| − | <Persons>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Person Id="1" Type="ADT" Age="30"/>
| |
| − | </Persons>
| |
| − | </Room>
| |
| − | </Rooms>
| |
| − | <!--Optional:-->
| |
| − | <Filters>
| |
| − | <Hotels>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <!--<Id>123</Id>-->
| |
| − | </Hotels>
| |
| − | </Filters>
| |
| − | </HotelSearch>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:search>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''HotelSearch'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row49"> |
| − | |-
| + | <td class="col0">PostalCode </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Почтовый код</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row50"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">City </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Город</td> |
| − | |-
| |
| − | | CityId
| |
| − | | Обязательный. Идентификатор города в системе Nemo.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | DateBegin
| |
| − | | Обязательный. Дата заселения.
| |
| − | | Формат гггг-мм-дд.
| |
| − | |-
| |
| − | | DateEnd
| |
| − | | Обязательный. Дата выезда.
| |
| − | | Формат гггг-мм-дд.
| |
| − | |-
| |
| − | | Rooms
| |
| − | | Обязательный. Содержит массив запрашиваемых номеров/апартаментов.
| |
| − | | Элемент Room. Максимум 4 элемента Room.
| |
| − | |-
| |
| − | | Filters
| |
| − | | Необязательный. Содержит различные фильтры поиска отелей.
| |
| − | | Элемент Hotels.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Room'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row51"> |
| − | |-
| + | <td class="col0">StreetAddress </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Адрес: улица, номер дома, квартиры и тп</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row52"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">DocStringFormats </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Список форматов строк паспортных данных, которые будут отправлены в дополнение к стандартным.</td> |
| − | |-
| |
| − | | Persons
| |
| − | | Обязательный. Содержит данные о клиентах в номерах.
| |
| − | | Элемент Person
| |
| − | |-
| |
| − | | DoubleBed
| |
| − | | Необязательный. Может быть использован только если сумма количества детей и взрослых равна 2-м, а также
| |
| − | Если в запросе сумма детей и взрослых не равна 2, то данный элемент будет проигнорирован.
| |
| − | | true/false
| |
| − | true означает, что номер должен иметь двуспальную кровать
| |
| − | |}
| |
| | | | |
| − | Элемент '''Person'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row53"> |
| − | |-
| + | <td class="col0">DocStringFormat </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Формат данных, возможные значения: DOCS - строка формата DOCS, FOID - строка формата FOID. Установка данных в формате DOCS как правило необходима для последующей выписки в BSP среде. Установка FOID - всреде ТКП.</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row54"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">PersonalInfo </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Персональные данные пассажира</td> |
| − | |-
| + | </tr> |
| − | | Атрибут Id
| + | <tr class="row55"> |
| − | | Уникальный идентификатор. См. результаты бронирования.
| + | <td class="col0">DateOfBirth</td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Дата рождения в формате dd.mm.yyyy (например 31.12.2000)</td> |
| − | | Целое число
| + | </tr> |
| − | |-
| + | <tr class="row56"> |
| − | | Атрибут Type
| + | <td class="col0">Nationality </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Национальность/гражданство, двух буквенный код страны (RU, UA, US и т.д.)</td> |
| − | | Тип клиента.
| |
| − | Если не указан, будет определен по возрасту Age.
| |
| − | | Константы:
| |
| − | ADT - взрослый
| |
| − | CLD - ребенок 2-12 лет
| |
| − | INF - младенец до 2х лет
| |
| − | |-
| |
| − | | Атрибут Age
| |
| − | | Возраст. Обязателен для детей (CLD).
| |
| − | | Целое число. Количество лет.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Filters'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row57"> |
| − | |-
| + | <td class="col0">Gender </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Пол пассажира, обязательный, возможные значения: M - мужской(Male); F - женский(Female).</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row58"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">FirstName </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Имя пассажира</td> |
| − | |-
| |
| − | | Hotels
| |
| − | | Необязательный. Набор идентификаторов отелей в системе Nemo.
| |
| − | Результаты поиска будут ограничены только этими отелями. Данная опция может существенно ускорить поиск - рекомендуется всегда устанавливать при поиске конкретных отелей.
| |
| − | | Элемент Id – целое число
| |
| − | |}
| |
| | | | |
| − | Элемент '''Source'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row59"> |
| − | |-
| + | <td class="col0">LastName </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Фамилия пассажира</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row60"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">BMiddleName </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Отчество пассажира</td> |
| − | |-
| + | </tr> |
| − | | ClientID
| + | <tr class="row61"> |
| − | | Обязательный. ID клиента в системе Nemo.
| + | <td class="col0">Meal </td><td class="col1">нет</td><td class="col2">строка </td><td class="col3">Код типа питания, возможные значения: 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 - Восточное вегетарианское питание.</td> |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| + | </tr> |
| − | | Целое число.
| + | <tr class="row62"> |
| − | |-
| + | <td class="col0">LoyaltyCard </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Карточка часто летающего пассажира</td> |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div> | |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Ответ ===== | + | <tr class="row63"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">OpCode </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">IATA код компании авиаперевозчика</td> |
| − | Система по заданным параметрам ищет отели и возвращает результаты поиска. Все результаты поиска хранятся в базе Nemo определенный срок и доступны для бронирования по идентификатору CacheId.
| + | </tr> |
| | + | <tr class="row64"> |
| | + | <td class="col0">Number </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Номер карточки</td> |
| | + | </tr> |
| | + | <tr class="row65"> |
| | + | <td class="col0">ContactInfo</td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Контактная информация для пассажира</td> |
| | + | </tr> |
| | + | <tr class="row66"> |
| | + | <td class="col0">EmailID </td><td class="col1">нет </td><td class="col2">строка </td><td class="col3">Контактный email</td> |
| | | | |
| − | Структура ответа - это набор уникальных отелей. У каждого указан Id - это идентификатор из базы Nemo. По нему можно получить дополнительную статичную информацию из путеводителя Nemo.
| + | </tr> |
| | + | <tr class="row67"> |
| | + | <td class="col0">Telephone </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Контактный телефон пассажира, описание аналогично описанию телефона агентства</td> |
| | + | </tr> |
| | + | <tr class="row68"> |
| | + | <td class="col0">CancelBook</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела запроса отмены брони</td> |
| | + | </tr> |
| | + | <tr class="row69"> |
| | + | <td class="col0">BookID</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Номер брони, которая будет отменяться (для которой будет производится выписка, отмена выписки)</td> |
| | | | |
| − | Каждый отель содержит:
| + | </tr> |
| − | * Набор номеров <Rooms>. Типы номеров (одноместный, двухместный и т.д.) : устанавливается автоматически по количеству клиентов из запроса.
| + | <tr class="row70"> |
| − | * Сервисы <Services>. Каждый отель предлагает различные типы обслуживания в номерах. Цена и доступность может различаться.
| + | <td class="col0">GetAirRules</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела запроса поиска тарифных правил</td> |
| − | * Категория <Categories>. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
| + | </tr> |
| | + | <tr class="row71"> |
| | + | <td class="col0">AirAvail</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела запроса проверки доступности перелёта</td> |
| | | | |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row72"> |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelsSearch">
| + | <td class="col0">Ticketing</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела запроса выписки брони</td> |
| − | <SOAP-ENV:Body>
| + | </tr> |
| − | <ns1:searchResponse>
| + | <tr class="row73"> |
| − | <ResponseBin>
| + | <td class="col0">ValCompany</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Валидирующий перевозчик, на бланке которого выписывается билет</td> |
| − | <Response>
| |
| − | <HotelSearch>
| |
| − | <Hotels>
| |
| − | <Hotel Id="1872666">
| |
| − | <Supplier>GTA</Supplier>
| |
| − | <CityId>22046</CityId>
| |
| − | <DateBegin>2013-10-15</DateBegin>
| |
| − | <DateEnd>2013-10-18</DateEnd>
| |
| − | <CacheId>1872666</CacheId>
| |
| − | <Name>ADLON KEMPINSKI</Name>
| |
| − | <Categories>
| |
| − | <Category Id="1">
| |
| − | <Rooms>
| |
| − | <Room Count="1" Id="1" ServiceId="1"/>
| |
| − | <Room Count="1" Id="2" ServiceId="2"/>
| |
| − | </Rooms>
| |
| − | <TotalPrice Currency="RUB">74733.84</TotalPrice>
| |
| − | </Category>
| |
| − | </Categories>
| |
| − | <Services>
| |
| − | <Service Id="1" Status="OK">
| |
| − | <Desc>Standard Twin</Desc>
| |
| − | <Meal>Full Breakfast</Meal>
| |
| − | <Price/>
| |
| − | </Service>
| |
| − | <Service Id="2" Status="OK">
| |
| − | <Desc>Standard Twin</Desc>
| |
| − | <Meal>Full Breakfast</Meal>
| |
| − | <Price/>
| |
| − | </Service>
| |
| − | </Services>
| |
| − | <Rooms>
| |
| − | <Room Id="1" Type="TWIN"/>
| |
| − | <Room Id="2" Type="SNGL"/>
| |
| − | </Rooms>
| |
| − | </Hotel>
| |
| − | ...
| |
| − | </Hotels>
| |
| − | </HotelSearch>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:searchResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''Hotel'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row74"> |
| − | |-
| + | <td class="col0">Comission</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Комиссия</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row75"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Amount</td><td class="col1">нет</td><td class="col2">число с плавающей точкой</td><td class="col3">Значение комиссии в валюте, если указано, то комиссия в процентах игнорируется</td> |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор отеля как одного из результатов поиска в системе Nemo.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | Supplier
| |
| − | | Обязательный. Тип поставщика, в котором найден отель.
| |
| − | | Строка.
| |
| − | Возможные значения:
| |
| − | GTA
| |
| − | HOTELBEDS
| |
| − | DOTW
| |
| − | SERHS
| |
| − | MIKI
| |
| − | TRAVCO
| |
| − | ACADEM
| |
| − | TOURICO
| |
| − | |-
| |
| − | | CityId
| |
| − | | Обязательный. Идентификатор города в системе Nemo.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | CacheId
| |
| − | | Обязательный. Идентификатор результата поиска для данного отеля в системе Nemo.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | Name
| |
| − | | Обязательный. Название отеля.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Services
| |
| − | | Обязательный. Услуги в отеле.
| |
| − | | Элемент Service
| |
| − | |-
| |
| − | | Rooms
| |
| − | | Обязательный. Комнаты в отеле.
| |
| − | | Элемент Room
| |
| − | |-
| |
| − | | Categories
| |
| − | | Обязательный. Категории, доступные для бронирования в отеле.
| |
| − | | Элемент Category
| |
| − | |}
| |
| | | | |
| − | Элемент '''Service'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row76"> |
| − | |-
| + | <td class="col0">Percent</td><td class="col1">нет</td><td class="col2">число</td><td class="col3">Комиссия в процентах</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row77"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">VoidTicket</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела запроса отмены выписки брони</td> |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор услуги.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Атрибут Status
| |
| − | | Обязательный. Доступность отеля. ОК означает доступен (мгновенное подтверждение).
| |
| − | RQ - недоступен (по запросу).
| |
| − | | ОК/RQ
| |
| − | |-
| |
| − | | Desc
| |
| − | | Необязательный. Описание отеля.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Meal
| |
| − | | Обязательный. Питание для данного сервиса.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Price
| |
| − | | Необязательный. Указывает на стоимость номера с данной услугой.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Room'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row78"> |
| − | |-
| + | <td class="col0">Search</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела запроса поиска</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row79"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">ODPairs</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для информации о перелёте</td> |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор комнаты в отеле.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | Type
| |
| − | | Обязательный. Тип номера.
| |
| − | | Строка. Возможные значения:
| |
| − | SNGL – одноместный
| |
| − | DBL – двухместный с двухспальной кроватью
| |
| − | TWIN – двухместный с двумя кроватями
| |
| − | TRIP – трёхместный
| |
| − | QUAD – четырёхместный
| |
| − | |}
| |
| | | | |
| − | Элемент '''Category'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row80"> |
| − | |-
| + | <td class="col0">Type</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Тип перелёта, возможные значения: OW - в одну сторону, RT - туда-обратно, CR - сложный маршрут</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row81"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Direct</td><td class="col1">нет</td><td class="col2">булевский</td><td class="col3">Индикатор, указывающий какие перелёты искать, только прямые или с пересадками, возможные значения: false - с пересадками, true - только прямые. Если не указан, значение по умолчанию false.</td> |
| − | |-
| + | </tr> |
| − | | Атрибут Id
| + | <tr class="row82"> |
| − | | Обязательный. Идентификатор категории.
| + | <td class="col0">AroundDates</td><td class="col1">нет</td><td class="col2">число</td><td class="col3">Включает поиск по окружным датам, количество дней +/- от даты заезда/возвращения. Применим только для типов перелёта в одну сторону(OW) и туда-обратно(RT). Возможные значения: 0, 1, 2, 3</td> |
| − | | Целое число.
| + | </tr> |
| − | |-
| + | <tr class="row83"> |
| − | | Rooms
| + | <td class="col0">ODPair</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для информации о сегменте перелёта. Может повторяться 1-6 раз. Поиск по расписанию использует только первый сегмент, поиск сложных перелётов и перелётов туда и обратно не поддерживается</td> |
| − | | Обязательный. Массив комнат с соответствием услуг.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | Room
| |
| − | | Атрибут: Count
| |
| | | | |
| − | Обязательный.
| + | </tr> |
| − | Количество комнат данного типа.
| + | <tr class="row84"> |
| | + | <td class="col0">DepDate</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Дата вылета, Формат ГГГГ-MM-DDTЧЧ:ММ:СС</td> |
| | + | </tr> |
| | + | <tr class="row85"> |
| | + | <td class="col0">DepAirp</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Трёх буквенный код города отправления или конкретного аэропорта в городе отправления.</td> |
| | | | |
| − | Атрибут: Id
| + | </tr> |
| | + | <tr class="row86"> |
| | + | <td class="col0">ArrAirp</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Трёх буквенный код города прибытия или конкретного аэропорта в городе прибытия.</td> |
| | + | </tr> |
| | + | <tr class="row87"> |
| | + | <td class="col0">Count</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Число пассажиров данного типа. Общее количество пассажиров всех типов должно быть не более 9.</td> |
| | | | |
| − | Обязательный. Идентификатор комнаты из атрибута Id в элементе Hotel-> Rooms-> Room.
| + | </tr> |
| | + | <tr class="row88"> |
| | + | <td class="col0">Restrictions</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Контейнер дополнительной информации для поиска.</td> |
| | + | </tr> |
| | + | <tr class="row89"> |
| | + | <td class="col0">ClassPref</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Предпочитаемый класс перелёта, возможные значения: All - все, Economy - эконом, Business - бизнес, First - первый. Если не указан, то по умолчанию All.</td> |
| | | | |
| − | Атрибут: ServiceId
| + | </tr> |
| | + | <tr class="row90"> |
| | + | <td class="col0">OnlyAvail</td><td class="col1">нет</td><td class="col2">булевский</td><td class="col3">Искать только доступные, возможные значения: true - только доступные, false - все. Если не указан, то по умолчанию false.</td> |
| | + | </tr> |
| | + | <tr class="row91"> |
| | + | <td class="col0">AirVPrefs</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Обёртка для списка авиакомпаний, по которым будет или не будет проводиться поиск.</td> |
| | | | |
| − | - Идентификатор услуги из атрибута Id элемента Service. | + | </tr> |
| − | | Целое число.
| + | <tr class="row92"> |
| | + | <td class="col0">AirVPref</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Информация об авиакомпании.</td> |
| | + | </tr> |
| | + | <tr class="row93"> |
| | + | <td class="col0">Include</td><td class="col1">нет</td><td class="col2">булевский</td><td class="col3">Индикатор, показывающий включить или исключить в результатах поиска перелёты данной авиакомпании: true - включить, false - исключить. Если не указан, то по умолчанию false.</td> |
| | | | |
| − | Целое число.
| + | </tr> |
| | + | <tr class="row94"> |
| | + | <td class="col0">IncludePrivateFare</td><td class="col1">нет</td><td class="col2">булевский</td><td class="col3">Включать приватные цены в результат или нет, возможные значения: true - включать, false - не включать. Если не указан, то по умолчанию false.</td> |
| | + | </tr> |
| | + | <tr class="row95"> |
| | + | <td class="col0">ServiceTypes</td><td class="col1">нет</td><td class="col2">сложный хмл</td><td class="col3">Контейнер массива используемых веб-сервисов при поиске.</td> |
| | | | |
| − | Целое число.
| + | </tr> |
| − | |-
| + | <tr class="row96"> |
| − | | TotalPrice
| + | <td class="col0">ServiceType</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Тип веб-сервиса(поставщика). При указании нескольких элементов ServiceType поиск будет проведён для каждого сервиса. Возможные значения: Sirena2000 - поиск в Сирене; SirenaSchedule - поиск в Сирене по расписанию; SabreLFS - поиск в Сэйбр LFS; SabreBFM - поиск в Сэйбр BFM; SabreSchedule - поиск Сэйбр по расписанию; Galileo - поиск в Галилео; AmadeusMPTBS - поиск в Амадеус.</td> |
| − | | Обязательный. Суммарная стоимость бронируемого сочетания “Комнаты - услуги”.
| + | </tr> |
| − | | Вещественное число.
| + | </table> |
| − | Атрибут Currency - код валюты.
| |
| − | |}
| |
| | </div> | | </div> |
| | </div> | | </div> |
| − |
| |
| − |
| |
| − |
| |
| − | ==== Расширенная информация по одному отелю ====
| |
| − | Сервис получения дополнительной информации об отеле требует указания идентификатора отеля в системе Nemo и категории.
| |
| − |
| |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelExtInfo
| |
| | | | |
| | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> |
| − | ===== Запрос =====
| |
| − | <div class="mw-collapsible-content">
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelExtInfo">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:extInfo>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <HotelExtInfo>
| |
| − | <Item>
| |
| − | <CacheId>1867246</CacheId>
| |
| − | <!--Optional:-->
| |
| − | <CategoryId>1</CategoryId>
| |
| − | </Item>
| |
| − | </HotelExtInfo>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:extInfo>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − |
| |
| − | Элемент '''Item'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | CacheId
| |
| − | | Обязательный. Идентификатор результата поиска.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | CategoryId
| |
| − | | ID выбранной категории.
| |
| − | | Целое число
| |
| − | |}
| |
| − |
| |
| − | Элемент '''Source'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | ==== Параметры, используемые в ответах ==== |
| − | ===== Ответ ===== | |
| | <div class="mw-collapsible-content"> | | <div class="mw-collapsible-content"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | <table border="1"> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelExtInfo"
| |
| − | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:extInfoResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <HotelExtInfo>
| |
| − | <CategoryId>1</CategoryId>
| |
| − | <PriceInfo>
| |
| − | <PriceBreakDown>
| |
| − | <Date>
| |
| − | <From>2013-10-15</From>
| |
| − | <To>2013-10-18</To>
| |
| − | <Price Currency="RUB">12455.64</Price>
| |
| − | </Date>
| |
| − | <Date>
| |
| − | <From>2013-10-15</From>
| |
| − | <To>2013-10-18</To>
| |
| − | <Price Currency="RUB">12455.64</Price>
| |
| − | </Date>
| |
| − | </PriceBreakDown>
| |
| − | <Netto Currency="EUR">1821</Netto>
| |
| − | <Gross xsi:nil="true"/>
| |
| − | </PriceInfo>
| |
| − | </HotelExtInfo>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:extInfoResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | | |
| − | Элемент '''HotelExtInfo'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | CategoryId
| |
| − | | Обязательный. Идентификатор категории.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | PriceInfo
| |
| − | | Обязательный. Элемент содержащий информацию о цене
| |
| − | | см. Элемент PriceInfo
| |
| − | |}
| |
| | | | |
| − | Элемент '''PriceInfo'''
| + | <tr bgcolor="#CCCCCC"> |
| − | {| style="width: 800px" class="wikitable"
| + | <th class="col0 leftalign"> Имя элемента </th><th class="col1 leftalign"> Обязательный </th><th class="col2 leftalign"> Тип </th><th class="col3 centeralign"> Описание </th> |
| − | |-
| + | </tr> |
| − | ! scope="col" width="200" | Элемент
| + | <tr class="row1"> |
| − | ! scope="col" width="300" | Описание
| + | <td class="col0">BookFlightResult </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Контейнер для тела ответа бронирования</td> |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | style="width:208px; height:35px" |
| |
| − | PriceBreakDown
| |
| − | | style="width:208px; height:35px" |
| |
| − | Необязательный. Информация о ценах, расписанная по каждому дню.
| |
| − | | style="width:208px; height:35px" |
| |
| − | Список элементов Date
| |
| − | |-
| |
| − | | Netto
| |
| − | | Обязательный. Стоимость от поставщика.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |-
| |
| − | | Gross
| |
| − | | Обязательный. Общая стоимость.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Date'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row2"> |
| − | |-
| + | <td class="col0">ID </td><td class="col1">да </td><td class="col2">число</td><td class="col3">Номер бронирования в системе Nemo.</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row3"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0 leftalign">Status </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Статус брони, возможные значения: booked - забронировано, canceled - бронь отменена, ticket - выписана; UNDEFINED - статус не определён.</td> |
| − | |-
| |
| − | | From
| |
| − | | Обязательный. Дата начала действия тарифа
| |
| − | | Формат гггг-мм-дд
| |
| − | |-
| |
| − | | To
| |
| − | | Обязательный. Дата окончания действия тарифа
| |
| − | | Формат гггг-мм-дд
| |
| − | |-
| |
| − | | Price
| |
| − | | Цена за одну ночь.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |}
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | === Статические данные ===
| + | </tr> |
| − | Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
| + | <tr class="row4"> |
| − | ==== Страна ====
| + | <td class="col0">Code </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Номер бронирования в системе поставщика (в sabre, sirena и т.д.)/код тарифного правила</td> |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
| + | </tr> |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | <tr class="row5"> |
| − | ===== Запрос =====
| + | <td class="col0">QueryPlace </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Очередь, в которую помещено бронирование</td> |
| − | <div class="mw-collapsible-content"> | |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" | |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:countries>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <CountryStatic>
| |
| − | </CountryStatic>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:countries>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''Request'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row6"> |
| − | |-
| + | <td class="col0 leftalign">Number </td><td class="col1">да </td><td class="col2">число </td><td class="col3">Номер очереди</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row7"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Flight </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Перелёт, по которому была сделана бронь (Результаты проверки доступности для перелёта)</td> |
| − | |-
| |
| − | | CountryStatic
| |
| − | | Пустой элемент
| |
| − | | <br/>
| |
| − | |}
| |
| | | | |
| − | Элемент '''Source'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row8"> |
| − | |-
| + | <td class="col0">Agency </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Информация об агентстве</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row9"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">ItinReceipts</td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Маршрут квитанция. Содержит строку в кодировки Encoding (как правило в base64), представляющую маршрут квитанцию в формате Format.</td> |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Ответ =====
| + | <tr class="row10"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">Encoding </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Кодировка</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row11"> |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic"
| + | <td class="col0">Format </td><td class="col1">да </td><td class="col2">строка</td><td class="col3">Формат</td> |
| − | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:countriesResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <CountryStatic>
| |
| − | <Countries>
| |
| − | <Country Id="4">
| |
| − | <Code>AF</Code>
| |
| − | <Continent>asia</Continent>
| |
| − | <Data>
| |
| − | <Info Language="RU">
| |
| − | <Name>Афганистан</Name>
| |
| − | </Info>
| |
| − | <Info Language="EN">
| |
| − | <Name>Afghanistan</Name>
| |
| − | </Info>
| |
| − | </Data>
| |
| − | </Country>
| |
| − | </Countries>
| |
| − | </CountryStatic>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:countriesResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope> | |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''CountryStatic'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row12"> |
| − | |-
| + | <td class="col0">Travellers</td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Контейнер для информации о пассажирах</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row13"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Traveller </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Информация о пассажире</td> |
| − | |-
| |
| − | | Countries
| |
| − | | Обязательный
| |
| − | | Набор элементов Country
| |
| − | |}
| |
| | | | |
| − | Элемент '''Country'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row14"> |
| − | |-
| + | <td class="col0">Ticket </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Билет пассажира.</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row15"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">TickectNum </td><td class="col1">да </td><td class="col2">строка </td><td class="col3">Номер билета</td> |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор страны (ISO).
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Code
| |
| − | | Обязательный. Код страны ISO.
| |
| − | | Строка из 2-х латинских букв
| |
| − | |-
| |
| − | | Continent
| |
| − | | Обязательный. Название континента.
| |
| − | | Строка.
| |
| − | |-
| |
| − | | Data
| |
| − | | Обязательный. Информация требующая перевода.
| |
| − | | Набор элементов Info.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Info'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row16"> |
| − | |-
| + | <td class="col0">Seats</td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Контейнер мест пассажира.</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row17"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Seat </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Место в самолёте</td> |
| − | |-
| |
| − | | Атрибут Language
| |
| − | | Обязательный. Язык в котором представлена информация.
| |
| − | | Строка из 2-х латинских букв.
| |
| − | |-
| |
| − | | Name
| |
| − | | Обязательный. Наименование страны.
| |
| − | | Строка в произвольном формате.
| |
| − | |}
| |
| − | </div> | |
| − | </div> | |
| | | | |
| | + | </tr> |
| | + | <tr class="row18"> |
| | + | <td class="col0">Number </td><td class="col1">да </td><td class="col2">строка</td><td class="col3">Номер места(ряд+номер в ряду)</td> |
| | + | </tr> |
| | + | <tr class="row19"> |
| | + | <td class="col0">Characteristic </td><td class="col1">нет</td><td class="col2">строка </td><td class="col3">Характеристика места в соответствии со стандартом EDIFACT. См справочник “Таблица характеристик мест”.</td> |
| | | | |
| | + | </tr> |
| | + | <tr class="row20"> |
| | + | <td class="col0">SmokingPreference </td><td class="col1">нет </td><td class="col2">строка </td><td class="col3">Статус курения на этом месте, если Y - место для курящих, если N - место для некурящих.</td> |
| | + | </tr> |
| | + | <tr class="row21"> |
| | + | <td class="col0">SegmentNumber </td><td class="col1">да </td><td class="col2">число </td><td class="col3">Номер сегмента</td> |
| | | | |
| − | ==== Город ==== | + | </tr> |
| − | Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:
| + | <tr class="row22"> |
| | + | <td class="col0">PersonalInfo </td><td class="col1">да </td><td class="col2">сложный </td><td class="col3">Личные данные</td> |
| | + | </tr> |
| | + | <tr class="row23"> |
| | + | <td class="col0">LoyaltyCard </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Карточка часто летающего пассажира</td> |
| | | | |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CityStatic
| + | </tr> |
| | + | <tr class="row24"> |
| | + | <td class="col0">ContactInfo </td><td class="col1">нет </td><td class="col2">сложный </td><td class="col3">Контактная информация для пассажира</td> |
| | + | </tr> |
| | + | <tr class="row25"> |
| | + | <td class="col0">FareStored </td><td class="col1">нет </td><td class="col2">срока: Yes/No </td><td class="col3">Указывает установлена ли / гарантируется ли цена у поставщика. Если параметр отсутствует в ответе, то по умолчанию значение “Yes”.</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr class="row26"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">CancelBookResult</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела ответа отмены брони</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row27"> |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCityStatic">
| + | <td class="col0">BookID</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Номер брони, которая отменялась (Номер выписанной брони, выписка которой отменялась)</td> |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:cities>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <CityStatic>
| |
| − | <CountryId>4</CountryId>
| |
| − | </CityStatic>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:cities>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''CityStatic'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row28"> |
| − | |-
| + | <td class="col0">Result</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Результат отмены (войдирования)</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row29"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Success</td><td class="col1">да</td><td class="col2">булевский</td><td class="col3">Индикатор, показывающий успешно или нет прошла отмена, возможные значения: true - успешно отменена (войдирование); false - не отменена</td> |
| − | |-
| |
| − | | CountryId
| |
| − | | Обязательный. Идентификатор страны.
| |
| − | | Целое число
| |
| − | |}
| |
| | | | |
| − | Элемент '''Source'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row30"> |
| − | |-
| + | <td class="col0">GetAirRulesResult</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела ответа поиска тарифных правил</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row31"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">FlightId</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Номер перелёта, для которого найдены тарифные правила (будет проводилась проверка доступности)</td> |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Ответ =====
| + | <tr class="row32"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">Rules</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для правил</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row33"> |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCityStatic">
| + | <td class="col0">Rule</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Правило</td> |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:citiesResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <CityStatic>
| |
| − | <Cities>
| |
| − | <City Id="1">
| |
| − | <Name>Кабул</Name>
| |
| − | <CountryId>4</CountryId>
| |
| − | <Data>
| |
| − | <Info Language="EN">
| |
| − | <Name>Kabul</Name>
| |
| − | </Info>
| |
| − | <Info Language="RU">
| |
| − | <Name>Кабул</Name>
| |
| − | </Info>
| |
| − | </Data>
| |
| − | </City>
| |
| − | <City Id="204793">
| |
| − | <Name>Aibak</Name>
| |
| − | <CountryId>4</CountryId>
| |
| − | <Data>
| |
| − | <Info Language="EN">
| |
| − | <Name>Aibak</Name>
| |
| − | </Info>
| |
| − | <Info Language="RU">
| |
| − | <Name>Aibak</Name>
| |
| − | </Info>
| |
| − | </Data>
| |
| − | </City>
| |
| − | <City Id="204785">
| |
| − | <Name>Anar Darah</Name>
| |
| − | <CountryId>4</CountryId>
| |
| − | <Data>
| |
| − | <Info Language="EN">
| |
| − | <Name>Anar Darah</Name>
| |
| − | </Info>
| |
| − | <Info Language="RU">
| |
| − | <Name>Anar Darah</Name>
| |
| − | </Info>
| |
| − | </Data>
| |
| − | </City>
| |
| − | ...
| |
| − | </Cities>
| |
| − | </CityStatic>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:citiesResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''CityStatic'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row34"> |
| − | |-
| + | <td class="col0">Tarrif</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код тарифа, для которого правило применяется</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row35"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Name</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Имя правила</td> |
| − | |-
| |
| − | | Cities
| |
| − | | Обязательный. Массив городов.
| |
| − | | Набор элементов City
| |
| − | |}
| |
| | | | |
| − | Элемент '''City'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row36"> |
| − | |-
| + | <td class="col0">RuleText</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Текст правила</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row37"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">AirAvailResult</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела ответа помещения брони в очередь</td> |
| − | |-
| |
| − | | Атрибут '''Id'''
| |
| − | | Обязательный. Идентификатор города.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Name
| |
| − | | Название города.
| |
| − | |
| |
| − | |-
| |
| − | | Data
| |
| − | | Названия городов на разных языках. В данный момент поддерживаются названия на русском и английском.
| |
| − | | См. описание элемента Data в ответе получения информации о стране.
| |
| − | |}
| |
| − | </div> | |
| − | </div> | |
| | | | |
| − | ==== Статика по отелям и апартаментам ==== | + | </tr> |
| − | Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.
| + | <tr class="row38"> |
| | + | <td class="col0">IsAvail</td><td class="col1">да</td><td class="col2">булевский</td><td class="col3">Индикатор, показывающий доступность перелёта, возможные значения: true - доступен; false - недоступен</td> |
| | + | </tr> |
| | + | <tr class="row39"> |
| | + | <td class="col0">VoidTicketResult</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тела ответа отмены выписки брони</td> |
| | | | |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic
| + | </tr> |
| | + | <tr class="row40"> |
| | + | <td class="col0">SearchResult</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Контейнер тела ответа для результатов поиска.</td> |
| | + | </tr> |
| | + | <tr class="row41"> |
| | + | <td class="col0">Flights</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для перелётов</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr class="row42"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">Flight</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Представляет информацию о перелёте. Отсутствует если перелётов не найдено (используется в поисковом ответе)</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row43"> |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelStatic">
| + | <td class="col0">WebService</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Веб-сервис (поставщик) от которого был получен перелёт.</td> |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:hotels>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <HotelStatic>
| |
| − | <CityId>58166</CityId>
| |
| − | </HotelStatic>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:hotels>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''Hotels'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row44"> |
| − | |-
| + | <td class="col0">ValCompany</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">IATA код авиакомпании. Валидирующий перевозчик, на бланках которого должен выписываться билет.</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row45"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">Segments</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для сегментов перелёта</td> |
| − | |-
| |
| − | | CityId
| |
| − | | Обязательный. Идентификатор города из которого необходимо получить отели.
| |
| − | | Целое число
| |
| − | |}
| |
| | | | |
| − | Элемент '''Source'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row46"> |
| − | |-
| + | <td class="col0">Segment</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Представляет информацию о сегменте</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row47"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">SegNum</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Номер сегмента в перелёте</td> |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Ответ =====
| + | <tr class="row48"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">DepAirp</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">IATA код аэропорта отправления</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" | + | <tr class="row49"> |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelStatic"
| + | <td class="col0">DepTerminal</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Код терминала отправления</td> |
| − | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:hotelsResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <HotelStatic>
| |
| − | <Hotels>
| |
| − | <Hotel Id="271714" Apartment="false">
| |
| − | <CityId>58166</CityId>
| |
| − | <CountryId>643</CountryId>
| |
| − | <Latitude xsi:nil="true"/>
| |
| − | <Longitude xsi:nil="true"/>
| |
| − | <Rating>3</Rating>
| |
| − | <Floors xsi:nil="true"/>
| |
| − | <Data>
| |
| − | <Info>
| |
| − | <Name>* Azimut (business)</Name>
| |
| − | <Area xsi:nil="true"/>
| |
| − | <Location>Within city</Location>
| |
| − | <Desc>This 3 star hotel is located within the city of St Petersburg.</Desc>
| |
| − | <Address>43/1 Lermoutovsky Prospect, St Petersburg, 190103</Address>
| |
| − | </Info>
| |
| − | </Data>
| |
| − | <Phones>
| |
| − | <Phone>812 7402640</Phone>
| |
| − | </Phones>
| |
| − | <Fax>812 2518890</Fax>
| |
| − | <Images/>
| |
| − | </Hotel>
| |
| − | <Hotel Id="159535" Apartment="false">
| |
| − | <CityId>58166</CityId>
| |
| − | <CountryId>643</CountryId>
| |
| − | <Latitude>59.935011</Latitude>
| |
| − | <Longitude>30.309284</Longitude>
| |
| − | <Rating>5</Rating>
| |
| − | <Floors xsi:nil="true"/>
| |
| − | <Data>
| |
| − | <Info>
| |
| − | <Name>W St.petersburg</Name>
| |
| − | <Area xsi:nil="true"/>
| |
| − | <Location>City centre</Location>
| |
| − | <Desc>This 5 star hotel is located in the city centre of St Petersburg
| |
| − | and was established in 2011. It is close to the St.Isaac's Cathedral
| |
| − | and the nearest station is Admiralteyskaya station. The Hotel has
| |
| − | a restaurant, 2 bars, a conference room, a coffee shop, an indoor
| |
| − | swimming pool and a fitness centre/gym. All 137 rooms are equipped
| |
| − | with minibar, hairdryer, safe, trouser press and air conditioning.</Desc>
| |
| − | <Address>6 Voznesensky Prospect, St. Petersburg, 190000, St Petersburg, Russia</Address>
| |
| − | </Info>
| |
| − | </Data>
| |
| − | <Phones/>
| |
| − | <Fax>+7 812 6106160</Fax>
| |
| − | <Images>
| |
| − | <Image>
| |
| − | <Path>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/lr/ext.jpg</Path>
| |
| − | <Icon>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/ext-t.jpg</Icon>
| |
| − | </Image>
| |
| − | <Image>
| |
| − | <Path>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/lr/unknown.jpg</Path>
| |
| − | <Icon>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/unknown-t.jpg</Icon>
| |
| − | </Image>
| |
| − | <Image>
| |
| − | <Path>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/lr/bed room.jpg</Path>
| |
| − | <Icon>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/bed room-t.jpg</Icon>
| |
| − | </Image>
| |
| − | </Images>
| |
| − | </Hotel>
| |
| − | ...
| |
| − | </Hotels>
| |
| − | </HotelStatic>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:hotelsResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight> | |
| | | | |
| − | Элемент '''Hotel'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row50"> |
| − | |-
| + | <td class="col0">ArrAirp</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">IATA код аэропорта прибытия</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row51"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">ArrTerminal</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Код терминала прибытия</td> |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор отеля в системе Nemo.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | CityId
| |
| − | | Обязательный. Идентификатор города.
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | CountryId
| |
| − | | Обязательный. Идентификатор страны .
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | Latitude
| |
| − | | Необязательный. Широта.
| |
| − | | Вещественное число.
| |
| − | |-
| |
| − | | Longitude
| |
| − | | Необязательный. Долгота.
| |
| − | | Вещественное число.
| |
| − | |-
| |
| − | | Rating
| |
| − | | Необязательный. Рейтинг.
| |
| − | | Вещественное число.
| |
| − | |-
| |
| − | | Floors
| |
| − | | Необязательный. Количество этажей
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | Data
| |
| − | | Необязательный.
| |
| − | | Набор элементов Info.
| |
| − | |-
| |
| − | | Phones
| |
| − | | Необязательный. Массив телефонов.
| |
| − | | Набор элементов Phone.
| |
| − | |-
| |
| − | | Fax
| |
| − | | Необязательный. Факс.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Images
| |
| − | | Необязательный. Маcсив изображений.
| |
| − | | Набор элементов Image.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Info'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row52"> |
| − | |-
| + | <td class="col0">OpAirline</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код авиакомпании, выполняющей рейс</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row53"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">MarkAirline</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код авиакомпании, продающей билет</td> |
| − | |-
| |
| − | | Name
| |
| − | | Обязательный. Наименование отеля.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Area
| |
| − | | Необязательный. Описание места расположения отеля.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Location
| |
| − | | Необязательный. Район города.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Desc
| |
| − | | Необязательный. Описание отеля.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Address
| |
| − | | Необязательный. Адрес отеля.
| |
| − | | Строка в произвольном формате.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Phones'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row54"> |
| − | |-
| + | <td class="col0">FlightNumber</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Номер рейса</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row55"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">AircraftType</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код типа самолёта</td> |
| − | |-
| |
| − | | Phone
| |
| − | | Обязательный. Телефон.
| |
| − | | Строка в произвольном формате.
| |
| − | |}
| |
| | | | |
| − | Элемент '''Image'''
| + | </tr> |
| − | {| style="width: 800px" class="wikitable"
| + | <tr class="row56"> |
| − | |-
| + | <td class="col0">DepDateTime</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Дата и время отправления, формат ГГГГ-MM-ДДTЧЧ:ММ:СС</td> |
| − | ! scope="col" width="200" | Элемент
| + | </tr> |
| − | ! scope="col" width="300" | Описание
| + | <tr class="row57"> |
| − | ! scope="col" width="300" | Допустимые значения
| + | <td class="col0">ArrDateTime</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Дата и время прибытия, формат ГГГГ-MM-ДДTЧЧ:ММ:СС</td> |
| − | |-
| |
| − | | Path
| |
| − | | Необязательный. Путь к полному изображению.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Icon
| |
| − | | Необязательный. Путь к миниатюре, иконке.
| |
| − | | Строка в произвольном формате.
| |
| − | |}
| |
| − | </div> | |
| − | </div> | |
| | | | |
| | + | </tr> |
| | + | <tr class="row58"> |
| | + | <td class="col0">StopNum</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Число остановок</td> |
| | + | </tr> |
| | + | <tr class="row59"> |
| | + | <td class="col0">Meal</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Тип питания, возможные значения: UNDEFINED - неизвестно; N - Нет питания; P - Алкогольные напитки в продаже; B - Завтрак; O - Холодная еда; C - Бесплатные алкогольные напитки; K - Континтальный завтрак; D - Обед; F - Еда в продаже; G - Еда/напитки в продаже; H - Горячая еда; L - Ланч; M - Еда; R - Освежающие еда/напитки бесплатно; V - Освежающие еда/напитки за отдельную плату; S - Закуска</td> |
| | | | |
| | + | </tr> |
| | + | <tr class="row60"> |
| | + | <td class="col0">BookingCodes</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для классов перелёта</td> |
| | + | </tr> |
| | + | <tr class="row61"> |
| | + | <td class="col0">BookingCode</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код класса перелёта. Если производится поиск по расписанию, то может встречаться несколько раз.</td> |
| | | | |
| − | ==API бронирования, аннуляции, войдирования авиабилетов== | + | </tr> |
| − | === Подключение === | + | <tr class="row62"> |
| | + | <td class="col0">FlightTime</td><td class="col1">нет</td><td class="col2">число</td><td class="col3">Время перелёта в минутах</td> |
| | + | </tr> |
| | + | <tr class="row63"> |
| | + | <td class="col0">TimeZone</td><td class="col1">нет</td><td class="col2 rightalign"> сложный</td><td class="col3">Информация о временных зона прибытия и отправления</td> |
| | | | |
| − | Получить доступ к результатам бронирования в данном сервисе можно через SOAP клиента. Для получения результата необходим параметр — «FlightId» — Id перелёта, для которого будет производится бронирование. WSDL находится по адресу: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=BookFlight.
| + | </tr> |
| | + | <tr class="row64"> |
| | + | <td class="col0">Departure</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Часовой пояс отправления, UTC (смещение относительно Гринвича)</td> |
| | + | </tr> |
| | + | <tr class="row65"> |
| | + | <td class="col0">Arrival</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Часовой пояс прибытия, UTC (смещение относительно Гринвича)</td> |
| | | | |
| − | === Общий формат запроса / ответа бронирования === | + | </tr> |
| | + | <tr class="row66"> |
| | + | <td class="col0">ETicket</td><td class="col1">да</td><td class="col2">булевский</td><td class="col3 rightalign"> Индикатор электронного билета, возможные значения: true - билет является электронным, false - билет не является электронным.</td> |
| | + | </tr> |
| | + | <tr class="row67"> |
| | + | <td class="col0">Baggage</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Информация о багаже</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr class="row68"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">Measure</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Мера веса. K - килограммы, PC - сумки/клади</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DBookFlight"> | + | <tr class="row69"> |
| − | <soapenv:Header/>
| + | <td class="col0">Value</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Количество багажа</td> |
| − | <soapenv:Body>
| |
| − | <ver:BookFlight>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <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>
| |
| − | </Travellers>
| |
| − | <!--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>
| |
| − | </ver:BookFlight>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| | + | <tr class="row70"> |
| | + | <td class="col0">PricingInfo</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Контейнер для информации о ценах. Отсутствует в случае, если производится поиск по расписанию.</td> |
| | + | </tr> |
| | + | <tr class="row71"> |
| | + | <td class="col0">Refundable</td><td class="col1">да</td><td class="col2">булевский</td><td class="col3">Индикатор показывающий является ли билет возвратным или нет, возможные значения: true - возвратный (нет штрафов за возврат), false - невозвратный (могут быть штрафы за возврат)</td> |
| | | | |
| − | ===== Ответ =====
| + | </tr> |
| − | <div class="mw-collapsible-content"> | + | <tr class="row72"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| + | <td class="col0">PassengerFare</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Информация о ценах для конкретного типа пассажиров.</td> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| + | </tr> |
| − | <SOAP-ENV:Body>
| + | <tr class="row73"> |
| − | <ns1:BookFlightResponse>
| + | <td class="col0">Quantity</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Число пассажиров данного типа</td> |
| − | <ResponseBin>
| |
| − | <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>
| |
| − | </Travellers>
| |
| − | </BookFlight>
| |
| − | <Requisites/>
| |
| − | <RequestType xsi:nil="true"/>
| |
| − | <UserID xsi:nil="true"/>
| |
| − | <Errors>
| |
| − | <Error Code="?">
| |
| − | <!--Code — код ошибки в системе Nemo-->
| |
| − | <ServiceErrorMessage>?</ServiceErrorMessage>
| |
| − | <!--ServiceErrorMessage — сообщение об ошибке полученное от веб-сервиса поставщика-->
| |
| − | <Message>?</Message>
| |
| − | <!--Message — сообщение об ошибке от системы Nemo-->
| |
| − | </Error>
| |
| − | </Errors>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:BookFlightResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | === Пример использования === | + | </tr> |
| | + | <tr class="row74"> |
| | + | <td class="col0">BaseFare</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Цена в базовой валюте(за одного пассажира)</td> |
| | + | </tr> |
| | + | <tr class="row75"> |
| | + | <td class="col0">EquiveFare</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Цена в эквивалентной валюте(за одного пассажира), при поиске цены не возвращается</td> |
| | | | |
| − | Пример одностороннего перелета Москва — Мадрид.
| + | </tr> |
| | + | <tr class="row76"> |
| | + | <td class="col0">TotalFare</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Полная стоимость для пассажиров данного типа включая таксы (за одного пассажира), при поиске цены не возвращается</td> |
| | + | </tr> |
| | + | <tr class="row77"> |
| | + | <td class="col0">Currency</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Трёх буквенный код валюты.</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| − | ===== Запрос =====
| + | <tr class="row78"> |
| − | <div class="mw-collapsible-content"> | + | <td class="col0">Amount</td><td class="col1">да</td><td class="col2">число с плавающей точкой</td><td class="col3">Значение стоимости.</td> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </tr> |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DBookFlight"> | + | <tr class="row79"> |
| − | <soapenv:Header/>
| + | <td class="col0">Taxes</td><td class="col1">нет</td><td class="col2">сложный</td><td class="col3">Контейнер для такс, при поиске цены не возвращается</td> |
| − | <soapenv:Body>
| |
| − | <ver:BookFlight>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <BookFlight>
| |
| − | <FlightId>171430002</FlightId>
| |
| − | <BookingCodes>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <BookingCode Code="E" SegNumber="2"/>
| |
| − | </BookingCodes>
| |
| − | <Travellers>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Traveller Type="ADT" IsContact="true" Num="1">
| |
| − | <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
| |
| − | <FirstName>Petr</FirstName>
| |
| − | <LastName>Ivanov</LastName>
| |
| − | </PersonalInfo>
| |
| − | <ContactInfo>
| |
| − | <!--Optional:-->
| |
| − | <EmailID>testmail@mail.ru</EmailID>
| |
| − | <!--Optional:-->
| |
| − | <Telephone Type="M">
| |
| − | <!--Optional:-->
| |
| − | <PhoneNumber>79051234567</PhoneNumber>
| |
| − | </Telephone>
| |
| − | </ContactInfo>
| |
| − | <DocumentInfo DocType="A" DocNum="123456" CountryCode="RU" DocElapsedTime="01.01.2020"/>
| |
| − | </Traveller>
| |
| − | </Travellers>
| |
| − | </BookFlight>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId>---</ClientId>
| |
| − | <APIKey>---</APIKey>
| |
| − | <Language>RU</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:BookFlight>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </tr> |
| | + | <tr class="row80"> |
| | + | <td class="col0">Tax</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Одна такса</td> |
| | + | </tr> |
| | + | <tr class="row81"> |
| | + | <td class="col0">CurCode</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Трёх буквенный код валюты для таксы</td> |
| | | | |
| − | ===== Ответ =====
| + | </tr> |
| − | <div class="mw-collapsible-content">
| + | <tr class="row82"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| + | <td class="col0">TaxCode</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код таксы</td> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DBookFlight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | + | </tr> |
| − | <SOAP-ENV:Body>
| + | <tr class="row83"> |
| − | <ns1:BookFlightResponse>
| + | <td class="col0">Amount</td><td class="col1">да</td><td class="col2">число с плавающей точкой</td><td class="col3">Значение таксы</td> |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <BookFlight ID="262872" Status="booked" Code="LQHZWU">
| |
| − | <QueryPlace xsi:nil="true"/>
| |
| − | <Flight FlightId="171430002">
| |
| − | <WebService>SABRE</WebService>
| |
| − | <ValCompany>SU</ValCompany>
| |
| − | <URL>http%3A%2F%2FCLIENT_DOMAIN%2F%3Fgo%3Dbooking%2Finfo%26uid%3D14290%26flight%3D171430002</URL>
| |
| − | <Segments>
| |
| − | <Segment SegNum="1" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA">SVO</DepAirp>
| |
| − | <DepTerminal>D</DepTerminal>
| |
| − | <ArrAirp CodeType="IATA">BCN</ArrAirp>
| |
| − | <ArrTerminal>1</ArrTerminal>
| |
| − | <OpAirline>SU</OpAirline>
| |
| − | <MarkAirline>SU</MarkAirline>
| |
| − | <FlightNumber>2512</FlightNumber>
| |
| − | <AircraftType>321</AircraftType>
| |
| − | <DepDateTime>2014-03-20T20:40:00</DepDateTime>
| |
| − | <ArrDateTime>2014-03-20T22:20:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>E</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>280</FlightTime>
| |
| − | <TimeZone Departure="4" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | <Segment SegNum="2" SegGroupNum="0">
| |
| − | <DepAirp CodeType="IATA">BCN</DepAirp>
| |
| − | <DepTerminal>1</DepTerminal>
| |
| − | <ArrAirp CodeType="IATA">MAD</ArrAirp>
| |
| − | <ArrTerminal>2</ArrTerminal>
| |
| − | <OpAirline>UX</OpAirline>
| |
| − | <MarkAirline>SU</MarkAirline>
| |
| − | <FlightNumber>3403</FlightNumber>
| |
| − | <AircraftType>738</AircraftType>
| |
| − | <DepDateTime>2014-03-21T12:05:00</DepDateTime>
| |
| − | <ArrDateTime>2014-03-21T13:25:00</ArrDateTime>
| |
| − | <StopNum>0</StopNum>
| |
| − | <BookingCodes>
| |
| − | <BookingCode ClassType="economy">
| |
| − | <BookingCode>E</BookingCode>
| |
| − | </BookingCode>
| |
| − | </BookingCodes>
| |
| − | <FlightTime>80</FlightTime>
| |
| − | <TimeZone Departure="1" Arrival="1"/>
| |
| − | <ETicket>true</ETicket>
| |
| − | </Segment>
| |
| − | </Segments>
| |
| − | <PricingInfo Refundable="false">
| |
| − | <PassengerFare Type="ADT" Quantity="1">
| |
| − | <BaseFare Currency="EUR" Amount="165"/>
| |
| − | <EquiveFare Currency="RUB" Amount="8335"/>
| |
| − | <TotalFare Currency="RUB" Amount="14025"/>
| |
| − | <Taxes>
| |
| − | <Tax CurCode="RUB" TaxCode="YQF" Amount="4242"/>
| |
| − | <Tax CurCode="RUB" TaxCode="YRI" Amount="374"/>
| |
| − | <Tax CurCode="RUB" TaxCode="JD" Amount="844"/>
| |
| − | <Tax CurCode="RUB" TaxCode="QV" Amount="230"/>
| |
| − | </Taxes>
| |
| − | <Tariffs/>
| |
| − | <FareCalc>MOW SU X/BCN SU MAD225.45NUC225.45END ROE0.731857</FareCalc>
| |
| − | <LastTicketDateTime>2014-03-14T12:45:00</LastTicketDateTime>
| |
| − | </PassengerFare>
| |
| − | </PricingInfo>
| |
| − | <Commission Currency="RUB">0</Commission>
| |
| − | <Charges Currency="RUB">140.25</Charges>
| |
| − | <TotalPrice Currency="RUB">14165.25</TotalPrice>
| |
| − | </Flight>
| |
| − | <Agency/>
| |
| − | <ItinReceipts xsi:nil="true"/>
| |
| − | <FareStored xsi:nil="true"/>
| |
| − | <Travellers>
| |
| − | <Traveller Type="ADT" IsContact="true" Num="1">
| |
| − | <Meal/>
| |
| − | <Ticket/>
| |
| − | <Seats/>
| |
| − | <PersonalInfo DateOfBirth="20.05.1980" Nationality="RU" Gender="M">
| |
| − | <FirstName>PETR</FirstName>
| |
| − | <LastName>IVANOV</LastName>
| |
| − | <MiddleName/>
| |
| − | </PersonalInfo>
| |
| − | <LoyaltyCard/>
| |
| − | <ContactInfo>
| |
| − | <EmailID>TESTMAIL@MAIL.ru</EmailID>
| |
| − | <Telephone Type="M">
| |
| − | <PhoneNumber>79051234567</PhoneNumber>
| |
| − | <CountryAccessCode/>
| |
| − | <AreaCityCode/>
| |
| − | </Telephone>
| |
| − | </ContactInfo>
| |
| − | <DocumentInfo DocType="A" DocNum="123456" CountryCode="RU" DocElapsedTime="01.01.2020"/>
| |
| − | <VisaInfo/>
| |
| − | <ArrAddress/>
| |
| − | <PreferedPlace/>
| |
| − | <DocStringFormats/>
| |
| − | </Traveller>
| |
| − | </Travellers>
| |
| − | </BookFlight>
| |
| − | <Requisites/>
| |
| − | <RequestType xsi:nil="true"/>
| |
| − | <UserID xsi:nil="true"/>
| |
| − | <Errors xsi:nil="true"/>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:BookFlightResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div> | |
| | | | |
| − | === Общий формат запроса / ответа отмены бронирования === | + | </tr> |
| | + | <tr class="row84"> |
| | + | <td class="col0">Tariffs</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для тарифов</td> |
| | + | </tr> |
| | + | <tr class="row85"> |
| | + | <td class="col0">Tariff</td><td class="col1">да</td><td class="col2">сложный</td><td class="col3">Контейнер для одного тарифа</td> |
| | | | |
| − | После бронирования, если не истек таймлимит можно аннулировать сделанный заказ. Аннуляция заказа в Nemo может быть ручной (сделанной пользователем) и автоматической — по истечению таймлимита, установленного для заказа система сама аннулирует заказ.
| + | </tr> |
| | + | <tr class="row86"> |
| | + | <td class="col0">Code</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Код тарифа</td> |
| | + | </tr> |
| | + | <tr class="row87"> |
| | + | <td class="col0">SegNum</td><td class="col1">да</td><td class="col2">число</td><td class="col3">Номер сегмента для которого применяется тариф, если тариф применяется для всех сегментов, то возвращается 0.</td> |
| | | | |
| − | WSDL: http://CLIENT_DOMAIN/nemoflights/wsdl.php?for=CancelBook
| + | </tr> |
| | + | <tr class="row88"> |
| | + | <td class="col0">FareCalc</td><td class="col1">нет</td><td class="col2">строка</td><td class="col3">Строка расчёта цены</td> |
| | + | </tr> |
| | + | <tr class="row89"> |
| | + | <td class="col0">LastTicketDateTime</td><td class="col1">да</td><td class="col2">строка</td><td class="col3">Дата и время таймлимита по выписке в формате ГГГГ-MM-ДДTЧЧ:ММ:СС. Если бронирование не будет аннулировано или выписано до этого времени, то могут быть применены штрафы.</td> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | </tr> |
| − | ===== Запрос =====
| + | </table> |
| − | <div class="mw-collapsible-content">
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DCancelBook">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:CancelBook>
| |
| − | <RequestBin>
| |
| − | <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>
| |
| − | </ver:CancelBook>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope> | |
| − | </syntaxhighlight> | |
| | </div> | | </div> |
| | </div> | | </div> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | ==API Отелей== |
| − | ===== Ответ =====
| + | '''Агентский API Отелей''' - система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации. |
| − | <div class="mw-collapsible-content">
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://CLIENT_DOMAIN/nemoflights/?version%3D1.0%26for%3DCancelBook" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:CancelBookResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <CancelBook BookID="?">
| |
| − | <!--BookID — Id брони в системе Nemo, целое число-->
| |
| − | <Result Success="?"/>
| |
| − | <!--Success — результат отмены брони, true или false-->
| |
| − | </CancelBook>
| |
| − | <Requisites/>
| |
| − | <RequestType xsi:nil="true"/>
| |
| − | <UserID xsi:nil="true"/>
| |
| − | <Errors xsi:nil="true"/>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:CancelBookResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div>
| |
| − | | |
| − | ==API бронирования, отмены отелей==
| |
| | | | |
| − | ==== Штрафы за аннуляцию ====
| + | Подробнее можно узнать в нашей специальной статье [http://support.nemo.travel/ru/%D0%90%D0%B3%D0%B5%D0%BD%D1%82%D1%81%D0%BA%D0%B8%D0%B9_API_%D0%9E%D1%82%D0%B5%D0%BB%D0%B5%D0%B9 Агентский АПИ отелей] |
| | | | |
| − | Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
| |
| | | | |
| − | Штрафы получаются по каждой услуге отдельным запросом. Нужно указать тип услуги, идентификатор результата поиска и выбранную категорию.
| |
| | | | |
| − | Внимание. Для отелей из Hotelbeds (Supplier=HOTELBEDS) штрафы до бронирования получить невозможно.
| + | ==Выгрузки статистики продаж через API (Метапоиск)== |
| | | | |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Penalty | + | '''Метапоисковая система''' (метапоисковая машина, метапоисковик) — это поисковая система, которая в отличие от классических поисковых машин не имеет собственной базы данных и собственного поискового индекса, а формирует поисковую выдачу за счет смешивания и переранжирования результатов поиска других поисковых систем. |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | В разделе статистики заказов из метапоисков можно получить данные по статистике метапоиска (по источнику переходов модуля метрики) <u>за определенный период бронирования заказов</u> в виде файла данных в формате XML. |
| − | ===== Запрос =====
| |
| − | <div class="mw-collapsible-content"> | |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DPenalty">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:penalty>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <Penalty>
| |
| − | <Item>
| |
| − | <Type>HOTELS</Type>
| |
| − | <CacheId>1867246</CacheId>
| |
| − | <CategoryId>1</CategoryId>
| |
| − | </Item>
| |
| − | </Penalty>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:penalty>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| | | | |
| − | Элемент '''Item'''
| + | Можно получить список заказов с их статусом (забронирован, выписан, аннулирован), сделанных через метапоисковую систему. |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Type
| |
| − | | Обязательный. Тип объекта.
| |
| − | | HOTELS
| |
| − | |-
| |
| − | | CacheId
| |
| − | | Обязательный. Идентификатор результата поиска в системе Nemo.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | CategoryId
| |
| − | | Обязательный. Идентификатор категории.
| |
| − | | Целое число
| |
| − | |}
| |
| | | | |
| − | Элемент '''Source'''
| + | Подробнее можно узнать в статье посвященной взаимодействию с метопоисковиками [[Взаимодействие с метапоисковиками]] |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | ==Выгрузка информации о заказах == |
| − | ===== Ответ =====
| + | '''Выгрузка заказов''' — это экспорт данных заказа или заказов для различных компонентов системы Nemo. Модуль позволяет внешней системе получать данные по заказам для дальнейшей обработки. |
| − | <div class="mw-collapsible-content">
| + | Подробнее о процессе выгрузки, настройках, форматах выгрузки для различных компонент можно прочитать в статье [[Выгрузка]] |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DPenalty">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:penaltyResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <Penalty>
| |
| − | <ItemDateBegin>2013-10-15 00:00:00</ItemDateBegin>
| |
| − | <CancelCharges>
| |
| − | <Charge>
| |
| − | <DateFrom>2013-10-12 00:00:00</DateFrom>
| |
| − | <DateTo>2013-10-15 23:59:59</DateTo>
| |
| − | <Money Currency="RUB">74733.84</Money>
| |
| − | </Charge>
| |
| − | <Charge>
| |
| − | <DateFrom>2013-09-23 00:00:00</DateFrom>
| |
| − | <DateTo>2013-10-11 00:00:00</DateTo>
| |
| − | <Money Currency="RUB">67260.46</Money>
| |
| − | </Charge>
| |
| − | <Charge>
| |
| − | <DateFrom>2013-08-01 17:59:00</DateFrom>
| |
| − | <DateTo>2013-09-22 00:00:00</DateTo>
| |
| − | <Money Currency="RUB">12455.64</Money>
| |
| − | </Charge>
| |
| − | </CancelCharges>
| |
| − | <ModifyCharges/>
| |
| − | </Penalty>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:penaltyResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| | | | |
| − | Элемент '''Penalty'''
| + | == API Синхронизации пользователей и субагентов == |
| − | {| style="width: 800px" class="wikitable"
| + | Назначение данного модуля — обеспечение взаимодействия между сторонней программой (например, системой автоматизации туроператора "САМО-тур") и Nemo в части синхронизации списка B2B-пользователей. |
| − | |-
| + | Модуль является компонентом, включаемым и отключаемым из административной части. |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ItemDateBegin
| |
| − | | Обязательный. Дата начала услуги (дата заселения в отель).
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | CancelCharges
| |
| − | | Необязательный. Содержит информацию о штрафах за аннуляцию.
| |
| − | | Элемент Charge
| |
| − | |-
| |
| − | | ModifyCharges
| |
| − | | Необязательный. Содержит информацию о штрафах за модификацию.
| |
| − | | Элемент Charge
| |
| − | |}
| |
| | | | |
| − | Штрафы разбиваются по временным интервалам. На каждом интервале указывается значение штрафа.
| + | О механизме авторизации B2B-пользователей, синхронизации учетных записей можно прочитать в статье [[Синхронизация пользователей]] |
| | | | |
| − | Элемент '''Charge'''
| + | ==API Кроссавторизации== |
| − | {| style="width: 800px" class="wikitable"
| + | '''Авторизация пользователей из внешних систем''' — Система Nemo позволяет обращаться к ней как базе пользователей для авторизации из других систем (например форума на сайте, собственного ПО компании и т.п) |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | DateFrom
| |
| − | | Обязательный. Дата/время начала интервала.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | DateTo
| |
| − | | Необязательный. Дата/время окончания интервала.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | Money
| |
| − | | Обязательный. Сумма штрафа.
| |
| − | | Вещественное число.
| |
| − | Атрибут: Currency - код валюты.
| |
| − | |}
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| | + | Для этого нужно подключиться к веб-службе авторизации, WSDL-описание которой располагается по адресу: |
| | | | |
| | + | [http://hostname/authorization_reol.wsdl http://hostname/authorization_reol.wsdl] |
| | | | |
| − | ==== Бронирование ====
| |
| | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> |
| | ===== Запрос ===== | | ===== Запрос ===== |
| | <div class="mw-collapsible-content"> | | <div class="mw-collapsible-content"> |
| − | Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
| |
| | | | |
| − | Сейчас же необходимо указывать только 1 услугу-отель (элемент Item) в запросе на бронирование.
| + | <pre>?xml version ='1.0' encoding ='UTF-8' ?> |
| | + | <definitions name='Authorization' |
| | + | targetNamespace='http://example.org/Authorization' |
| | + | xmlns:tns=' http://example.org/Authorization ' |
| | + | xmlns:soap='http://schemas.xmlsoap.org/wsdl/soap/' |
| | + | xmlns:xsd='http://www.w3.org/2001/XMLSchema' |
| | + | xmlns:soapenc='http://schemas.xmlsoap.org/soap/encoding/' |
| | + | xmlns:wsdl='http://schemas.xmlsoap.org/wsdl/' |
| | + | xmlns='http://schemas.xmlsoap.org/wsdl/'> |
| | + | |
| | + | <message name='getAuthorizationRequest'> |
| | + | <part name='login' type='xsd:string'/> |
| | + | <part name='pass' type='xsd:string'/> |
| | + | </message> |
| | + | <message name='getAuthorizationResponse'> |
| | + | <part name='session_id' type='xsd:string'/> |
| | + | <part name='user_id' type='xsd:string'/> |
| | + | <part name='login' type='xsd:string'/> |
| | + | <part name='status' type='xsd:string'/> |
| | + | </message> |
| | + | |
| | + | <portType name='AuthorizationPortType'> |
| | + | <operation name='getAuthorization'> |
| | + | <input message='tns:getAuthorizationRequest'/> |
| | + | <output message='tns:getAuthorizationResponse'/> |
| | + | </operation> |
| | + | </portType> |
| | + | |
| | + | <binding name='AuthorizationBinding' type='tns:AuthorizationPortType'> |
| | + | <soap:binding style='rpc' |
| | + | transport='http://schemas.xmlsoap.org/soap/http'/> |
| | + | <operation name='getAuthorization'> |
| | + | <soap:operation soapAction='urn:xmethods-delayed-quotes#getAuthorization'/> |
| | + | <input> |
| | + | <soap:body use='encoded' namespace='urn:xmethods-delayed-quotes' |
| | + | encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/> |
| | + | </input> |
| | + | <output> |
| | + | <soap:body use='encoded' namespace='urn:xmethods-delayed-quotes' |
| | + | encodingStyle='http://schemas.xmlsoap.org/soap/encoding/'/> |
| | + | </output> |
| | + | </operation> |
| | + | </binding> |
| | + | |
| | + | <service name='AuthorizationService'> |
| | + | <port name='AuthorizationPort' binding='AuthorizationBinding'> |
| | + | <soap:address location='http://nemo.local/controllers/authorization/auth_server.php'/> |
| | + | </port> |
| | + | </service> |
| | + | </definitions></pre> |
| | + | </div></div> |
| | | | |
| − | Для успешного запроса нужно указать:
| + | ==Передача параметров в форму поиска (FastSearch)== |
| − | #Услугу. В запросе не требуется перечислять все параметры из результатов поиска, достаточно указать уникальный ID результата.
| |
| − | #Информация о клиентах. Все клиенты перечисляются в отдельной ветке и нумеруются по порядку. Указатели (элементы с номером клиента), также добавляются в описание услуги.
| |
| − | #Заказчик. Указатель на одну персону.
| |
| | | | |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Booking
| + | В системе Nemo имеется возможность перенаправлять пользователей на страницу с уже заполненными параметрами поиска или сразу напрямую на результаты поиска. |
| | | | |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| + | Примеры FastSearch запросов и используемые переменные подробно описаны в статье [[FastSearch - передача параметров в форму]] |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DBooking">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:booking>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <Booking>
| |
| − | <Items>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Item>
| |
| − | <!--You have a CHOICE of the next 3 items at this level-->
| |
| − | <HotelBookData>
| |
| − | <CacheId>1872666</CacheId>
| |
| − | <CategoryId>1</CategoryId>
| |
| − | <Rooms>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Room Id="2">
| |
| − | <Persons>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Person Number="1"/>
| |
| − | <Person Number="2"/>
| |
| − | </Persons>
| |
| − | </Room>
| |
| − | <Room Id="1">
| |
| − | <Persons>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Person Number="3"/>
| |
| − | </Persons>
| |
| − | </Room>
| |
| − | </Rooms>
| |
| − | </HotelBookData>
| |
| − | <Customer>
| |
| − | <Person Number="1"/>
| |
| − | </Customer>
| |
| − | </Item>
| |
| − | </Items>
| |
| − | <Persons>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Person Number="1" Type="ADT">
| |
| − | <!--Optional:-->
| |
| − | <Lastname>IVANOV</Lastname>
| |
| − | <!--Optional:-->
| |
| − | <Name>IVAN</Name>
| |
| − | <!--Optional:-->
| |
| − | <Middlename>IVANOVICH</Middlename>
| |
| − | <!--Optional:-->
| |
| − | <DateOfBirth>1987-12-12</DateOfBirth>
| |
| − | <!--Optional:-->
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <!--Optional:-->
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <!--Optional:-->
| |
| − | <Gender>MR</Gender>
| |
| − | <!--Optional:-->
| |
| − | <Document Type="P">
| |
| − | <Series>1811</Series>
| |
| − | <Number>912219</Number>
| |
| − | <!--Optional:-->
| |
| − | <IssueDate>2012-12-12</IssueDate>
| |
| − | <!--Optional:-->
| |
| − | <ExpiryDate>2014-12-12</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | <Person Number="2" Type="CHD">
| |
| − | <!--Optional:-->
| |
| − | <Lastname>PETROV</Lastname>
| |
| − | <!--Optional:-->
| |
| − | <Name>IVAN</Name>
| |
| − | <!--Optional:-->
| |
| − | <Middlename>MIKHAILOVICH</Middlename>
| |
| − | <!--Optional:-->
| |
| − | <DateOfBirth>2008-12-12</DateOfBirth>
| |
| − | <!--Optional:-->
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <!--Optional:-->
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <!--Optional:-->
| |
| − | <Gender>MR</Gender>
| |
| − | <!--Optional:-->
| |
| − | <Document Type="P">
| |
| − | <Series>1866</Series>
| |
| − | <Number>913319</Number>
| |
| − | <!--Optional:-->
| |
| − | <IssueDate>2012-12-12</IssueDate>
| |
| − | <!--Optional:-->
| |
| − | <ExpiryDate>2014-12-12</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | <Person Number="3" Type="ADT">
| |
| − | <!--Optional:-->
| |
| − | <Lastname>SIDOROV</Lastname>
| |
| − | <!--Optional:-->
| |
| − | <Name>IVAN</Name>
| |
| − | <!--Optional:-->
| |
| − | <Middlename>SERGEEVICH</Middlename>
| |
| − | <!--Optional:-->
| |
| − | <DateOfBirth>1987-12-12</DateOfBirth>
| |
| − | <!--Optional:-->
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <!--Optional:-->
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <!--Optional:-->
| |
| − | <Gender>MR</Gender>
| |
| − | <!--Optional:-->
| |
| − | <Document Type="P">
| |
| − | <Series>1866</Series>
| |
| − | <Number>913319</Number>
| |
| − | <!--Optional:-->
| |
| − | <IssueDate>2012-12-12</IssueDate>
| |
| − | <!--Optional:-->
| |
| − | <ExpiryDate>2014-12-12</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | </Persons>
| |
| − | </Booking>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:booking>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| | | | |
| − | Элемент '''Booking'''
| + | FastSearch так же работает и для отелей, подробности в статье [[Fast Search для отелей]] |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Items
| |
| − | | Обязательный. Массив элементов Item.
| |
| − | | Элемент Item
| |
| − | |-
| |
| − | | Customer
| |
| − | | Обязательный. Элемент установки заказчика.
| |
| − | |
| |
| − | |-
| |
| − | | Persons
| |
| − | | Обязательный. Массив клиентов.
| |
| − | |
| |
| − | |}
| |
| | | | |
| − | Данные об услугах записываются в элементы <Item>.
| + | <!-- Т.к. это внутренний формат обмена данными между Немо и одним клиентом, то данную инфу скроем в комментарии |
| − | | + | ==Проверка в сторонней системе возможности тикетинга== |
| − | Элемент '''Item'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент | |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | HotelBookData
| |
| − | | Обязательный. В зависимости от типа объекта бронирования. В данный момент возможно указать только данные для отеля.
| |
| − | |
| |
| − | |-
| |
| − | | Persons
| |
| − | | Необязательный. Привязка клиентов к услуге. Если не указаны, будут привязаны все из указанных в главном элементе Booking.
| |
| − | | [<Person Number=''"1"'' />]
| |
| − | |}
| |
| − | | |
| − | <u>Бронирование отеля.</u>
| |
| − | Для бронирования отеля необходимы следующие параметры:
| |
| − | # ID результата поиска - один отель
| |
| − | # ID выбранной категории этого отеля
| |
| − | # Распределение клиентов по комнатам.
| |
| − | | |
| − | Элемент '''HotelBookData'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | CacheId
| |
| − | | Обязательный. Идентификатор результата поиска для данного отеля в системе Nemo.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | CategoryId
| |
| − | | Обязательный. Идентификатор категории.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Rooms
| |
| − | | Обязательный. Распределение клиентов по комнатам.
| |
| − | | Список элементов Room
| |
| − | |-
| |
| − | | Room
| |
| − | | Атрибут Id
| |
| − | Ид комнаты из результата поиска
| |
| − | | |
| − | Элемент Persons
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Persons
| |
| − | | Обязательный.
| |
| − | Список людей
| |
| − | | Список элементов Person
| |
| − | |-
| |
| − | | Person
| |
| − | | Обязательный.
| |
| − | Атрибут Number
| |
| − | Номер пассажира из Booking ->Persons->Person->Number
| |
| − | |
| |
| − | Целое число
| |
| − | |}
| |
| − | | |
| − | <u>Информация о клиентах.</u>
| |
| − | Для успешного завершения бронирования нужно указать как минимум одного клиента. Максимальное число клиентов в текущей версии не ограничено.
| |
| − | | |
| − | Набор обязательных данных может меняться в зависимости от типов услуг в бронировании. Рекомендуемый набор обязательных параметров: Lastname, Name, DateOfBirth. Остальные обязательные параметры будут устанавливаться индивидуально при подключении к сервису.
| |
| − | | |
| − | Элемент '''Person'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Атрибут Number
| |
| − | | Обязательный. Номер клиента, необходим для правильной привязки к услугам.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Type
| |
| − | | Обязательный.
| |
| − | Тип пассажира.
| |
| − | | Строка.
| |
| − | Возможные значения:
| |
| − | ADT
| |
| − | CLD
| |
| − | INF
| |
| − | |-
| |
| − | | Lastname
| |
| − | | Фамилия.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Name
| |
| − | | Имя.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | Middlename
| |
| − | | Отчество.
| |
| − | | Строка в произвольном формате.
| |
| − | |-
| |
| − | | DateOfBirth
| |
| − | | Дата рождения.
| |
| − | | Формат гггг-мм-дд.
| |
| − | |-
| |
| − | | Phone
| |
| − | | Телефон.
| |
| − | Рекомендуемый формат:
| |
| − | +79871234567
| |
| − | | Строка
| |
| − | |-
| |
| − | | Email
| |
| − | | Электронный адрес.
| |
| − | | Строка
| |
| − | |-
| |
| − | | Gender
| |
| − | | Пол.
| |
| − | | MR - мужчина,
| |
| − | MS - женщина.
| |
| − | |-
| |
| − | | Document
| |
| − | | Документ
| |
| − | | Элемент Document
| |
| − | |}
| |
| − | | |
| − | Для некоторых услуг может потребоваться информация о документах.
| |
| − | | |
| − | Элемент '''Document'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Атрибут Type
| |
| − | | Обязательный. Тип документа.
| |
| − | | P - загранпаспорт
| |
| − | C - внутренний гражданский паспорт
| |
| − | B - свидетельство о рождении
| |
| − | |-
| |
| − | | Series
| |
| − | | Необязательный. Серия документа. Можно указать слитно с номером в Number.
| |
| − | | Строка в произвольном формате
| |
| − | |-
| |
| − | | Number
| |
| − | | Обязательный. Номер документа.
| |
| − | | Строка в произвольном формате
| |
| − | |-
| |
| − | | IssueDate
| |
| − | | Необязательный. Дата выдачи документа.
| |
| − | | Формат гггг-мм-дд
| |
| − | |-
| |
| − | | ExpiryDate
| |
| − | | Необязательный. Дата истечения срока действия документа.
| |
| − | | Формат гггг-мм-дд
| |
| − | |}
| |
| − | | |
| − | Элемент '''Source'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | При выписки билета через стороннюю систему 1С, отправляется запрос "GetDebtCounterparty", который спрашивает, можно ли с счета в 1С списать средства для оплаты. В ответе содержится заключение от 1С, в случае если ошибок нет, то в ответе будет |
| − | ===== Ответ ===== | + | <pre><m:Opportunity>Да</m:Opportunity></pre> |
| − | <div class="mw-collapsible-content">
| + | Пример запроса "GetDebtCounterparty" |
| − | После выполнения запроса сразу поступит информация о бронировании. В первую очередь нужно внимательно проверить статусы <Status> всех услуг в бронировании. Если бронировалась услуга со статусом в результатах поиска RQ (по запросу), то статус скорее всего будет не равен «booked». Через некоторое время проверять реальный статус бука отправляя запрос на чтение данных о бронировании.
| + | <pre> |
| | + | <?xml version="1.0" encoding="UTF-8"?> |
| | | | |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DBooking"
| |
| − | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
| |
| | <SOAP-ENV:Body> | | <SOAP-ENV:Body> |
| − | <ns1:bookingResponse> | + | <ns1:GetDebtCounterparty> |
| − | <ResponseBin> | + | <ns1:ExternalUserId>00000001</ns1:ExternalUserId> |
| − | <Response>
| + | <ns1:ExternalPaymentId>00000001</ns1:ExternalPaymentId> |
| − | <Booking>
| + | <ns1:BaseFare>2490</ns1:BaseFare> |
| − | <Items>
| + | <ns1:Tax>643</ns1:Tax> |
| − | <Item Id="386610">
| + | <ns1:ValVendorCommission>49.8</ns1:ValVendorCommission> |
| − | <Hotel Id="1872666">
| + | <ns1:Locator>0X97T6</ns1:Locator> |
| − | <Supplier>GTA</Supplier>
| + | <ns1:Discount>0</ns1:Discount> |
| − | <CityId>22046</CityId>
| + | <ns1:Charge>0</ns1:Charge> |
| − | <DateBegin>2013-10-15</DateBegin>
| + | <ns1:Sum>3133</ns1:Sum> |
| − | <DateEnd>2013-10-18</DateEnd>
| + | <ns1:TotalPrice>3658.1</ns1:TotalPrice> |
| − | <CacheId>1872666</CacheId>
| + | <ns1:GDSCurrency>RUB</ns1:GDSCurrency> |
| − | <Name>ADLON KEMPINSKI</Name>
| + | <ns1:OrderCurrency>RUB</ns1:OrderCurrency> |
| − | <Categories>
| + | <ns1:OrderCurrencyRate>1</ns1:OrderCurrencyRate> |
| − | <Category Id="1">
| + | <ns1:beginDate>2014-08-30T11:05:00</ns1:beginDate> |
| − | <Rooms>
| + | </ns1:GetDebtCounterparty> |
| − | <Room Count="1" Id="1" ServiceId="1"/>
| |
| − | <Room Count="1" Id="2" ServiceId="2"/>
| |
| − | </Rooms>
| |
| − | <TotalPrice Currency="RUB">74733.84</TotalPrice>
| |
| − | </Category>
| |
| − | </Categories>
| |
| − | <Services>
| |
| − | <Service Id="1" Status="OK">
| |
| − | <Desc>Standard Twin</Desc>
| |
| − | <Meal>Full Breakfast</Meal>
| |
| − | <Price Currency="RUB">37366.92</Price>
| |
| − | </Service>
| |
| − | <Service Id="2" Status="OK">
| |
| − | <Desc>Standard Twin</Desc>
| |
| − | <Meal>Full Breakfast</Meal>
| |
| − | <Price Currency="RUB">37366.92</Price>
| |
| − | </Service>
| |
| − | </Services>
| |
| − | <Rooms>
| |
| − | <Room Id="1" Type="TWIN"/>
| |
| − | <Room Id="2" Type="SNGL"/>
| |
| − | </Rooms>
| |
| − | </Hotel>
| |
| − | <Type>HOTELS</Type>
| |
| − | <Status>waiting</Status>
| |
| − | <Prices>
| |
| − | <Price Currency="RUB">74733.84</Price>
| |
| − | <Charges Currency="RUB">0</Charges>
| |
| − | <Commission Currency="RUB">0</Commission>
| |
| − | <Penalty Currency="RUB">0</Penalty>
| |
| − | <TotalPrice Currency="RUB">74733.84</TotalPrice>
| |
| − | </Prices>
| |
| − | <Dates>
| |
| − | <BookingDate>2013-08-01 19:49:56</BookingDate>
| |
| − | <UpdateDate>2013-08-01 19:49:57</UpdateDate>
| |
| − | <CancelDate xsi:nil="true"/>
| |
| − | <PenaltyDate>2013-07-31 19:10:37</PenaltyDate>
| |
| − | <AutoCancelDate>2013-08-01 19:51:56</AutoCancelDate>
| |
| − | <ConfirmationLimit/>
| |
| − | </Dates>
| |
| − | <Statuses>
| |
| − | <PaymentStatus>1</PaymentStatus>
| |
| − | <DocumentStatus>1</DocumentStatus>
| |
| − | <DeliveryStatus>1</DeliveryStatus>
| |
| − | <InvoiceStatus>1</InvoiceStatus>
| |
| − | <ProblemStatus>1</ProblemStatus>
| |
| − | </Statuses>
| |
| − | <Customer>
| |
| − | <Person Number="1"/>
| |
| − | </Customer>
| |
| − | <Persons>
| |
| − | <Person Number="1"/>
| |
| − | <Person Number="2"/>
| |
| − | <Person Number="3"/>
| |
| − | </Persons>
| |
| − | </Item>
| |
| − | </Items>
| |
| − | <Persons>
| |
| − | <Person Number="1">
| |
| − | <Lastname>IVANOV</Lastname>
| |
| − | <Name>IVAN</Name>
| |
| − | <Middlename>IVANOVICH</Middlename>
| |
| − | <DateOfBirth xsi:nil="true"/>
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <Gender xsi:nil="true"/>
| |
| − | <Document Type="P">
| |
| − | <Series>1811</Series>
| |
| − | <Number>912219</Number>
| |
| − | <IssueDate>2012-12-12 00:00:00</IssueDate>
| |
| − | <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | <Person Number="2">
| |
| − | <Lastname>PETROV</Lastname>
| |
| − | <Name>IVAN</Name>
| |
| − | <Middlename>MIKHAILOVICH</Middlename>
| |
| − | <DateOfBirth xsi:nil="true"/>
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <Gender xsi:nil="true"/>
| |
| − | <Document Type="P">
| |
| − | <Series>1866</Series>
| |
| − | <Number>913319</Number>
| |
| − | <IssueDate>2012-12-12 00:00:00</IssueDate>
| |
| − | <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | <Person Number="3">
| |
| − | <Lastname>SIDOROV</Lastname>
| |
| − | <Name>IVAN</Name>
| |
| − | <Middlename>SERGEEVICH</Middlename>
| |
| − | <DateOfBirth xsi:nil="true"/>
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <Gender xsi:nil="true"/>
| |
| − | <Document Type="P">
| |
| − | <Series>1866</Series>
| |
| − | <Number>913319</Number>
| |
| − | <IssueDate>2012-12-12 00:00:00</IssueDate>
| |
| − | <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | </Persons>
| |
| − | </Booking>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:bookingResponse> | |
| | </SOAP-ENV:Body> | | </SOAP-ENV:Body> |
| | </SOAP-ENV:Envelope> | | </SOAP-ENV:Envelope> |
| − | </syntaxhighlight>
| |
| − |
| |
| − | Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
| |
| − |
| |
| − | Элемент '''Booking'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Items
| |
| − | | Обязательный. Содержит элемент(ы) Item.
| |
| − | | Элемент Item
| |
| − | |-
| |
| − | | Persons
| |
| − | | Обязательный. Здесь перечислены все клиенты заказа.
| |
| − | | Элемент Person
| |
| − | |}
| |
| − |
| |
| − | В элементах Item раскрывается подробнейшая информация об одной услуге в бронировании.
| |
| − |
| |
| − | Элемент '''Item'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный.
| |
| − | Номер заказа в системе Nemo.
| |
| − | | Целое число
| |
| − | |-
| |
| − | | Type
| |
| − | | Обязательный.
| |
| − | Тип объекта бронирования.
| |
| − | | HOTELS
| |
| − | |-
| |
| − | | Status
| |
| − | | Обязательный. Статус объекта бронирования .
| |
| − | | booked - забронирован
| |
| − | cancelled - аннулирован
| |
| − | pending confirmation - в процессе подтверждения
| |
| − | pending – произошла попытка бронирования, которое не было завершено
| |
| − | waiting – ожидается результат запроса на бронирование
| |
| − | |-
| |
| − | | Prices
| |
| − | | Обязательный. Данные о ценах.
| |
| − | | см. Элемент Prices
| |
| − | |-
| |
| − | | Dates
| |
| − | | Обязательный. Данные о датах.
| |
| − | | см. Элемент Dates
| |
| − | |-
| |
| − | | Statuses
| |
| − | | Обязательный. Различные дополнительные статусы заказанной услуги.
| |
| − | | см. Элемент Statuses
| |
| − | |-
| |
| − | | Persons
| |
| − | | Обязательный. Содержит клиентов привязанных к услуге.
| |
| − | | элементы Person
| |
| − | |-
| |
| − | | Hotel
| |
| − | | Необязательный. Элемент с данными об отеле.
| |
| − | | см. элемент Hotel (результат поиска отеля)
| |
| − | |}
| |
| − |
| |
| − | Информация о цене услуги вынесена в отдельную ветку:
| |
| − |
| |
| − | Элемент '''Prices'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Price
| |
| − | | Обязательный. Базовая цена услуги.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |-
| |
| − | | Charges
| |
| − | | Необязательный. Сумма дополнительных сборов.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |-
| |
| − | | Commission
| |
| − | | Необязательный. Сумма комиссий (вычитается из общей стоимости).
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |-
| |
| − | | Penalty
| |
| − | | Необязательный. Сумма штрафов.
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |-
| |
| − | | TotalPrice
| |
| − | | Обязательный. Итоговая стоимость.
| |
| − | = Price + Charges + Commission
| |
| − | | Вещественное число.
| |
| − | Атрибут Currency - код валюты.
| |
| − | |}
| |
| − |
| |
| − | Информация о датах услуги также вынесена в отдельную ветку:
| |
| − |
| |
| − | Элемент '''Dates'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | BookingDate
| |
| − | | Обязательный. Дата бронирования.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | UpdateDate
| |
| − | | Необязательный. Дата обновления.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | CancelDate
| |
| − | | Необязательный. Дата аннуляции.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | PenaltyDate
| |
| − | | Необязательный. Дата наступления штрафов.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |-
| |
| − | | AutoCancelDate
| |
| − | | Необязательный. Дата автоаннулирования.
| |
| − | | Формат гггг-мм-дд чч:мм:сс
| |
| − | |}
| |
| − |
| |
| − | Дополнительные статусы:
| |
| − |
| |
| − | Элемент '''Statuses'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | PaymentStatus
| |
| − | | Необязательный.
| |
| − | Статус оплаты.
| |
| − | | Целое число
| |
| − | 1 - неоплачено
| |
| − | 2 - частично оплачено
| |
| − | 3 - оплачено
| |
| − | |-
| |
| − | | DocumentStatus
| |
| − | | Необязательный.
| |
| − | Статус ваучера.
| |
| − | | Целое число
| |
| − | 1 - документ не сформирован
| |
| − | 2 - документ сформирован
| |
| − | |-
| |
| − | | DeliveryStatus
| |
| − | | Необязательный.
| |
| − | Статус доставки.
| |
| − | | Целое число
| |
| − | 1 - не доставлен
| |
| − | 2 - доставлен
| |
| − | |-
| |
| − | | InvoiceStatus
| |
| − | | Необязательный.
| |
| − | Статус счета.
| |
| − | | Целое число
| |
| − | 1 - счет выставлен.
| |
| − | 2 - счет не выставлен.
| |
| − | |}
| |
| − |
| |
| − | Информация о клиентах заказа полностью повторяет структуру запроса.
| |
| − | </div>
| |
| − | </div>
| |
| − |
| |
| − |
| |
| − |
| |
| − | ==== Подтверждение бронирования ====
| |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| |
| − | ===== Запрос =====
| |
| − | <div class="mw-collapsible-content">
| |
| − | Подтверждение бронирования заказа.
| |
| − |
| |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=ConfirmBooking
| |
| − |
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DConfirmBooking">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:confirm>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <BookingId>179547</BookingId>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:confirm>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − |
| |
| − | Элемент '''Request'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | BookingID
| |
| − | | Обязательный. Идентификатор заказа в системе Nemo.
| |
| − | | Целое число
| |
| − | |}
| |
| − |
| |
| − | Элемент '''Source'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | </pre> |
| − | ===== Ответ ===== | + | Пример ответа "GetDebtCounterparty" |
| − | <div class="mw-collapsible-content"> | + | <pre> |
| | + | <?xml version="1.0"?> |
| | + | <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> |
| | + | <soap:Header/> |
| | + | <soap:Body> |
| | + | <m:GetDebtCounterpartyResponse xmlns:m="http://DOMEN_NAME/avia"> |
| | + | <m:return xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="m:AnswerDebt"> |
| | + | <m:Opportunity>Да</m:Opportunity> |
| | + | <m:Message1/> |
| | + | </m:return> |
| | + | </m:GetDebtCounterpartyResponse> |
| | + | </soap:Body> |
| | + | </soap:Envelope> |
| | | | |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | </pre> |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DConfirmBooking">
| |
| − | <SOAP-ENV:Body>
| |
| − | <ns1:confirmResponse>
| |
| − | <ResponseBin>
| |
| − | <Response>
| |
| − | <Books>
| |
| − | <Book>
| |
| − | <Id>179547</Id>
| |
| − | <Status>booked</Status>
| |
| − | </Book>
| |
| − | </Books>
| |
| − | </Response>
| |
| − | </ResponseBin>
| |
| − | </ns1:confirmResponse>
| |
| − | </SOAP-ENV:Body>
| |
| − | </SOAP-ENV:Envelope>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div>
| |
| | | | |
| | + | == Загрузка счетов из сторонней системы == |
| | | | |
| − | ==== Выгрузка актуальных данных по заказу(ам) ====
| + | При взаимодействии с веб-сервисом 1С, на этапе бронирования отправляется запрос, на создание аккаунта 1С, содержащий в себе данные счета. В системе логирования этот запрос можно найти под именем «[GDS] Запрос "NewAccount"» и ответ «[GDS] Ответ "NewAccount"» |
| − | Используется для экспорта бронирований и для обновления данных в локальной клиентской базе.
| |
| | | | |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Export
| + | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| + | === Пример запроса === |
| − | ===== Запрос =====
| |
| | <div class="mw-collapsible-content"> | | <div class="mw-collapsible-content"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:export>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <Export>
| |
| − | <Items>
| |
| − | <!--Zero or more repetitions:-->
| |
| − | <Item Id="386621"/>
| |
| − | </Items>
| |
| − | </Export>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:export>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| | | | |
| − | Элемент '''Item'''
| + | <pre> |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор заказа в системе Nemo.
| |
| − | | Целое число
| |
| − | |}
| |
| | | | |
| − | Элемент '''Source'''
| + | <?xml version="1.0" encoding="UTF-8"?> |
| − | {| style="width: 800px" class="wikitable"
| + | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://DOMEN_NAME" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div> | |
| − | </div>
| |
| − | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| |
| − | ===== Ответ =====
| |
| − | <div class="mw-collapsible-content">
| |
| − | Ответ содержит элементы результатов бронирований. См. описание выше.
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" | |
| − | xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport" | |
| − | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> | |
| | <SOAP-ENV:Body> | | <SOAP-ENV:Body> |
| − | <ns1:exportResponse> | + | <ns1:NewAccount> |
| − | <ResponseBin> | + | <ns1:Input> |
| − | <Response> | + | <ns1:CompanyID>0001</ns1:CompanyID> |
| − | <Export>
| + | <ns1:ID>123321</ns1:ID> |
| − | <Items>
| + | <ns1:ExternalUserId>00123321</ns1:ExternalUserId> |
| − | <Item Id="386621">
| + | <ns1:Locator>11KW22</ns1:Locator> |
| − | <Hotel Id="1872666">
| + | <ns1:ExternalPaymentId>0</ns1:ExternalPaymentId> |
| − | <Supplier>GTA</Supplier>
| + | <ns1:Tickets> |
| − | <CityId>22046</CityId>
| + | <ns1:IATAValidator>92222616</ns1:IATAValidator> |
| − | <DateBegin>2013-10-15</DateBegin>
| + | <ns1:ValVendor>UT</ns1:ValVendor> |
| − | <DateEnd>2013-10-18</DateEnd>
| + | <ns1:GDSCurrency>RUB</ns1:GDSCurrency> |
| − | <CacheId>1872666</CacheId>
| + | <ns1:OrderCurrency>RUB</ns1:OrderCurrency> |
| − | <Name>ADLON KEMPINSKI</Name>
| + | <ns1:OrderCurrencyRate>1</ns1:OrderCurrencyRate> |
| − | <Categories>
| + | <ns1:BaseFare>8990</ns1:BaseFare> |
| − | <Category Id="1">
| + | <ns1:Tax> |
| − | <Rooms>
| + | <ns1:Code>YQ</ns1:Code> |
| − | <Room Count="1" Id="1" ServiceId="1"/>
| + | <ns1:Amount>975</ns1:Amount> |
| − | <Room Count="1" Id="2" ServiceId="2"/>
| + | </ns1:Tax> |
| − | </Rooms>
| + | <ns1:Tax> |
| − | <TotalPrice Currency="RUB">74733.84</TotalPrice>
| + | <ns1:Code>YR</ns1:Code> |
| − | </Category>
| + | <ns1:Amount>75</ns1:Amount> |
| − | </Categories>
| + | </ns1:Tax> |
| − | <Services>
| + | <ns1:Segment> |
| − | <Service Id="1" Status="OK">
| + | <ns1:StartDate>2015-02-17T20:20:00</ns1:StartDate> |
| − | <Desc>Standard Twin</Desc>
| + | <ns1:StartAirportCode>VKO</ns1:StartAirportCode> |
| − | <Meal>Full Breakfast</Meal>
| + | <ns1:EndAirportCode>SGC</ns1:EndAirportCode> |
| − | <Price Currency="RUB">37366.92</Price>
| + | <ns1:CompanyCode>UT</ns1:CompanyCode> |
| − | </Service>
| + | <ns1:Tariffs>OSSOW</ns1:Tariffs> |
| − | <Service Id="2" Status="OK">
| + | <ns1:FlightNumber>295</ns1:FlightNumber> |
| − | <Desc>Standard Twin</Desc>
| + | <ns1:StopOver>O</ns1:StopOver> |
| − | <Meal>Full Breakfast</Meal>
| + | <ns1:ClassTypeCode>O</ns1:ClassTypeCode> |
| − | <Price Currency="RUB">37366.92</Price>
| + | </ns1:Segment> |
| − | </Service>
| + | <ns1:FullName>PASSANGER NAME</ns1:FullName> |
| − | </Services>
| + | </ns1:Tickets> |
| − | <Rooms>
| + | <ns1:Options> |
| − | <Room Id="1" Type="TWIN"/>
| + | <ns1:Name>Service</ns1:Name> |
| − | <Room Id="2" Type="SNGL"/>
| + | <ns1:StringValue>GALILEO</ns1:StringValue> |
| − | </Rooms>
| + | <ns1:NumericValue xsi:nil="true"/> |
| − | </Hotel>
| + | <ns1:DateValue xsi:nil="true"/> |
| − | <Type>HOTELS</Type>
| + | </ns1:Options> |
| − | <Status>waiting</Status>
| + | <ns1:Options> |
| − | <Prices>
| + | <ns1:Name>AAA</ns1:Name> |
| − | <Price Currency="RUB">74733.84</Price>
| + | <ns1:StringValue>000A</ns1:StringValue> |
| − | <Charges Currency="RUB">0</Charges>
| + | <ns1:NumericValue xsi:nil="true"/> |
| − | <Commission Currency="RUB">0</Commission>
| + | <ns1:DateValue xsi:nil="true"/> |
| − | <Penalty Currency="RUB">0</Penalty>
| + | </ns1:Options> |
| − | <TotalPrice Currency="RUB">74733.84</TotalPrice>
| + | <ns1:Options> |
| − | </Prices>
| + | <ns1:Name>Checkbox</ns1:Name> |
| − | <Dates>
| + | <ns1:StringValue>YES</ns1:StringValue> |
| − | <BookingDate>2013-08-01 20:21:47</BookingDate>
| + | <ns1:NumericValue xsi:nil="true"/> |
| − | <UpdateDate>2013-08-01 20:35:01</UpdateDate>
| + | <ns1:DateValue xsi:nil="true"/> |
| − | <CancelDate xsi:nil="true"/>
| + | </ns1:Options> |
| − | <PenaltyDate>2013-07-31 19:10:37</PenaltyDate>
| + | </ns1:Input> |
| − | <AutoCancelDate>2013-08-01 20:23:47</AutoCancelDate>
| + | </ns1:NewAccount> |
| − | <ConfirmationLimit/>
| |
| − | </Dates>
| |
| − | <Statuses>
| |
| − | <PaymentStatus>1</PaymentStatus>
| |
| − | <DocumentStatus>1</DocumentStatus>
| |
| − | <DeliveryStatus>1</DeliveryStatus>
| |
| − | <InvoiceStatus>1</InvoiceStatus>
| |
| − | <ProblemStatus>1</ProblemStatus>
| |
| − | </Statuses>
| |
| − | <Customer>
| |
| − | <Person Number="1"/>
| |
| − | </Customer>
| |
| − | <Persons>
| |
| − | <Person Number="1"/>
| |
| − | <Person Number="2"/>
| |
| − | <Person Number="3"/>
| |
| − | </Persons>
| |
| − | </Item>
| |
| − | </Items>
| |
| − | <Persons>
| |
| − | <Person Number="1">
| |
| − | <Lastname>IVANOV</Lastname>
| |
| − | <Name>IVAN</Name>
| |
| − | <Middlename>IVANOVICH</Middlename>
| |
| − | <DateOfBirth xsi:nil="true"/>
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <Gender xsi:nil="true"/>
| |
| − | <Document Type="P">
| |
| − | <Series>1811</Series>
| |
| − | <Number>912219</Number>
| |
| − | <IssueDate>2012-12-12 00:00:00</IssueDate>
| |
| − | <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | <Person Number="2">
| |
| − | <Lastname>PETROV</Lastname>
| |
| − | <Name>IVAN</Name>
| |
| − | <Middlename>MIKHAILOVICH</Middlename>
| |
| − | <DateOfBirth xsi:nil="true"/>
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <Gender xsi:nil="true"/>
| |
| − | <Document Type="P">
| |
| − | <Series>1866</Series>
| |
| − | <Number>913319</Number>
| |
| − | <IssueDate>2012-12-12 00:00:00</IssueDate>
| |
| − | <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | <Person Number="3">
| |
| − | <Lastname>SIDOROV</Lastname>
| |
| − | <Name>IVAN</Name>
| |
| − | <Middlename>SERGEEVICH</Middlename>
| |
| − | <DateOfBirth xsi:nil="true"/>
| |
| − | <Phone>+79871231212</Phone>
| |
| − | <Email>m.rudenko@mute-lab.com</Email>
| |
| − | <Gender xsi:nil="true"/>
| |
| − | <Document Type="P">
| |
| − | <Series>1866</Series>
| |
| − | <Number>913319</Number>
| |
| − | <IssueDate>2012-12-12 00:00:00</IssueDate>
| |
| − | <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
| |
| − | </Document>
| |
| − | </Person>
| |
| − | </Persons>
| |
| − | </Export>
| |
| − | </Response>
| |
| − | </ResponseBin> | |
| − | </ns1:exportResponse> | |
| | </SOAP-ENV:Body> | | </SOAP-ENV:Body> |
| | </SOAP-ENV:Envelope> | | </SOAP-ENV:Envelope> |
| − | </syntaxhighlight>
| |
| − |
| |
| − | Формат ответа аналогичен результату бронирования.
| |
| − | </div>
| |
| − | </div>
| |
| − |
| |
| − |
| |
| − |
| |
| − | ==== Аннуляция заказа ====
| |
| − | '''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CancelBooking
| |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
| |
| − | ===== Запрос =====
| |
| − | <div class="mw-collapsible-content">
| |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| |
| − | <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
| |
| − | xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCancelBooking">
| |
| − | <soapenv:Header/>
| |
| − | <soapenv:Body>
| |
| − | <ver:cancel>
| |
| − | <RequestBin>
| |
| − | <Request>
| |
| − | <CancelBooking>
| |
| − | <Item Id="386621"/>
| |
| − | </CancelBooking>
| |
| − | </Request>
| |
| − | <Source>
| |
| − | <ClientId></ClientId>
| |
| − | <APIKey></APIKey>
| |
| − | <Language>ru</Language>
| |
| − | <Currency>RUB</Currency>
| |
| − | </Source>
| |
| − | </RequestBin>
| |
| − | </ver:cancel>
| |
| − | </soapenv:Body>
| |
| − | </soapenv:Envelope>
| |
| − | </syntaxhighlight>
| |
| − |
| |
| − | Элемент '''Item'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | Атрибут Id
| |
| − | | Обязательный. Идентификатор заказа в системе Nemo.
| |
| − | | Целое число
| |
| − | |}
| |
| − |
| |
| − | Элемент '''Source'''
| |
| − | {| style="width: 800px" class="wikitable"
| |
| − | |-
| |
| − | ! scope="col" width="200" | Элемент
| |
| − | ! scope="col" width="300" | Описание
| |
| − | ! scope="col" width="300" | Допустимые значения
| |
| − | |-
| |
| − | | ClientID
| |
| − | | Обязательный. ID клиента в системе Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Целое число.
| |
| − | |-
| |
| − | | APIKey
| |
| − | | Обязательный. APIKey - секретный ключ доступа к API Nemo.
| |
| − | Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
| |
| − | | Латинские буквы и цифры. Всего 32 символа.
| |
| − | |}
| |
| − | </div>
| |
| − | </div>
| |
| − |
| |
| − | ===== Ответ =====
| |
| − | см. результаты бронирования.
| |
| − |
| |
| − | ==Выгрузки статистики продаж через API==
| |
| − |
| |
| − |
| |
| − | === Общие положения ===
| |
| − |
| |
| − | Агрегация - слияние массива объектов с данными в один объект(в идеале) или в несколько объектов(если в объектах есть св-ва неподдающиеся агрегации).
| |
| − | Агрегации обычно поддаются свойства объектов с количественными значениями (кол-во времени, кол-во денег и т.д.). Объекты с такими свойствами будут автоматически агрегироваться при получении статистики.
| |
| − |
| |
| − | Если в этих объектах есть свойство, обозначающее количество чего-нибудь, то в соответствующее свойство конечного объекта запишется сумма свойств исходных объектов.
| |
| − | Если в этих объектах есть свойство, обозначающее максимальное кол-во чего-нибудь за время формирования объекта, то в соответствующее свойство конечного объекта запишется максимальное значение из свойств исходных объектов.
| |
| − | Если в этих объектах есть свойство, обозначающее минимальное кол-во чего-нибудь за время формирования объекта, то в соответствующее свойство конечного объекта запишется минимальное значение из свойств исходных объектов.
| |
| − | Если в этих объектах есть свойство, обозначающее среднее кол-во чего-нибудь за время формирования объекта, то в соответствующее свойство конечного объекта запишется усреднённое значение свойств исходных объектов.
| |
| − |
| |
| − | Многие свойства не всегда поддаются агрегации (например названия или идентификаторы чего-нибудь), их нельзя просуммировать, или взять среднее, максимальное или минимальное значение. Такие свойства аггрегируются только, когда у них одинаковые значения; в свойство конечного объекта запишется это самое значение.
| |
| − | Объекты с такими свойствами не агрегируются, даже если в этих объектах есть свойства, поддающиеся агрегации.
| |
| − | Однако если нам всё же необходимо проагрегировать объекты с неагрегируемыми свойстами, то следует явно указать эти свойства.
| |
| − | При агрегации таких объектов все неагрегируемые свойства, указанные нами в результатирующем объекте останутся без значений.
| |
| − |
| |
| − |
| |
| | | | |
| − | ==== Общее о методах получения статистики ====
| |
| − | Во всех запросах получения статистики присутствуют следующие параметры:
| |
| − | * '''DateStart''' - Дата начала временного промежутка получения статистики в формате dd.mm.yyyy. Тип данных - строка.
| |
| − | * '''DateEnd''' - Дата окончания временного промежутка получения статистики в формате dd.mm.yyyy. Тип данных - строка.
| |
| − | Эти две даты по сути являются временным промежутком по которому получается статистика.
| |
| − | * '''GroupBy''' - Временная единица, по которой следует группировать данные. Например, если выбран параметр группировки по дням, то записи статистики из одного дня будут агрегироваться с другими записями из этого же дня и в результате будут возвращены эти проагрегированные записи. Тип данных - перечисление. Возможные значения:
| |
| − | ** Hour - По часам.
| |
| − | ** Day - По дням.
| |
| − | ** Week - По неделям.
| |
| − | ** Month - По месяцам.
| |
| − | ** Year - По годам.
| |
| | | | |
| − | === Получение статистики поисков ===
| + | </pre> |
| − | ===== Запрос =====
| + | </div></div> |
| − | * '''DateStart'''
| |
| − | * '''DateEnd'''
| |
| − | * '''GroupBy'''
| |
| − | * '''SubAgenciesIDs''' - Идентификаторы субагентств, по которым получаем статистику. Тип данных - массив элементов ID.
| |
| − | * '''SubAgenciesIDs.ID''' - Идентификатор субагента. Тип данных - целое 32-битное число.
| |
| − | * '''AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''AggregateBy''' - Агрегировать данные. тип данных - перечисление. Возможные значения (может быть несколько через пробел)(может быть пустым):
| |
| − | ** None - Не агрегировать
| |
| − | ** Agencies (1) по агентствам
| |
| − | ** SubAgencies (2) по субагентствам
| |
| − | ** Users (4) по пользователям
| |
| − | ** Requisites (8) по реквизитам
| |
| − | ** SuppliersAndRequisites (24) по поставщикам и реквизитам
| |
| − | * '''SortParams''' - Параметры сортировки результатов статистики. Можно указать до двух параметров. Тип данных - массив элементов SortParam.
| |
| − | * '''SortParams.SortParam''' - Параметр сортировки элементов. Тип данных - сложный.
| |
| − | * '''SortParams.SortParam.SortValue''' - Поле, по которому элементы будут сортироваться. Тип данных - перечисление. Возможные значения:
| |
| − | ** DateTime (0) по дате
| |
| − | ** SearchCount (1) по количеству поисков
| |
| − | * '''SortParams.SortParam.OrderBy''' - Порядок сортировки. Тип данных - перечисление. Возможные значения (может быть пустым):
| |
| − | ** Asc (0) по возрастанию
| |
| − | ** Desc (1) по убыванию
| |
| − | * '''Top''' - Ограничение сверху количества элементов в результате. тип данных - целое 32-битное число.
| |
| | | | |
| − | <div class="toccolours mw-collapsible mw-collapsed" style="width:1000px"> | + | <div class="toccolours mw-collapsible mw-collapsed" style="width:800px"> |
| − | ===== Пример запроса (XML)=====
| + | === Пример ответа === |
| | <div class="mw-collapsible-content"> | | <div class="mw-collapsible-content"> |
| − | <syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;"> | + | <pre> |
| − | | |
| − | <GetSearchStatistics>
| |
| − | <request>
| |
| − | <RequestBody>
| |
| − | <DateStart>04.08.2014</DateStart>
| |
| − | <DateEnd>12.08.2014</DateEnd>
| |
| − | <GroupBy>Week</GroupBy>
| |
| − | <!--Optional:-->;
| |
| − | <SubAgenciesIDs>
| |
| − | <!--Zero or more repetitions:-->;
| |
| − | <ID></ID><
| |
| − | </SubAgenciesIDs></font>
| |
| − | <!--Optional:-->
| |
| − | <AgencyID></AgencyID>
| |
| − | <!--Optional:-->
| |
| − | <AggregateBy></font>SuppliersAndRequisites</AggregateBy>
| |
| − | <!--Optional:-->;
| |
| − | <SortParams>
| |
| − | <!--Zero or more repetitions:-->;
| |
| − | <SortParam>
| |
| − | <SortValue>DateTime</SortValue>
| |
| − | <OrderBy>Desc</OrderBy>
| |
| − | </SortParam>
| |
| − | <SortParam>
| |
| − | <SortValue>SearchCount</SortValue>
| |
| − | <OrderBy>Asc</OrderBy>
| |
| − | </SortParam>
| |
| − | </SortParams>
| |
| − | <!--Optional:-->;
| |
| − | <Top>2</Top>
| |
| − | </RequestBody>
| |
| − | </request>
| |
| − | </GetSearchStatistics>
| |
| − | </syntaxhighlight>
| |
| − | </div>
| |
| − | </div>
| |
| − | | |
| − | ===== Ответ =====
| |
| − | * '''StatisticsItems''' - Объекты статистики. Тип данных - массив элементов SearchStatsItem.
| |
| − | * '''StatisticsItems.SearchStatsItem''' - Объект статистики поисков. Тип данных - сложный.
| |
| − | * '''StatisticsItems.SearchStatsItem.ServiceType''' - Тип услуги (авиа/отели/...). Тип данных - перечисление. Возможные значения:
| |
| − | ** Avia (0) авиа услуга (перелёт)
| |
| − | ** Hotel (1) отель
| |
| − | ** Rail (2) ж/д услуга
| |
| − | ** Other (33) прочие услуги неизвестного типа
| |
| − | * '''StatisticsItems.SearchStatsItem.DateTime''' - Время начала периода сбора статистики.
| |
| − | * '''StatisticsItems.SearchStatsItem.UserID''' - Идентификатор пользователя. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.SearchStatsItem.AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.SearchStatsItem.SubAgencyID''' - Идентификатор субагенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.SearchStatsItem.Supplier''' - Поставщик. Тип данных - перечисление. Возможные значения:
| |
| − | * '''StatisticsItems.SearchStatsItem.SearchRequisites''' - Поисковые реквизиты. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchStatsItem.SearchCount''' - Число поисков. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.SearchWithErrorCount''' - Число поисков с ошибками. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.EmptySearchCount''' - Число поисков без результатов. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.AvgResultsCount''' - Среднее кол-во результатов в поиске. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.MinResultsCount''' - Минимальное кол-во результатов в поиске. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.MaxResultsCount''' - Максимальное кол-во результатов в поиске. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.AvgSearchDuration''' - Средняя продолжительность поиска. Тип данных - TimeSpan.
| |
| − | * '''StatisticsItems.SearchStatsItem.MinSearchDuration''' - Минимальная продолжительность поиска. Тип данных - TimeSpan.
| |
| − | * '''StatisticsItems.SearchStatsItem.MaxSearchDuration''' - Максимальная продолжительность поиска. Тип данных - TimeSpan.
| |
| − | * '''StatisticsItems.SearchStatsItem.Supplier''' - Название поставщика. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchStatsItem.SearchRequisites''' - Поисковые реквизиты. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchStatsItem.GDSScans''' - Число запросов к ГДС во время поиска. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.CacheSearchCount''' - Число поисков в кэше. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchStatsItem.AvgGDSSearchDuration''' - Средняя продолжительность поиска в ГДС. Тип данных - TimeSpan.
| |
| − | * '''StatisticsItems.SearchStatsItem.MinGDSSearchDuration''' - Минимальная продолжительность поиск в ГДС. Тип данных - TimeSpan.
| |
| − | * '''StatisticsItems.SearchStatsItem.MaxGDSSearchDuration''' - Максимальная продолжительность поиска в ГДС. Тип данных - TimeSpan.
| |
| − | ===== Пример ответа (XML)=====
| |
| | | | |
| − | <code> | + | <?xml version="1.0"?> |
| − | <font color="blue"><GetSearchStatisticsResponse></font>
| + | <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> |
| − | <font color="blue"><GetSearchStatisticsResult></font>
| + | <soap:Header/> |
| − | <font color="blue"><RequestID></font>62393<font color="blue"></RequestID></font>
| + | <soap:Body> |
| − | <font color="blue"><ResponseBody></font>
| + | <m:NewAccountResponse xmlns:m="http://DOMEN_NAME"> |
| − | <font color="blue"><StatisticsItems></font>
| + | <m:return xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="m:outInvoice"> |
| − | <font color="blue"><SearchStatsItem></font>
| + | <m:NoDoc>00015365</m:NoDoc> |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| + | <m:DateInvoice>2015-02-04T00:00:00</m:DateInvoice> |
| − | <font color="blue"><DateTime></font>2014-08-11T00:00:00<font color="blue"></DateTime></font>
| + | <m:ExternalUserId>00017483</m:ExternalUserId> |
| − | <font color="blue"><UserID></font>2<font color="blue"></UserID></font>
| + | <m:TicketsSum> |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| + | <m:Price>10040</m:Price> |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| + | <m:Discount>0</m:Discount> |
| − | <font color="blue"><Supplier <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| + | <m:Charge>0</m:Charge> |
| − | <font color="blue"><SearchRequisites <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| + | <m:Sum>10040</m:Sum> |
| − | <font color="blue"><SearchCount></font>20575<font color="blue"></SearchCount></font>
| + | </m:TicketsSum> |
| − | <font color="blue"><SearchWithErrorCount></font>0<font color="blue"></SearchWithErrorCount></font>
| + | </m:return> |
| − | <font color="blue"><EmptySearchCount></font>924<font color="blue"></EmptySearchCount></font>
| + | </m:NewAccountResponse> |
| − | <font color="blue"><GDSScans></font>468<font color="blue"></GDSScans></font>
| + | </soap:Body> |
| − | <font color="blue"><CacheSearchCount></font>746<font color="blue"></CacheSearchCount></font>
| + | </soap:Envelope> |
| − | <font color="blue"><AvgResultsCount></font>9<font color="blue"></AvgResultsCount></font>
| |
| − | <font color="blue"><MinResultsCount></font>1<font color="blue"></MinResultsCount></font>
| |
| − | <font color="blue"><MaxResultsCount></font>19<font color="blue"></MaxResultsCount></font>
| |
| − | <font color="blue"><AvgSearchDuration></font>PT0.4400852S<font color="blue"></AvgSearchDuration></font>
| |
| − | <font color="blue"><MinSearchDuration></font>PT0.001S<font color="blue"></MinSearchDuration></font>
| |
| − | <font color="blue"><MaxSearchDuration></font>PT4.2582435S<font color="blue"></MaxSearchDuration></font>
| |
| − | <font color="blue"><AvgGDSSearchDuration></font>PT0S<font color="blue"></AvgGDSSearchDuration></font>
| |
| − | <font color="blue"><MinGDSSearchDuration></font>PT0S<font color="blue"></MinGDSSearchDuration></font>
| |
| − | <font color="blue"><MaxGDSSearchDuration></font>PT0S<font color="blue"></MaxGDSSearchDuration></font>
| |
| − | <font color="blue"></SearchStatsItem></font>
| |
| − | <font color="blue"><SearchStatsItem></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><DateTime></font>2014-08-04T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><UserID></font>2<font color="blue"></UserID></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| |
| − | <font color="blue"><Supplier <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SearchRequisites <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SearchCount></font>341322<font color="blue"></SearchCount></font>
| |
| − | <font color="blue"><SearchWithErrorCount></font>0<font color="blue"></SearchWithErrorCount></font>
| |
| − | <font color="blue"><EmptySearchCount></font>17804<font color="blue"></EmptySearchCount></font>
| |
| − | <font color="blue"><GDSScans></font>7572<font color="blue"></GDSScans></font>
| |
| − | <font color="blue"><CacheSearchCount></font>11434<font color="blue"></CacheSearchCount></font>
| |
| − | <font color="blue"><AvgResultsCount></font>9<font color="blue"></AvgResultsCount></font>
| |
| − | <font color="blue"><MinResultsCount></font>1<font color="blue"></MinResultsCount></font>
| |
| − | <font color="blue"><MaxResultsCount></font>19<font color="blue"></MaxResultsCount></font>
| |
| − | <font color="blue"><AvgSearchDuration></font>PT0.5500934S<font color="blue"></AvgSearchDuration></font>
| |
| − | <font color="blue"><MinSearchDuration></font>PT0.001S<font color="blue"></MinSearchDuration></font>
| |
| − | <font color="blue"><MaxSearchDuration></font>PT3.5072006S<font color="blue"></MaxSearchDuration></font>
| |
| − | <font color="blue"><AvgGDSSearchDuration></font>PT0S<font color="blue"></AvgGDSSearchDuration></font>
| |
| − | <font color="blue"><MinGDSSearchDuration></font>PT0S<font color="blue"></MinGDSSearchDuration></font>
| |
| − | <font color="blue"><MaxGDSSearchDuration></font>PT0S<font color="blue"></MaxGDSSearchDuration></font>
| |
| − | <font color="blue"></SearchStatsItem></font>
| |
| − | <font color="blue"></StatisticsItems></font>
| |
| − | <font color="blue"></ResponseBody></font>
| |
| − | <font color="blue"></GetSearchStatisticsResult></font>
| |
| − | <font color="blue"></GetSearchStatisticsResponse></font>
| |
| − | </code>
| |
| | | | |
| − | === Получение количества поисков. (Облегчённый вариант запроса на получение статистики поисков) ===
| |
| − | ===== Запрос =====
| |
| − | ===== Пример запроса (XML)=====
| |
| | | | |
| − | <code>
| + | </pre> |
| − | <font color="blue"><GetSearchCountStatistics></font>
| + | </div></div> |
| − | <font color="blue"><request></font>
| |
| − | <font color="blue"><RequestBody></font>
| |
| − | <font color="blue"><DateStart></font>01.08.2014<font color="blue"></DateStart></font>
| |
| − | <font color="blue"><DateEnd></font>13.08.2014<font color="blue"></DateEnd></font>
| |
| − | <font color="blue"><GroupBy></font>Month<font color="blue"></GroupBy></font>
| |
| − | <font color="blue"><SubAgencyId></font>4<font color="blue"></SubAgencyId></font>
| |
| − | <font color="blue"></RequestBody></font>
| |
| − | <font color="blue"></request></font>
| |
| − | <font color="blue"></GetSearchCountStatistics></font>
| |
| − | </code> | |
| | | | |
| − | ===== Ответ =====
| + | --> |
| − | * '''StatisticsItems''' - Объекты статистики. Тип данных - массив элементов SearchCountItem.
| |
| − | * '''StatisticsItems.SearchCountItem''' - Объект статистики количества поисков. Тип данных - сложный.
| |
| − | * '''StatisticsItems.SearchCountItem.DateTime''' - Дата и время начала периода, по которому группируется статистика. Формат yyyy-MM-ddThh:mm:ss. Тип данных - дата и время.
| |
| − | * '''StatisticsItems.SearchCountItem.ServiceType''' - Тип услуги (авиа/отели/...). Тип данных - перечисление. Возможные значения аналогичны параметру '''''StatisticsItems.SearchStatsItem.ServiceType''''' из [[#Ответ|ответа на получение статистики поисков]].
| |
| − | * '''StatisticsItems.SearchCountItem.Supplier''' - Поставщик. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchCountItem.SearchRequisites''' - Реквизиты поиска. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchCountItem.GDSScans''' - Количество поисковых запросов к ГДС. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchCountItem.CacheSearchCount''' - Количество поисков в кеше (поиски без обращений к ГДС). Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchCountItem.SearchCount''' - Общее количество поисков. Тип данных - целое 32-битное число.
| |
| − | ===== Пример ответа (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetSearchCountStatisticsResponse></font>
| |
| − | <font color="blue"><GetSearchCountStatisticsResult></font>
| |
| − | <font color="blue"><RequestID></font>5969455<font color="blue"></RequestID></font>
| |
| − | <font color="blue"><ResponseBody></font>
| |
| − | <font color="blue"><StatisticsItems></font>
| |
| − | <font color="blue"><SearchCountItem></font>
| |
| − | <font color="blue"><DateTime></font>2014-08-01T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><Supplier></font>Sabre<font color="blue"></Supplier></font>
| |
| − | <font color="blue"><SearchRequisites></font>FJ9F<font color="blue"></SearchRequisites></font>
| |
| − | <font color="blue"><GDSScans></font>0<font color="blue"></GDSScans></font>
| |
| − | <font color="blue"><CacheSearchCount></font>4<font color="blue"></CacheSearchCount></font>
| |
| − | <font color="blue"><SearchCount></font>4<font color="blue"></SearchCount></font>
| |
| − | <font color="blue"></SearchCountItem></font>
| |
| − | <font color="blue"></StatisticsItems></font>
| |
| − | <font color="blue"></ResponseBody></font>
| |
| − | <font color="blue"></GetSearchCountStatisticsResult></font>
| |
| − | <font color="blue"></GetSearchCountStatisticsResponse></font>
| |
| − | </code>
| |
| − | | |
| − | === Получение статистики направлений===
| |
| − | ===== Запрос =====
| |
| − | * '''DateStart'''
| |
| − | * '''DateEnd'''
| |
| − | * '''GroupBy'''
| |
| − | * '''SubAgenciesIDs''' - Идентификаторы субагентств, по которым получаем статистику. Тип данных - массив элементов ID.
| |
| − | * '''SubAgenciesIDs.ID''' - Идентификатор субагента. Тип данных - целое 32-битное число.
| |
| − | * '''AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''AggregateBy''' - По каким полям следует агрегировать объекты статистики. Тип данных - перечисление. Возможные значения (может быть несколько через пробел)(может быть пустым):
| |
| − | ** None (0) не аггрегировать объекты с неагрегируемыми свойствами
| |
| − | ** Agencies (1) по агенствам
| |
| − | ** SupAgencies (2) по субагенствам
| |
| − | ** Users (4) по пользователям.
| |
| − | ** RequisitesPackages (8) по пакетам реквизитов
| |
| − | ** Suppliers (16) по поставщикам
| |
| − | ** DestTypes (32) по типам направлений
| |
| − | ** BookingPlaces (64) по местам бронирования
| |
| − | ** DepPoints (128) по пунктам отправления
| |
| − | ** ArrPoints (256) по пунктам прибытия
| |
| − | * '''SortParams''' - Параметры сортировки результатов статистики. Тип данных - массив элементов SortParam. Аналогичен параметру '''''SortParams''''' из [[#Запрос|запроса на получение статистики поисков]].
| |
| − | * '''Top''' - Ограничение сверху количества элементов в результате. тип данных - целое 32-битное число.
| |
| − | | |
| − | ===== Пример запроса (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetDestinationsStatistics></font>
| |
| − | <font color="blue"><request></font>
| |
| − | <font color="blue"><RequestBody></font>
| |
| − | <font color="blue"><DateStart></font>10.08.2014<font color="blue"></DateStart></font>
| |
| − | <font color="blue"><DateEnd></font>14.08.2014<font color="blue"></DateEnd></font>
| |
| − | <font color="blue"><GroupBy></font>Day<font color="blue"></GroupBy></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Zero or more repetitions:--></font>
| |
| − | <font color="blue"><ID></font>2<font color="blue"></ID></font>
| |
| − | <font color="blue"></SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AggregateBy></font>RequisitesPackages Suppliers DestTypes BookingPlaces DepPoints ArrPoints<font color="blue"></AggregateBy></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><SortParams></font>
| |
| − | <font color="green"><!--Zero or more repetitions:--></font>
| |
| − | <font color="blue"><SortParam></font>
| |
| − | <font color="blue"><SortValue></font>DateTime<font color="blue"></SortValue></font>
| |
| − | <font color="blue"><OrderBy></font>Desc<font color="blue"></OrderBy></font>
| |
| − | <font color="blue"></SortParam></font>
| |
| − | <font color="blue"><SortParam></font>
| |
| − | <font color="blue"><SortValue></font>SearchCount<font color="blue"></SortValue></font>
| |
| − | <font color="blue"><OrderBy></font>Asc<font color="blue"></OrderBy></font>
| |
| − | <font color="blue"></SortParam></font>
| |
| − | <font color="blue"></SortParams></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><Top></font>2<font color="blue"></Top></font>
| |
| − | <font color="blue"></RequestBody></font>
| |
| − | <font color="blue"></request></font>
| |
| − | <font color="blue"></GetDestinationsStatistics></font>
| |
| − | </code>
| |
| − | | |
| − | ===== Ответ =====
| |
| − | * '''StatisticsItems''' - Объекты статистики. Тип данных - массив элементов DestinationStatsItem.
| |
| − | * '''StatisticsItems.DestinationStatsItem''' - Объект статистики направлений. Тип данных - сложный.
| |
| − | * '''StatisticsItems.DestinationStatsItem.ServiceType''' - Тип услуги (авиа/отели/...). Тип данных - перечисление. Возможные значения аналогичны параметру '''''StatisticsItems.SearchStatsItem.ServiceType''''' из [[#Ответ|ответа на получение статистики поисков]].
| |
| − | * '''StatisticsItems.DestinationStatsItem.DateTime''' - Дата и время начала периода, по которому группируется статистика. Формат yyyy-MM-ddThh:mm:ss. Тип данных - дата и время.
| |
| − | * '''StatisticsItems.DestinationStatsItem.UserID''' - Идентификатор пользователя. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.DestinationStatsItem.AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.DestinationStatsItem.SubAgencyID''' - Идентификатор субагенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.DestinationStatsItem.Supplier''' - Поставщик. Тип данных - перечисление. Возможные значения аналогичны параметру
| |
| − | * '''StatisticsItems.DestinationStatsItem.DeparturePoint''' - Пункт отправления. Тип данных - сложный.
| |
| − | * '''StatisticsItems.DestinationStatsItem.DeparturePoint.TransportPointCode''' - Код пункта. Тип данных - строка.
| |
| − | * '''StatisticsItems.DestinationStatsItem.DeparturePoint.TransportPointCodeType''' - Тип пункта. Тип данных - перечисление. Возможные значения:
| |
| − | ** IATAAirportCode (0) ИАТА код аэропорта
| |
| − | * '''StatisticsItems.DestinationStatsItem.DeparturePoint.TransportSubPointCode''' - Дополнительный код пункта, например, терминал в аэропорту. Тип данных - строка.
| |
| − | * '''StatisticsItems.DestinationStatsItem.DeparturePoint.CityCode''' - Код города. Тип данных - строка.
| |
| − | * '''StatisticsItems.DestinationStatsItem.ArrivalPoint''' - Пункт прибытия. Тип данных - сложный, аналогичен параметру '''''StatisticsItems.DestinationStatsItem.DeparturePoint'''''.
| |
| − | * '''StatisticsItems.DestinationStatsItem.FlightDirectionType''' - Тип направления. Тип данных - перечисление (может быть пустым). Возможные значения:
| |
| − | ** OW (0) В одну сторону
| |
| − | ** RT (1) Туда - обратно
| |
| − | ** CT (2) Сложный маршрут
| |
| − | ** SingleOJ (3) Вылет из точки А в точку Б и возврат в точку В. Т.е. есть разрыв между ап прилета и вылета
| |
| − | ** DoubleOJ (4) Как single OJ, но есть 2 разрыва между ап прилета и вылета.
| |
| − | ** hRT (5) HalfRT, он же RT/2
| |
| − | ** mOW (6) MultiOW, он же OW+OW+
| |
| − | * '''StatisticsItems.DestinationStatsItem.SearchCount''' - Число поисков. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.AvgResultsCount''' - Среднее число результатов в поиске. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.MinResultsCount''' - Минимальное число результатов в поиске. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.MaxResultsCount''' - Максимальное число результатов в поиске. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.SuccessBooksCount''' - Количество успешно созданных броней. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.FailedBooksCount''' - Количество отменённых броней и неудачных попыток бронирования. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.MadeBooksCount''' - Количество выполненных броней (не отменённые до начала выполнения). Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.BookingPlace''' - Место создания брони. Тип данных - перечисление (может быть пустым). Возможные значения:
| |
| − | ** UNKNOWN - неизвестно.
| |
| − | * '''StatisticsItems.DestinationStatsItem.RequisitesPackageID''' - Идентификатор пакета реквизитов бронирования (может быть пустым). Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.DestinationStatsItem.AdultPassengerCount''' - Число забронированных пассажиров - взрослых. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.ChildPassengerCount''' - Число забронированных пассажиров - детей. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.DestinationStatsItem.TotalPassengersCount''' - Общее число забронированных пассажиров. Тип данных - целое 32-битное число.
| |
| − | ===== Пример ответа (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetDestinationsStatisticsResponse></font>
| |
| − | <font color="blue"><GetDestinationsStatisticsResult></font>
| |
| − | <font color="blue"><RequestID></font>62403<font color="blue"></RequestID></font>
| |
| − | <font color="blue"><ResponseBody></font>
| |
| − | <font color="blue"><StatisticsItems></font>
| |
| − | <font color="blue"><DestinationStatsItem></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><DateTime></font>2014-08-12T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><UserID></font>2<font color="blue"></UserID></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| |
| − | <font color="blue"><Supplier <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DeparturePoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrivalPoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><FlightDirectionType <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SearchCount></font>291<font color="blue"></SearchCount></font>
| |
| − | <font color="blue"><AvgResultsCount></font>10<font color="blue"></AvgResultsCount></font>
| |
| − | <font color="blue"><MinResultsCount></font>0<font color="blue"></MinResultsCount></font>
| |
| − | <font color="blue"><MaxResultsCount></font>19<font color="blue"></MaxResultsCount></font>
| |
| − | <font color="blue"><SuccessBooksCount></font>0<font color="blue"></SuccessBooksCount></font>
| |
| − | <font color="blue"><FailedBooksCount></font>0<font color="blue"></FailedBooksCount></font>
| |
| − | <font color="blue"><MadeBooksCount></font>0<font color="blue"></MadeBooksCount></font>
| |
| − | <font color="blue"><BookingPlace <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><RequisitesPackageID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><AdultPassengerCount></font>0<font color="blue"></AdultPassengerCount></font>
| |
| − | <font color="blue"><ChildPassengerCount></font>0<font color="blue"></ChildPassengerCount></font>
| |
| − | <font color="blue"><TotalPassengersCount></font>0<font color="blue"></TotalPassengersCount></font>
| |
| − | <font color="blue"></DestinationStatsItem></font>
| |
| − | <font color="blue"><DestinationStatsItem></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><DateTime></font>2014-08-11T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><UserID></font>2<font color="blue"></UserID></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| |
| − | <font color="blue"><Supplier <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DeparturePoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrivalPoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><FlightDirectionType <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SearchCount></font>923<font color="blue"></SearchCount></font>
| |
| − | <font color="blue"><AvgResultsCount></font>9<font color="blue"></AvgResultsCount></font>
| |
| − | <font color="blue"><MinResultsCount></font>0<font color="blue"></MinResultsCount></font>
| |
| − | <font color="blue"><MaxResultsCount></font>19<font color="blue"></MaxResultsCount></font>
| |
| − | <font color="blue"><SuccessBooksCount></font>0<font color="blue"></SuccessBooksCount></font>
| |
| − | <font color="blue"><FailedBooksCount></font>0<font color="blue"></FailedBooksCount></font>
| |
| − | <font color="blue"><MadeBooksCount></font>0<font color="blue"></MadeBooksCount></font>
| |
| − | <font color="blue"><BookingPlace <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><RequisitesPackageID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><AdultPassengerCount></font>0<font color="blue"></AdultPassengerCount></font>
| |
| − | <font color="blue"><ChildPassengerCount></font>0<font color="blue"></ChildPassengerCount></font>
| |
| − | <font color="blue"><TotalPassengersCount></font>0<font color="blue"></TotalPassengersCount></font>
| |
| − | <font color="blue"></DestinationStatsItem></font>
| |
| − | <font color="blue"></StatisticsItems></font>
| |
| − | <font color="blue"></ResponseBody></font>
| |
| − | <font color="blue"></GetDestinationsStatisticsResult></font>
| |
| − | <font color="blue"></GetDestinationsStatisticsResponse></font>
| |
| − | </code>
| |
| − | | |
| − | === Получение статистики LookToBook ===
| |
| − | ===== Запрос =====
| |
| − | * '''DateStart'''
| |
| − | * '''DateEnd'''
| |
| − | * '''GroupBy'''
| |
| − | * '''SubAgenciesIDs''' - Идентификаторы субагентств, по которым получаем статистику. Тип данных - массив элементов ID.
| |
| − | * '''SubAgenciesIDs.ID''' - Идентификатор субагента. Тип данных - целое 32-битное число.
| |
| − | * '''AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''AggregateBy''' - По каким полям следует агрегировать объекты статистики. Тип данных - перечисление. Возможные значения (может быть несколько через пробел)(может быть пустым):
| |
| − | ** None (0) не аггрегировать объекты с неагрегируемыми свойствами
| |
| − | ** Agencies (1) по агенствам
| |
| − | ** SupAgencies (2) по субагенствам
| |
| − | ** UserTypes (4) по типам пользователей (анонимы и зарегистрированные)
| |
| − | ** DepPoints (8) по пунктам отправления
| |
| − | ** ArrPoints (16) по пунктам прибытия
| |
| − | ** BookingPlaces (32) по местам бронирования
| |
| − | ** RequisitesPackages (64) по пакетам реквизитов
| |
| − | | |
| − | ===== Пример запроса (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetLookToBookStatistics></font>
| |
| − | <font color="blue"><request></font>
| |
| − | <font color="blue"><RequestBody></font>
| |
| − | <font color="blue"><DateStart></font>28.07.2014<font color="blue"></DateStart></font>
| |
| − | <font color="blue"><DateEnd></font>10.08.2014<font color="blue"></DateEnd></font>
| |
| − | <font color="blue"><GroupBy></font>Week<font color="blue"></GroupBy></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Zero or more repetitions:--></font>
| |
| − | <font color="blue"><ID></font>2<font color="blue"></ID></font>
| |
| − | <font color="blue"></SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AggregateBy></font>DepPoints ArrPoints<font color="blue"></AggregateBy></font>
| |
| − | <font color="blue"></RequestBody></font>
| |
| − | <font color="blue"></request></font>
| |
| − | <font color="blue"></GetLookToBookStatistics></font>
| |
| − | </code>
| |
| − | | |
| − | ===== Ответ =====
| |
| − | * '''StatisticsItems''' - Объекты статистики. Тип данных - массив элементов LookToBookStatsItem.
| |
| − | * '''StatisticsItems.LookToBookStatsItem.ServiceType''' - Тип услуги (авиа/отели/...). Тип данных - перечисление. Возможные значения аналогичны параметру
| |
| − | * '''StatisticsItems.LookToBookStatsItem.DateTime''' - Дата и время начала периода, по которому группируется статистика. Формат yyyy-MM-ddThh:mm:ss. Тип данных - дата и время.
| |
| − | * '''StatisticsItems.LookToBookStatsItem.IsAnonimUser''' - Анонимные пользователи. Тип данных - булев (может быть пустым).
| |
| − | * '''StatisticsItems.LookToBookStatsItem.AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.LookToBookStatsItem.SubAgencyID''' - Идентификатор субагенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.LookToBookStatsItem.RequisitesPackageID''' - Идентификатор пакета реквизитов бронирования (может быть пустым). Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.LookToBookStatsItem.BookingPlace''' - Место создания брони. Тип данных - перечисление (может быть пустым). Возможные значения аналогичны параметру '''StatisticsItems.DestinationStatsItem.BookingPlace''' из [[#Ответ_3|ответа на получение статистики направлений]].
| |
| − | * '''StatisticsItems.LookToBookStatsItem.DepartureCityCode''' - Код города отправления. Тип данных - строка.
| |
| − | * '''StatisticsItems.LookToBookStatsItem.ArrivalCityCode''' - Код города прибытия. Тип данных - строка.
| |
| − | * '''StatisticsItems.LookToBookStatsItem.LookToBookCoef''' - Отношение поисков к броням. Рассчитывается по формуле (ЕСЛИ кол-во броней > 0, ТО кол-во поисков / кол-во броней, ИНАЧЕ кол-во поисков). Тип данных - дробное число.
| |
| − | ===== Пример ответа (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetLookToBookStatisticsResponse></font>
| |
| − | <font color="blue"><GetLookToBookStatisticsResult></font>
| |
| − | <font color="blue"><RequestID></font>62429<font color="blue"></RequestID></font>
| |
| − | <font color="blue"><ResponseBody></font>
| |
| − | <font color="blue"><StatisticsItems></font>
| |
| − | <font color="blue"><LookToBookStatsItem></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><DateTime></font>2014-08-04T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><IsAnonimUser></font>false<font color="blue"></IsAnonimUser></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| |
| − | <font color="blue"><RequisitesPackageID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><BookingPlace <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DepartureCityCode <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrivalCityCode <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><LookToBookCoef></font>18749<font color="blue"></LookToBookCoef></font>
| |
| − | <font color="blue"></LookToBookStatsItem></font>
| |
| − | <font color="blue"><LookToBookStatsItem></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><DateTime></font>2014-07-28T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><IsAnonimUser></font>false<font color="blue"></IsAnonimUser></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| |
| − | <font color="blue"><RequisitesPackageID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><BookingPlace <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DepartureCityCode <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrivalCityCode <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><LookToBookCoef></font>20<font color="blue"></LookToBookCoef></font>
| |
| − | <font color="blue"></LookToBookStatsItem></font>
| |
| − | <font color="blue"></StatisticsItems></font>
| |
| − | <font color="blue"></ResponseBody></font>
| |
| − | <font color="blue"></GetLookToBookStatisticsResult></font>
| |
| − | <font color="blue"></GetLookToBookStatisticsResponse></font>
| |
| − | </code>
| |
| − | | |
| − | === Получение статистики BookToCancel ===
| |
| − | ===== Запрос =====
| |
| − | Запрос аналогичен запросу на получение статистики LookToBook
| |
| − | | |
| − | ===== Пример запроса (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetBookToCancelStatistics></font>
| |
| − | <font color="blue"><request></font>
| |
| − | <font color="blue"><RequestBody></font>
| |
| − | <font color="blue"><DateStart></font>12.08.2014<font color="blue"></DateStart></font>
| |
| − | <font color="blue"><DateEnd></font>12.08.2014<font color="blue"></DateEnd></font>
| |
| − | <font color="blue"><GroupBy></font>Day<font color="blue"></GroupBy></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Zero or more repetitions:--></font>
| |
| − | <font color="blue"><ID></font>2<font color="blue"></ID></font>
| |
| − | <font color="blue"></SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AggregateBy></font>DepPoints ArrPoints<font color="blue"></AggregateBy></font>
| |
| − | <font color="blue"></RequestBody></font>
| |
| − | <font color="blue"></request></font>
| |
| − | <font color="blue"></GetBookToCancelStatistics></font>
| |
| − | </code>
| |
| − | | |
| − | ===== Ответ =====
| |
| − | * '''StatisticsItems''' - Объекты статистики. Тип данных - массив элементов BookToCancelStatsItem.
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.ServiceType''' - Тип услуги (авиа/отели/...). Тип данных - перечисление. Возможные значения аналогичны параметру
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.DateTime''' - Дата и время начала периода, по которому группируется статистика. Формат yyyy-MM-ddThh:mm:ss. Тип данных - дата и время.
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.IsAnonimUser''' - Анонимные пользователи. Тип данных - булев (может быть пустым).
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.SubAgencyID''' - Идентификатор субагенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.RequisitesPackageID''' - Идентификатор пакета реквизитов бронирования (может быть пустым). Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.BookingPlace''' - Место создания брони. Тип данных - перечисление (может быть пустым). Возможные значения аналогичны параметру '''StatisticsItems.DestinationStatsItem.BookingPlace''' из [[#Ответ_2|ответа на получение статистики направлений]].
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.DepartureCityCode''' - Код города отправления. Тип данных - строка.
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.ArrivalCityCode''' - Код города прибытия. Тип данных - строка.
| |
| − | * '''StatisticsItems.BookToCancelStatsItem.BookToCancelCoef''' - Отношение броней к отменённым броням. Рассчитывается по формуле (ЕСЛИ кол-во броней > 0 И кол-во отменённых броней > 0, ТО кол-во броней / кол-во отменённых броней, ИНАЧЕ 0). Тип данных - дробное число.
| |
| − | | |
| − | ===== Пример ответа (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetBookToCancelStatisticsResponse></font>
| |
| − | <font color="blue"><GetBookToCancelStatisticsResult></font>
| |
| − | <font color="blue"><RequestID></font>62437<font color="blue"></RequestID></font>
| |
| − | <font color="blue"><ResponseBody></font>
| |
| − | <font color="blue"><StatisticsItems></font>
| |
| − | <font color="blue"><BookToCancelStatsItem></font>
| |
| − | <font color="blue"><ServiceType></font>Avia<font color="blue"></ServiceType></font>
| |
| − | <font color="blue"><DateTime></font>2014-08-12T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><IsAnonimUser></font>false<font color="blue"></IsAnonimUser></font>
| |
| − | <font color="blue"><AgencyID></font>2<font color="blue"></AgencyID></font>
| |
| − | <font color="blue"><SubAgencyID></font>2<font color="blue"></SubAgencyID></font>
| |
| − | <font color="blue"><RequisitesPackageID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><BookingPlace <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DepartureCityCode <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrivalCityCode <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><BookToCancelCoef></font>0<font color="blue"></BookToCancelCoef></font>
| |
| − | <font color="blue"></BookToCancelStatsItem></font>
| |
| − | <font color="blue"></StatisticsItems></font>
| |
| − | <font color="blue"></ResponseBody></font>
| |
| − | <font color="blue"></GetBookToCancelStatisticsResult></font>
| |
| − | <font color="blue"></GetBookToCancelStatisticsResponse></font>
| |
| − | </code>
| |
| − | | |
| − | === Получение ТОПов поисковых запросов ===
| |
| − | Позволяет делать выборки, отвечающие на вопросы:<br/>
| |
| − | Какие аэропорты или страны отправления чаще всего искали?<br/>
| |
| − | Какие аэропорты или страны прибытия чаще всего искали?<br/>
| |
| − | У каких агентств, субагентств или пользователей больше всего поисков?
| |
| − | | |
| − | ===== Запрос =====
| |
| − | * '''DateStart'''
| |
| − | * '''DateEnd'''
| |
| − | * '''GroupBy'''
| |
| − | * '''SubAgenciesIDs''' - Идентификаторы субагентств, по которым получаем статистику. Тип данных - массив элементов ID.
| |
| − | * '''SubAgenciesIDs.ID''' - Идентификатор субагента. Тип данных - целое 32-битное число.
| |
| − | * '''AgencyID''' - Идентификатор агенства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''ServiceType''' - Тип услуги (авиа/отели/...). Тип данных - перечисление. Возможные значения аналогичны параметру '''''StatisticsItems.SearchStatsItem.ServiceType''''' из [[#Ответ|ответа на получение статистики поисков]].
| |
| − | * '''TopBy''' - Определяет по какому параметру формируется ТОП поисковых запросов. Тип данных - перечисление. Возможные значения:
| |
| − | ** DepPoint - по точке отправления
| |
| − | ** ArrPoint - по точке прибытия
| |
| − | ** DepCountry - по стране отправления
| |
| − | ** ArrCountry - по стране прибытия
| |
| − | ** Agency - по агентствам
| |
| − | ** SubAgency - по субагентствам
| |
| − | ** User - по пользователям
| |
| − | * '''Top''' - Ограничение количества результатов сверху. Тип данных - целое 32-битное число.
| |
| − | | |
| − | ===== Пример запроса (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetSearchTopStatistics></font>
| |
| − | <font color="blue"><request></font>
| |
| − | <font color="blue"><RequestBody></font>
| |
| − | <font color="blue"><DateStart></font>01.12.2014<font color="blue"></DateStart></font>
| |
| − | <font color="blue"><DateEnd></font>31.12.2014<font color="blue"></DateEnd></font>
| |
| − | <font color="blue"><GroupBy></font>Month<font color="blue"></GroupBy></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><SubAgenciesIDs></font>
| |
| − | <font color="blue"><ID></font>5<font color="blue"></ID></font>
| |
| − | <font color="blue"><ID></font>6<font color="blue"></ID></font>
| |
| − | <font color="blue"></SubAgenciesIDs></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><AgencyID></font>4<font color="blue"></AgencyID></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="green"><!<ServiceType>Avia</ServiceType>></font>
| |
| − | <font color="blue"><TopBy></font>DepCountry<font color="blue"></TopBy></font>
| |
| − | <font color="green"><!--Optional:--></font>
| |
| − | <font color="blue"><Top></font>2<font color="blue"></Top></font>
| |
| − | <font color="blue"></RequestBody></font>
| |
| − | <font color="blue"></request></font>
| |
| − | <font color="blue"></GetSearchTopStatistics></font>
| |
| − | </code>
| |
| − | | |
| − | ===== Ответ =====
| |
| − | * '''StatisticsItems''' - Объекты статистики. Тип данных - массив элементов
| |
| − | * '''StatisticsItems.SearchTopStatsItem.DateTime''' - Дата и время начала периода, по которому группируется статистика. Формат yyyy-MM-ddThh:mm:ss. Тип данных - дата и время.
| |
| − | * '''StatisticsItems.SearchTopStatsItem.UserID''' - Идентификатор пользователя. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.SearchTopStatsItem.AgencyID''' - Идентификатор агентства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.SearchTopStatsItem.SubAgencyID''' - Идентификатор субагентства. Тип данных - целое 32-битное число (может быть пустым).
| |
| − | * '''StatisticsItems.SearchTopStatsItem.SearchCount''' - Число поисков. Тип данных - целое 32-битное число.
| |
| − | * '''StatisticsItems.SearchTopStatsItem.DepPoint''' - Код точки отправления. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchTopStatsItem.ArrPoint''' - Код точки прибытия. Тип дынных - строка.
| |
| − | * '''StatisticsItems.SearchTopStatsItem.DepCountry''' - Двубуквенный код страны отправления. Тип данных - строка.
| |
| − | * '''StatisticsItems.SearchTopStatsItem.ArrCountry''' - Двубуквенный код страны прибытия. Тип данных - строка.
| |
| − | | |
| − | ===== Пример ответа (XML)=====
| |
| − | | |
| − | <code>
| |
| − | <font color="blue"><GetSearchTopStatisticsResponse></font>
| |
| − | <font color="blue"><GetSearchTopStatisticsResult></font>
| |
| − | <font color="blue"><RequestID></font>22945<font color="blue"></RequestID></font>
| |
| − | <font color="blue"><ResponseBody></font>
| |
| − | <font color="blue"><StatisticsItems></font>
| |
| − | <font color="blue"><SearchTopStatsItem></font>
| |
| − | <font color="blue"><DateTime></font>2014-12-01T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><UserID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><AgencyID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SubAgencyID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SearchCount></font>120<font color="blue"></SearchCount></font>
| |
| − | <font color="blue"><DepPoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrPoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DepCountry></font>RU<font color="blue"></DepCountry></font>
| |
| − | <font color="blue"><ArrCountry <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"></SearchTopStatsItem></font>
| |
| − | <font color="blue"><SearchTopStatsItem></font>
| |
| − | <font color="blue"><DateTime></font>2014-12-01T00:00:00<font color="blue"></DateTime></font>
| |
| − | <font color="blue"><UserID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><AgencyID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SubAgencyID <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><SearchCount></font>4<font color="blue"></SearchCount></font>
| |
| − | <font color="blue"><DepPoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><ArrPoint <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"><DepCountry></font>EG<font color="blue"></DepCountry></font>
| |
| − | <font color="blue"><ArrCountry <font color="orangered">nil</font>=<font color="purple">"true"</font>/></font>
| |
| − | <font color="blue"></SearchTopStatsItem></font>
| |
| − | <font color="blue"></StatisticsItems></font>
| |
| − | <font color="blue"></ResponseBody></font>
| |
| − | <font color="blue"></GetSearchTopStatisticsResult></font>
| |
| − | <font color="blue"></GetSearchTopStatisticsResponse></font>
| |
| − | </code>
| |
| − | | |
| − | ==Выгрузка информации о продажах в формате Nemo XML==
| |
| − | ==Выгрузка информации о продажах в формате СОФИ XML==
| |
| − | ==Фиксация оплаты внешним запросом==
| |
| − | ==Выгрузка заказов по критериям в формате Nemo XML==
| |
| − | ==Выгрузка определенного заказа по критериям в формате Nemo XML==
| |
| − | ==API универсального платежного шлюза==
| |
| − | ==API Синхронизации пользователей и субагентов==
| |
| − | ==API Кроссавторизации==
| |
| − | ==Передача параметров в форму поиска==
| |
| − | ==Проверка в сторонней системе возможности тикетинга==
| |
| − | ==API загрузки счетов из сторонней системы==
| |
| − | ==API загрузки сальдо компаний из СОФИ==
| |