ПОДПИСЫВАЙТЕСЬ НА НАШ ТЕЛЕГРАМ-КАНАЛ @nemo_travel_official

Агентский API Отели: различия между версиями

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
(Запрос)
 
(не показаны 93 промежуточные версии 5 участников)
Строка 1: Строка 1:
 +
{{Attention|В системе реализован усовершенствованный API-проект «Nemo Connect», настоятельно рекомендуем подключаться по схеме, описанной в документации по [http://docs.nemo.travel/ ссылке]}}
 +
 +
[[Категория:Агентский API]]
 +
[[Категория:Интеграция]]
 
[[Файл:Nemo-logo.png‎|right]]
 
[[Файл:Nemo-logo.png‎|right]]
'''Агентский API Отелей''' - система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации.
+
'''Агентский API Отели''' система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации.
  
== Динамические данные ==
+
= Динамические данные =
=== Поиск ===
+
== Поиск ==
  
 
Сервис предназначен для получения списка отелей, удовлетворяющих условиям запроса. В условия запроса входят: идентификатор города, где будет вестись поиск; дата заезда и дата выезда; информация о количестве людей и способе их размещения в комнатах. Так же указываются дополнительные необязательные поля фильтров.
 
Сервис предназначен для получения списка отелей, удовлетворяющих условиям запроса. В условия запроса входят: идентификатор города, где будет вестись поиск; дата заезда и дата выезда; информация о количестве людей и способе их размещения в комнатах. Так же указываются дополнительные необязательные поля фильтров.
Строка 9: Строка 13:
 
Для получения списка доступных городов, воспользуйтесь запросом на выгрузку статики (см. ССЫЛКА). Список допустимых отелей для фильтра также доступен через сервис (см. ССЫЛКА). Рекомендуется выгрузить все данные по отелям, городам и странам в локальную базу, для экономии времени и запросов.
 
Для получения списка доступных городов, воспользуйтесь запросом на выгрузку статики (см. ССЫЛКА). Список допустимых отелей для фильтра также доступен через сервис (см. ССЫЛКА). Рекомендуется выгрузить все данные по отелям, городам и странам в локальную базу, для экономии времени и запросов.
  
WSDL (тестовый сервер): [http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch]
+
'''WSDL''' (тестовый сервер): [http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch]
  
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
<pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelsSearch">
+
<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%3DHotelsSearch">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
Строка 28: Строка 36:
 
                   <!--Zero or more repetitions:-->
 
                   <!--Zero or more repetitions:-->
 
                   <Person Id="1" Type="ADT" Age="30"/>
 
                   <Person Id="1" Type="ADT" Age="30"/>
                   <Person Id="1" Type="CLD" Age="10"/>
+
                   <Person Id="2" Type="CLD" Age="10"/>
 
                 </Persons>
 
                 </Persons>
 
                 <!--Optional:-->
 
                 <!--Optional:-->
Строка 59: Строка 67:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''HotelSearch'''
 
Элемент '''HotelSearch'''
Строка 89: Строка 97:
 
|}
 
|}
  
Элемент Room.
+
Элемент '''Room'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 107: Строка 115:
 
|}
 
|}
  
Элемент Person.
+
Элемент '''Person'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 131: Строка 139:
 
|}
 
|}
  
Элемент Filters.
+
Элемент '''Filters'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 144: Строка 152:
 
|}
 
|}
  
 +
Элемент '''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">
 
Система по заданным параметрам ищет отели и возвращает результаты поиска. Все результаты поиска хранятся в базе Nemo определенный срок и доступны для бронирования по идентификатору CacheId.
 
Система по заданным параметрам ищет отели и возвращает результаты поиска. Все результаты поиска хранятся в базе Nemo определенный срок и доступны для бронирования по идентификатору CacheId.
  
Строка 151: Строка 180:
  
 
Каждый отель содержит:
 
Каждый отель содержит:
 +
* Набор номеров &lt;Rooms&gt;. Типы номеров (одноместный, двухместный и т.д.)&nbsp;: устанавливается автоматически по количеству клиентов из запроса.
 +
* Сервисы &lt;Services&gt;. Каждый отель предлагает различные типы обслуживания в номерах. Цена и доступность может различаться.
 +
* Категория &lt;Categories&gt;. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
  
#Набор номеров &lt;Rooms&gt;. Типы номеров (одноместный, двухместный и т.д.)&nbsp;: устанавливается автоматически по количеству клиентов из запроса.
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
#Сервисы &lt;Services&gt;. Каждый отель предлагает различные типы обслуживания в номерах. Цена и доступность может различаться.
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"  
#Категория &lt;Categories&gt;. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
+
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelsSearch">
<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%3DHotelsSearch">
 
 
   <SOAP-ENV:Body>
 
   <SOAP-ENV:Body>
 
     <ns1:searchResponse>
 
     <ns1:searchResponse>
Строка 196: Строка 227:
 
               </Hotel>
 
               </Hotel>
 
...
 
...
    </Hotels>
+
            </Hotels>
 
           </HotelSearch>
 
           </HotelSearch>
 
         </Response>
 
         </Response>
Строка 203: Строка 234:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент Hotel.
+
Элемент '''Hotel'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 254: Строка 285:
 
|}
 
|}
  
 
+
Элемент '''Service'''
Элемент Service.
 
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 285: Строка 315:
 
|}
 
|}
  
 
+
Элемент '''Room'''
Элемент Room.
 
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 307: Строка 336:
 
|}
 
|}
  
Элемент Category.
+
Элемент '''Category'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 346: Строка 375:
 
Атрибут Currency - код валюты.
 
Атрибут Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Расширенная информация по одному отелю ===
+
== Расширенная информация по одному отелю ==
 
 
 
Сервис получения дополнительной информации об отеле требует указания идентификатора отеля в системе Nemo и категории.
 
Сервис получения дополнительной информации об отеле требует указания идентификатора отеля в системе Nemo и категории.
  
'''WSDL''' (тестовый сервер): [http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelExtInfo http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelExtInfo]
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelExtInfo
  
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
<pre>
+
<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/"  
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelExtInfo">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelExtInfo">
Строка 382: Строка 414:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент Item.
+
Элемент '''Item'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 400: Строка 432:
 
|}
 
|}
  
 +
Элемент '''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><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">
+
<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%3DHotelExtInfo"  
 +
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
   <SOAP-ENV:Body>
 
   <SOAP-ENV:Body>
 
     <ns1:extInfoResponse>
 
     <ns1:extInfoResponse>
Строка 430: Строка 487:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент HotelExtInfo.
+
Элемент '''HotelExtInfo'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 448: Строка 505:
 
|}
 
|}
  
 
+
Элемент '''PriceInfo'''
Элемент PriceInfo.
 
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 474: Строка 530:
 
|}
 
|}
  
Элемент Date
+
Элемент '''Date'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 494: Строка 550:
 
Атрибут Currency - код валюты.
 
Атрибут Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Штрафы за аннуляцию ===
+
== Штрафы за аннуляцию ==
 +
 
 
Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
 
Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
  
Строка 506: Строка 565:
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Penalty
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Penalty
  
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
<pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DPenalty">
+
<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:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
Строка 531: Строка 594:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент Item.
+
Элемент '''Item'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 553: Строка 616:
 
|}
 
|}
  
 +
Элемент '''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><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">
+
<div class="mw-collapsible-content">
   <soap-env:body>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
     <ns1:penaltyresponse>
+
<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">
       <responsebin>
+
   <SOAP-ENV:Body>
         <response>
+
     <ns1:penaltyResponse>
           <penalty>
+
       <ResponseBin>
             <itemdatebegin>2013-10-15 00:00:00</itemdatebegin>
+
         <Response>
             <cancelcharges>
+
           <Penalty>
               <charge>
+
             <ItemDateBegin>2013-10-15 00:00:00</ItemDateBegin>
                 <datefrom>2013-10-12 00:00:00</datefrom>
+
             <CancelCharges>
                 <dateto>2013-10-15 23:59:59</dateto>
+
               <Charge>
                 <money currency="RUB">74733.84</money>
+
                 <DateFrom>2013-10-12 00:00:00</DateFrom>
               </charge>
+
                 <DateTo>2013-10-15 23:59:59</DateTo>
               <charge>
+
                 <Money Currency="RUB">74733.84</Money>
                 <datefrom>2013-09-23 00:00:00</datefrom>
+
               </Charge>
                 <dateto>2013-10-11 00:00:00</dateto>
+
               <Charge>
                 <money currency="RUB">67260.46</money>
+
                 <DateFrom>2013-09-23 00:00:00</DateFrom>
               </charge>
+
                 <DateTo>2013-10-11 00:00:00</DateTo>
               <charge>
+
                 <Money Currency="RUB">67260.46</Money>
                 <datefrom>2013-08-01 17:59:00</datefrom>
+
               </Charge>
                 <dateto>2013-09-22 00:00:00</dateto>
+
               <Charge>
                 <money currency="RUB">12455.64</money>
+
                 <DateFrom>2013-08-01 17:59:00</DateFrom>
               </charge>
+
                 <DateTo>2013-09-22 00:00:00</DateTo>
             </cancelcharges>
+
                 <Money Currency="RUB">12455.64</Money>
             <modifycharges>
+
               </Charge>
           </modifycharges></penalty><modifycharges>
+
             </CancelCharges>
         </modifycharges></response><modifycharges>
+
             <ModifyCharges/>
       </modifycharges></responsebin><modifycharges>
+
           </Penalty>
     </modifycharges></ns1:penaltyresponse><modifycharges>
+
         </Response>
   </modifycharges></soap-env:body><modifycharges>
+
       </ResponseBin>
</modifycharges></soap-env:envelope></pre>
+
     </ns1:penaltyResponse>
 +
   </SOAP-ENV:Body>
 +
</SOAP-ENV:Envelope>
 +
</syntaxhighlight>
  
Элемент Penalty.
+
Элемент '''Penalty'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 608: Строка 695:
 
Штрафы разбиваются по временным интервалам. На каждом интервале указывается значение штрафа.
 
Штрафы разбиваются по временным интервалам. На каждом интервале указывается значение штрафа.
  
Элемент Charge.
+
Элемент '''Charge'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 628: Строка 715:
 
Атрибут: Currency - код валюты.
 
Атрибут: Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Бронирование ===
+
== Бронирование ==
 
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
 
+
<div class="mw-collapsible-content">
 
Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
 
Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
  
Строка 640: Строка 729:
  
 
Для успешного запроса нужно указать:
 
Для успешного запроса нужно указать:
 
 
#Услугу. В запросе не требуется перечислять все параметры из результатов поиска, достаточно указать уникальный ID результата.
 
#Услугу. В запросе не требуется перечислять все параметры из результатов поиска, достаточно указать уникальный ID результата.
 
#Информация о клиентах. Все клиенты перечисляются в отдельной ветке и нумеруются по порядку. Указатели (элементы с номером клиента), также добавляются в описание услуги.
 
#Информация о клиентах. Все клиенты перечисляются в отдельной ветке и нумеруются по порядку. Указатели (элементы с номером клиента), также добавляются в описание услуги.
 
#Заказчик. Указатель на одну персону.
 
#Заказчик. Указатель на одну персону.
  
WSDL (тестовый сервер): [http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Booking http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Booking]
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Booking
<pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DBooking">
+
 
 +
<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%3DBooking">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
Строка 763: Строка 854:
 
         </Request>
 
         </Request>
 
         <Source>
 
         <Source>
           <ClientId>134</ClientId>
+
           <ClientId></ClientId>
           <APIKey>93632C10DA299034C03D742FB160C2D6</APIKey>
+
           <APIKey></APIKey>
 
           <Language>ru</Language>
 
           <Language>ru</Language>
 
           <Currency>RUB</Currency>
 
           <Currency>RUB</Currency>
Строка 772: Строка 863:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент Booking.
+
Элемент '''Booking'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 796: Строка 887:
 
Данные об услугах записываются в элементы &lt;Item&gt;.
 
Данные об услугах записываются в элементы &lt;Item&gt;.
  
Элемент Item.
+
Элемент '''Item'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 818: Строка 909:
 
# Распределение клиентов по комнатам.
 
# Распределение клиентов по комнатам.
  
Элемент HotelBookData.
+
Элемент '''HotelBookData'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 862: Строка 953:
 
Набор обязательных данных может меняться в зависимости от типов услуг в бронировании. Рекомендуемый набор обязательных параметров: Lastname, Name, DateOfBirth. Остальные обязательные параметры будут устанавливаться индивидуально при подключении к сервису.
 
Набор обязательных данных может меняться в зависимости от типов услуг в бронировании. Рекомендуемый набор обязательных параметров: Lastname, Name, DateOfBirth. Остальные обязательные параметры будут устанавливаться индивидуально при подключении к сервису.
  
Элемент Person.
+
Элемент '''Person'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 920: Строка 1011:
 
Для некоторых услуг может потребоваться информация о документах.
 
Для некоторых услуг может потребоваться информация о документах.
  
Элемент Document.
+
Элемент '''Document'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 950: Строка 1041:
 
|}
 
|}
  
 
+
Элемент '''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">
 +
После выполнения запроса сразу поступит информация о бронировании. В первую очередь нужно внимательно проверить статусы &lt;Status&gt; всех услуг в бронировании. Если бронировалась услуга со статусом в результатах поиска RQ (по запросу), то статус скорее всего будет не равен «booked». Через некоторое время проверять реальный статус бука отправляя запрос на чтение данных о бронировании.
  
После выполнения запроса сразу поступит информация о бронировании. В первую очередь нужно внимательно проверить статусы &lt;Status&gt; всех услуг в бронировании. Если бронировалась услуга со статусом в результатах поиска RQ (по запросу), то статус скорее всего будет не равен «booked». Через некоторое время проверять реальный статус бука отправляя запрос на чтение данных о бронировании.
+
<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%3DBooking" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
<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:bookingResponse>
Строка 1082: Строка 1197:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
 
Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
  
Элемент Booking.
+
Элемент '''Booking'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1104: Строка 1219:
 
В элементах Item раскрывается подробнейшая информация об одной услуге в бронировании.
 
В элементах Item раскрывается подробнейшая информация об одной услуге в бронировании.
  
Элемент Item.
+
Элемент '''Item'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1152: Строка 1267:
 
Информация о цене услуги вынесена в отдельную ветку:
 
Информация о цене услуги вынесена в отдельную ветку:
  
Элемент Prices.
+
Элемент '''Prices'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1188: Строка 1303:
 
Информация о датах услуги также вынесена в отдельную ветку:
 
Информация о датах услуги также вынесена в отдельную ветку:
  
Элемент Dates.
+
Элемент '''Dates'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1218: Строка 1333:
 
Дополнительные статусы:
 
Дополнительные статусы:
  
Элемент Statuses.
+
Элемент '''Statuses'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1256: Строка 1371:
  
 
Информация о клиентах заказа полностью повторяет структуру запроса.
 
Информация о клиентах заказа полностью повторяет структуру запроса.
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Выгрузка актуальных данных по заказу(ам) ===
+
== Подтверждение бронирования ==
Используется для экспорта бронирований и для обновления данных в локальной клиентской базе.
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 +
==== Запрос ====
 +
<div class="mw-collapsible-content">
 +
Подтверждение бронирования заказа.
  
'''WSDL''' (тестовый сервер):  
+
'''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;">
<pre>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DConfirmBooking">
<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:Header/>
+
  <soapenv:Body>
  <soapenv:Body>
+
      <ver:confirm>
    <ver:export>
+
        <RequestBin>
      <RequestBin>
+
            <Request>
        <Request>
+
              <BookingId>179547</BookingId>
          <Export>
+
             </Request>
            <Items>
+
            <Source>
              <!--Zero or more repetitions:-->
+
              <ClientId></ClientId>
              <Item Id="386621"/>
+
              <APIKey></APIKey>
             </Items>
+
              <Language>ru</Language>
          </Export>
+
              <Currency>RUB</Currency>
        </Request>
+
            </Source>
        <Source>
+
        </RequestBin>
          <ClientId>134</ClientId>
+
      </ver:confirm>
          <APIKey>93632C10DA299034C03D742FB160C2D6</APIKey>
+
  </soapenv:Body>
          <Language>ru</Language>
 
          <Currency>RUB</Currency>
 
        </Source>
 
      </RequestBin>
 
    </ver:export>
 
  </soapenv:Body>
 
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
В запросе нужно указать Id заказа, который был получен в результате бронирования.
+
Элемент '''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"
<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%3DExport" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
! scope="col" width="200" | Элемент
  <SOAP-ENV:Body>
+
! scope="col" width="300" | Описание
    <ns1:exportResponse>
+
! scope="col" width="300" | Допустимые значения
      <ResponseBin>
+
|-
        <Response>
+
| ClientID
          <Export>
+
| Обязательный. ID клиента в системе Nemo.
            <Items>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
              <Item Id="386621">
+
| Целое число.
                <Hotel Id="1872666">
+
|-
                  <Supplier>GTA</Supplier>
+
| APIKey
                  <CityId>22046</CityId>
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
                  <DateBegin>2013-10-15</DateBegin>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                  <DateEnd>2013-10-18</DateEnd>
+
| Латинские буквы и цифры. Всего 32 символа.
                  <CacheId>1872666</CacheId>
+
|}
                  <Name>ADLON KEMPINSKI</Name>
+
</div>
                   <Categories>
+
</div>
                    <Category Id="1">
+
 
                      <Rooms>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
                        <Room Count="1" Id="1" ServiceId="1"/>
+
==== Ответ ====
                        <Room Count="1" Id="2" ServiceId="2"/>
+
<div class="mw-collapsible-content">
                      </Rooms>
+
 
                      <TotalPrice Currency="RUB">74733.84</TotalPrice>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
                    </Category>
+
<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">
                  </Categories>
+
  <SOAP-ENV:Body>
                  <Services>
+
      <ns1:confirmResponse>
                    <Service Id="1" Status="OK">
+
        <ResponseBin>
                      <Desc>Standard Twin</Desc>
+
            <Response>
                      <Meal>Full Breakfast</Meal>
+
              <Books>
                      <Price Currency="RUB">37366.92</Price>
+
                  <Book>
                    </Service>
+
                    <Id>179547</Id>
                    <Service Id="2" Status="OK">
+
                    <Status>booked</Status>
                      <Desc>Standard Twin</Desc>
+
                   </Book>
                      <Meal>Full Breakfast</Meal>
+
              </Books>
                      <Price Currency="RUB">37366.92</Price>
+
            </Response>
                    </Service>
+
        </ResponseBin>
                  </Services>
+
      </ns1:confirmResponse>
                  <Rooms>
+
  </SOAP-ENV:Body>
                    <Room Id="1" Type="TWIN"/>
+
</SOAP-ENV:Envelope>
                    <Room Id="2" Type="SNGL"/>
+
</syntaxhighlight>
                  </Rooms>
+
</div>
                </Hotel>
+
</div>
                <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>
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Export
                  <TotalPrice Currency="RUB">74733.84</TotalPrice>
+
 
                </Prices>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
                <Dates>
+
==== Запрос ====
                  <BookingDate>2013-08-01 20:21:47</BookingDate>
+
<div class="mw-collapsible-content">
                  <UpdateDate>2013-08-01 20:35:01</UpdateDate>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
                  <CancelDate xsi:nil="true"/>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  <PenaltyDate>2013-07-31 19:10:37</PenaltyDate>
+
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport">
                  <AutoCancelDate>2013-08-01 20:23:47</AutoCancelDate>
+
  <soapenv:Header/>
                  <ConfirmationLimit/>
+
  <soapenv:Body>
                </Dates>
+
    <ver:export>
                <Statuses>
+
      <RequestBin>
                  <PaymentStatus>1</PaymentStatus>
+
        <Request>
                  <DocumentStatus>1</DocumentStatus>
+
          <Export>
                  <DeliveryStatus>1</DeliveryStatus>
+
            <Items>
                  <InvoiceStatus>1</InvoiceStatus>
+
              <!--Zero or more repetitions:-->
                  <ProblemStatus>1</ProblemStatus>
+
              <Item Id="386621"/>
                </Statuses>
+
            </Items>
                <Customer>
+
          </Export>
                  <Person Number="1"/>
+
        </Request>
                </Customer>
+
        <Source>
                <Persons>
+
          <ClientId></ClientId>
                  <Person Number="1"/>
+
          <APIKey></APIKey>
                  <Person Number="2"/>
+
          <Language>ru</Language>
                  <Person Number="3"/>
+
          <Currency>RUB</Currency>
                </Persons>
+
        </Source>
              </Item>
+
      </RequestBin>
            </Items>
+
    </ver:export>
            <Persons>
+
  </soapenv:Body>
              <Person Number="1">
+
</soapenv:Envelope>
                <Lastname>IVANOV</Lastname>
+
</syntaxhighlight>
                <Name>IVAN</Name>
+
 
                <Middlename>IVANOVICH</Middlename>
+
Элемент '''Item'''
                <DateOfBirth xsi:nil="true"/>
+
{| style="width: 800px" class="wikitable"
                <Phone>+79871231212</Phone>
+
|-
                <Email>m.rudenko@mute-lab.com</Email>
+
! scope="col" width="200" | Элемент
                <Gender xsi:nil="true"/>
+
! scope="col" width="300" | Описание
                <Document Type="P">
+
! scope="col" width="300" | Допустимые значения
                  <Series>1811</Series>
+
|-
                  <Number>912219</Number>
+
| Атрибут Id
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
| Обязательный. Идентификатор заказа в системе Nemo.
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
| Целое число
                </Document>
+
|}
              </Person>
+
 
              <Person Number="2">
+
Элемент '''Source'''
                <Lastname>PETROV</Lastname>
+
{| style="width: 800px" class="wikitable"
                <Name>IVAN</Name>
+
|-
                <Middlename>MIKHAILOVICH</Middlename>
+
! scope="col" width="200" | Элемент
                <DateOfBirth xsi:nil="true"/>
+
! scope="col" width="300" | Описание
                <Phone>+79871231212</Phone>
+
! scope="col" width="300" | Допустимые значения
                <Email>m.rudenko@mute-lab.com</Email>
+
|-
                <Gender xsi:nil="true"/>
+
| ClientID
                <Document Type="P">
+
| Обязательный. ID клиента в системе Nemo.
                  <Series>1866</Series>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                  <Number>913319</Number>
+
| Целое число.
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
|-
                   <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
| APIKey
                </Document>
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
              </Person>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
              <Person Number="3">
+
| Латинские буквы и цифры. Всего 32 символа.
                <Lastname>SIDOROV</Lastname>
+
|}
                <Name>IVAN</Name>
+
</div>
                <Middlename>SERGEEVICH</Middlename>
+
</div>
                <DateOfBirth xsi:nil="true"/>
+
 
                <Phone>+79871231212</Phone>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
                <Email>m.rudenko@mute-lab.com</Email>
+
==== Ответ ====
                <Gender xsi:nil="true"/>
+
<div class="mw-collapsible-content">
                <Document Type="P">
+
Ответ содержит элементы результатов бронирований. См. описание выше.
                  <Series>1866</Series>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
                  <Number>913319</Number>
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport"
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                </Document>
+
  <SOAP-ENV:Body>
              </Person>
+
    <ns1:exportResponse>
            </Persons>
+
      <ResponseBin>
          </Export>
+
        <Response>
        </Response>
+
          <Export>
      </ResponseBin>
+
            <Items>
    </ns1:exportResponse>
+
              <Item Id="386621">
  </SOAP-ENV:Body>
+
                <Hotel Id="1872666">
</SOAP-ENV:Envelope>
+
                   <Supplier>GTA</Supplier>
</pre>
+
                  <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>
<pre>
+
                        <Room Count="1" Id="1" ServiceId="1"/>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCancelBooking">
+
                        <Room Count="1" Id="2" ServiceId="2"/>
  <soapenv:Header/>
+
                      </Rooms>
  <soapenv:Body>
+
                      <TotalPrice Currency="RUB">74733.84</TotalPrice>
    <ver:cancel>
+
                    </Category>
      <RequestBin>
+
                  </Categories>
        <Request>
+
                  <Services>
          <CancelBooking>
+
                    <Service Id="1" Status="OK">
            <Items>
+
                      <Desc>Standard Twin</Desc>
              <Item Id="386621"/>
+
                      <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 20:21:47</BookingDate>
 +
                  <UpdateDate>2013-08-01 20:35:01</UpdateDate>
 +
                  <CancelDate xsi:nil="true"/>
 +
                  <PenaltyDate>2013-07-31 19:10:37</PenaltyDate>
 +
                  <AutoCancelDate>2013-08-01 20:23:47</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>
 
             </Items>
          </CancelBooking>
+
            <Persons>
        </Request>
+
              <Person Number="1">
        <Source>
+
                <Lastname>IVANOV</Lastname>
          <ClientId></ClientId>
+
                <Name>IVAN</Name>
          <APIKey></APIKey>
+
                <Middlename>IVANOVICH</Middlename>
          <Language>ru</Language>
+
                <DateOfBirth xsi:nil="true"/>
          <Currency>RUB</Currency>
+
                <Phone>+79871231212</Phone>
        </Source>
+
                <Email>m.rudenko@mute-lab.com</Email>
      </RequestBin>
+
                <Gender xsi:nil="true"/>
    </ver:cancel>
+
                <Document Type="P">
  </soapenv:Body>
+
                  <Series>1811</Series>
</soapenv:Envelope>
+
                  <Number>912219</Number>
</pre>
+
                  <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>
Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
+
                <Middlename>MIKHAILOVICH</Middlename>
=== Страна ===
+
                <DateOfBirth xsi:nil="true"/>
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
+
                <Phone>+79871231212</Phone>
==== Запрос ====
+
                <Email>m.rudenko@mute-lab.com</Email>
<pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic">
+
                <Gender xsi:nil="true"/>
  <soapenv:Header/>
+
                <Document Type="P">
  <soapenv:Body>
+
                  <Series>1866</Series>
      <ver:countries>
+
                  <Number>913319</Number>
        <RequestBin>
+
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
            <Request>
+
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
              <CountryStatic>
+
                </Document>
              </CountryStatic>
+
              </Person>
            </Request>
+
              <Person Number="3">
            <Source>
+
                <Lastname>SIDOROV</Lastname>
              <ClientId></ClientId>
+
                <Name>IVAN</Name>
              <APIKey></APIKey>
+
                <Middlename>SERGEEVICH</Middlename>
              <Language>ru</Language>
+
                <DateOfBirth xsi:nil="true"/>
              <Currency>RUB</Currency>
+
                <Phone>+79871231212</Phone>
             </Source>
+
                <Email>m.rudenko@mute-lab.com</Email>
        </RequestBin>
+
                <Gender xsi:nil="true"/>
       </ver:countries>
+
                <Document Type="P">
  </soapenv:Body>
+
                  <Series>1866</Series>
</soapenv:Envelope>
+
                  <Number>913319</Number>
</pre>
+
                  <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:Envelope>
 +
</syntaxhighlight>
 +
 
 +
Формат ответа аналогичен результату бронирования.
 +
</div>
 +
</div>
  
Элемент '''Request'''
+
==== Ошибки ====
 +
 
 +
== Аннуляция заказа ==
 +
'''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"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1494: Строка 1710:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| CountryStatic
+
| Атрибут Id
| Пустой элемент
+
| Обязательный. Идентификатор заказа в системе Nemo.
| <br/>
+
| Целое число
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''Source'''
<pre>
+
{| style="width: 800px" class="wikitable"
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic" 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>
 
</pre>
 
 
 
Элемент CountryStatic
 
{| style="width: 800px" class="wikitable"
 
 
|-
 
|-
 
! scope="col" width="200" | Элемент
 
! scope="col" width="200" | Элемент
Строка 1536: Строка 1722:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Countries
+
| ClientID
| Обязательный
+
| Обязательный. ID клиента в системе Nemo.
| Набор элементов Country
+
Можно посмотреть/добавить в "Администрирование" "Веб-служба. Авторизация".
|}
+
| Целое число.
 
 
Элемент Country
 
{| style="width: 800px" class="wikitable"
 
 
|-
 
|-
! scope="col" width="200" | Элемент
+
| APIKey
! scope="col" width="300" | Описание
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
! scope="col" width="300" | Допустимые значения
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
|-
+
| Латинские буквы и цифры. Всего 32 символа.
| Атрибут Id
 
| Обязательный. Идентификатор страны (ISO).
 
| Целое число
 
|-
 
| Code
 
| Обязательный. Код страны ISO.
 
| Строка из 2-х латинских букв
 
|-
 
| Continent
 
| Обязательный. Название континента.
 
| Строка.
 
|-
 
| Data
 
| Обязательный. Информация требующая перевода.
 
| Набор элементов Info.
 
 
|}
 
|}
 +
</div>
 +
</div>
  
Элемент Info
+
==== Ответ ====
{| style="width: 800px" class="wikitable"
+
см. результаты бронирования.
|-
+
==== Ошибки ====
! scope="col" width="200" | Элемент
+
* '''You can cancel only booked order''' - возникает при попытке аннулировать незабронированный заказ.
! scope="col" width="300" | Описание
+
* '''Invalid Booking Id N''' - заказ с номером N отсутствует.
! scope="col" width="300" | Допустимые значения
 
|-
 
| Атрибут Language
 
| Обязательный. Язык в котором представлена информация.
 
| Строка из 2-х латинских букв.
 
|-
 
| Name
 
| Обязательный. Наименование страны.
 
| Строка в произвольном формате.
 
|}
 
 
 
==== Ошибки ====
 
 
 
=== Город ===
 
Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:
 
 
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CityStatic
 
  
 +
= Статические данные =
 +
Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
 +
== Страна ==
 +
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
<pre>
+
<div class="mw-collapsible-content">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCityStatic">
+
<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:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <ver:cities>
+
       <ver:countries>
 
         <RequestBin>
 
         <RequestBin>
 
             <Request>
 
             <Request>
               <CityStatic>
+
               <CountryStatic>
                  <CountryId>4</CountryId>
+
               </CountryStatic>
               </CityStatic>
 
 
             </Request>
 
             </Request>
 
             <Source>
 
             <Source>
Строка 1607: Строка 1766:
 
             </Source>
 
             </Source>
 
         </RequestBin>
 
         </RequestBin>
       </ver:cities>
+
       </ver:countries>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент CityStatic
+
Элемент '''Request'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1619: Строка 1778:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| CountryId
+
| CountryStatic
| Обязательный. Идентификатор страны.
+
| Пустой элемент
| Целое число
+
| <br/>
 +
|}
 +
 
 +
Элемент '''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>
+
<div class="mw-collapsible-content">
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCityStatic">
+
<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%3DCountryStatic"
 +
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
   <SOAP-ENV:Body>
 
   <SOAP-ENV:Body>
       <ns1:citiesResponse>
+
       <ns1:countriesResponse>
 
         <ResponseBin>
 
         <ResponseBin>
 
             <Response>
 
             <Response>
               <CityStatic>
+
               <CountryStatic>
                   <Cities>
+
                   <Countries>
<City Id="1">
+
                    <Country Id="4">
                         <Name>Кабул</Name>
+
                         <Code>AF</Code>
                         <CountryId>4</CountryId>
+
                         <Continent>asia</Continent>
 
                         <Data>
 
                         <Data>
                          <Info Language="EN">
 
                              <Name>Kabul</Name>
 
                          </Info>
 
 
                           <Info Language="RU">
 
                           <Info Language="RU">
                               <Name>Кабул</Name>
+
                               <Name>Афганистан</Name>
 
                           </Info>
 
                           </Info>
                        </Data>
 
                    </City>
 
                    <City Id="204793">
 
                        <Name>Aibak</Name>
 
                        <CountryId>4</CountryId>
 
                        <Data>
 
 
                           <Info Language="EN">
 
                           <Info Language="EN">
                               <Name>Aibak</Name>
+
                               <Name>Afghanistan</Name>
                          </Info>
 
                          <Info Language="RU">
 
                              <Name>Aibak</Name>
 
 
                           </Info>
 
                           </Info>
 
                         </Data>
 
                         </Data>
                     </City>
+
                     </Country>
                    <City Id="204785">
+
                  </Countries>
                        <Name>Anar Darah</Name>
+
               </CountryStatic>
                        <CountryId>4</CountryId>
+
             </Response>
                        <Data>
+
         </ResponseBin>
                          <Info Language="EN">
+
       </ns1:countriesResponse>
                              <Name>Anar Darah</Name>
+
   </SOAP-ENV:Body>
                          </Info>
 
                          <Info Language="RU">
 
                              <Name>Anar Darah</Name>
 
                          </Info>
 
                        </Data>
 
                    </City>
 
...
 
    </Cities>
 
               </CityStatic>
 
             </Response>
 
         </ResponseBin>
 
       </ns1:citiesResponse>
 
   </SOAP-ENV:Body>
 
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент CityStatic
+
Элемент '''CountryStatic'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1686: Строка 1844:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Cities
+
| Countries
| Обязательный. Массив городов.
+
| Обязательный
| Набор элементов City
+
| Набор элементов Country
 
|}
 
|}
  
Элемент City
+
Элемент '''Country'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1699: Строка 1857:
 
|-
 
|-
 
| Атрибут Id
 
| Атрибут Id
| Обязательный. Идентификатор города.
+
| Обязательный. Идентификатор страны (ISO).
 
| Целое число
 
| Целое число
 
|-
 
|-
| Name
+
| Code
| Название города.
+
| Обязательный. Код страны ISO.
|  
+
| Строка из 2-х латинских букв
 
|-
 
|-
| Data
+
| Continent
| Названия городов на разных языках. В данный момент поддерживаются названия на русском и английском.
+
| Обязательный. Название континента.
| См. описание элемента Data в ответе получения информации о стране.
+
| Строка.
 +
|-
 +
| Data
 +
| Обязательный. Информация требующая перевода.
 +
| Набор элементов Info.
 +
|}
 +
 
 +
Элемент '''Info'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| Атрибут Language
 +
| Обязательный. Язык в котором представлена информация.
 +
| Строка из 2-х латинских букв.
 +
|-
 +
| Name
 +
| Обязательный. Наименование страны.
 +
| Строка в произвольном формате.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Статика по отелям и апартаментам ===
+
== Город ==
Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.
+
Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:
  
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CityStatic
  
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
<pre>
+
<div class="mw-collapsible-content">
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelStatic">
+
<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%3DCityStatic">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
 
   <soapenv:Body>
 
   <soapenv:Body>
       <ver:hotels>
+
       <ver:cities>
 
         <RequestBin>
 
         <RequestBin>
 
             <Request>
 
             <Request>
               <HotelStatic>
+
               <CityStatic>
                   <CityId>58166</CityId>
+
                   <CountryId>4</CountryId>
               </HotelStatic>
+
               </CityStatic>
 
             </Request>
 
             </Request>
 
             <Source>
 
             <Source>
Строка 1737: Строка 1920:
 
             </Source>
 
             </Source>
 
         </RequestBin>
 
         </RequestBin>
       </ver:hotels>
+
       </ver:cities>
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент Hotels
+
Элемент '''CityStatic'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1749: Строка 1932:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| CityId
+
| CountryId
| Обязательный. Идентификатор города из которого необходимо получить отели.
+
| Обязательный. Идентификатор страны.
 
| Целое число
 
| Целое число
 
|}
 
|}
  
 +
Элемент '''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><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelStatic" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
<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%3DCityStatic">
 
   <SOAP-ENV:Body>
 
   <SOAP-ENV:Body>
       <ns1:hotelsResponse>
+
       <ns1:citiesResponse>
 
         <ResponseBin>
 
         <ResponseBin>
 
             <Response>
 
             <Response>
               <HotelStatic>
+
               <CityStatic>
                   <Hotels>
+
                   <Cities>
                     <Hotel Id="271714" Apartment="false">
+
                     <City Id="1">
                         <CityId>58166</CityId>
+
                         <Name>Кабул</Name>
                         <CountryId>643</CountryId>
+
                         <CountryId>4</CountryId>
                        <Latitude xsi:nil="true"/>
 
                        <Longitude xsi:nil="true"/>
 
                        <Rating>3</Rating>
 
                        <Floors xsi:nil="true"/>
 
 
                         <Data>
 
                         <Data>
                           <Info>
+
                           <Info Language="EN">
                               <Name>* Azimut (business)</Name>
+
                               <Name>Kabul</Name>
                              <Area xsi:nil="true"/>
+
                          </Info>
                              <Location>Within city</Location>
+
                          <Info Language="RU">
                               <Desc>This 3 star hotel is located within the city of St Petersburg.</Desc>
+
                               <Name>Кабул</Name>
                              <Address>43/1 Lermoutovsky Prospect, St Petersburg, 190103</Address>
 
 
                           </Info>
 
                           </Info>
 
                         </Data>
 
                         </Data>
                        <Phones>
+
                     </City>
                          <Phone>812 7402640</Phone>
+
                     <City Id="204793">
                        </Phones>
+
                         <Name>Aibak</Name>
                        <Fax>812 2518890</Fax>
+
                         <CountryId>4</CountryId>
                        <Images/>
+
                         <Data>
                     </Hotel>
+
                          <Info Language="EN">
                     <Hotel Id="159535" Apartment="false">
+
                               <Name>Aibak</Name>
                         <CityId>58166</CityId>
+
                          </Info>
                         <CountryId>643</CountryId>
+
                          <Info Language="RU">
                         <Latitude>59.935011</Latitude>
+
                               <Name>Aibak</Name>
                        <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>
 
                           </Info>
 
                         </Data>
 
                         </Data>
                        <Phones/>
+
                    </City>
                        <Fax>+7 812 6106160</Fax>
+
                    <City Id="204785">
                         <Images>
+
                         <Name>Anar Darah</Name>
                          <Image>
+
                        <CountryId>4</CountryId>
                              <Path>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/lr/ext.jpg</Path>
+
                        <Data>
                              <Icon>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/ext-t.jpg</Icon>
+
                           <Info Language="EN">
                          </Image>
+
                               <Name>Anar Darah</Name>
                           <Image>
+
                           </Info>
                               <Path>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/lr/unknown.jpg</Path>
+
                           <Info Language="RU">
                              <Icon>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/unknown-t.jpg</Icon>
+
                               <Name>Anar Darah</Name>
                           </Image>
+
                           </Info>
                           <Image>
+
                         </Data>
                              <Path>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/lr/bed room.jpg</Path>
+
                     </City>
                               <Icon>https://www.miki.co.uk/live/hotel/mikiNet/image/v1.0/RU/44018/406/bed room-t.jpg</Icon>
+
...
                           </Image>
+
                   </Cities>
                         </Images>
+
               </CityStatic>
                     </Hotel>
 
                    ...
 
                   </Hotels>
 
               </HotelStatic>
 
 
             </Response>
 
             </Response>
 
         </ResponseBin>
 
         </ResponseBin>
       </ns1:hotelsResponse>
+
       </ns1:citiesResponse>
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент Hotel
+
Элемент '''CityStatic'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1834: Строка 2022:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Атрибут Id
+
| Cities
| Обязательный. Идентификатор отеля в системе Nemo.
+
| Обязательный. Массив городов.  
| Целое число.
+
| Набор элементов City
 +
|}
 +
 
 +
Элемент '''City'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| CityId
+
| Атрибут '''Id'''
 
| Обязательный. Идентификатор города.
 
| Обязательный. Идентификатор города.
| Целое число.
+
| Целое число
 
|-
 
|-
| CountryId
+
| Name
| Обязательный. Идентификатор страны .
+
| Название города.
| Целое число.
+
|  
 
|-
 
|-
| Latitude
+
| Data
| Необязательный. Широта.
+
| Названия городов на разных языках. В данный момент поддерживаются названия на русском и английском.
| Вещественное число.
+
| См. описание элемента Data в ответе получения информации о стране.
|-
+
|}
| Longitude
+
</div>
| Необязательный. Долгота.
+
</div>
| Вещественное число.
 
|-
 
| Rating
 
| Необязательный. Рейтинг.
 
| Вещественное число.
 
|-
 
| Floors
 
| Необязательный. Количество этажей
 
| Целое число.
 
|-
 
| Data
 
| Необязательный.
 
| Набор элементов Info.
 
|-
 
| Phones
 
| Необязательный. Массив телефонов.
 
| Набор элементов Phone.
 
|-
 
| Fax
 
| Необязательный. Факс.
 
| Строка в произвольном формате.
 
|-
 
| Images
 
| Необязательный. Маcсив изображений.
 
| Набор элементов Image.
 
|}
 
  
Элемент Info.
+
==== Ошибки ====
 +
 
 +
== Статика по отелям и апартаментам ==
 +
Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.
 +
 
 +
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic
 +
 
 +
<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%3DHotelStatic">
 +
  <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'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1886: Строка 2090:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Name
+
| CityId
| Обязательный. Наименование отеля.
+
| Обязательный. Идентификатор города из которого необходимо получить отели.
| Строка в произвольном формате.
+
| Целое число
 +
|}
 +
 
 +
Элемент '''Source'''
 +
{| style="width: 800px" class="wikitable"
 
|-
 
|-
| Area
+
! scope="col" width="200" | Элемент
| Необязательный. Описание места расположения отеля.
+
! scope="col" width="300" | Описание
| Строка в произвольном формате.
+
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Location
+
| ClientID
| Необязательный. Район города.
+
| Обязательный. ID клиента в системе Nemo.
| Строка в произвольном формате.
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
|-
+
| Целое число.
| Desc
+
|-
| Необязательный. Описание отеля.
+
| 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%3DHotelStatic"
 +
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'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| Атрибут Id
 +
| Обязательный. Идентификатор отеля в системе Nemo.
 +
| Целое число.
 +
|-
 +
| CityId
 +
| Обязательный. Идентификатор города.
 +
| Целое число.
 +
|-
 +
| CountryId
 +
| Обязательный. Идентификатор страны .
 +
| Целое число.
 +
|-
 +
| Latitude
 +
| Необязательный. Широта.
 +
| Вещественное число.
 +
|-
 +
| Longitude
 +
| Необязательный. Долгота.
 +
| Вещественное число.
 +
|-
 +
| Rating
 +
| Необязательный. Рейтинг.
 +
| Вещественное число.
 +
|-
 +
| Floors
 +
| Необязательный. Количество этажей
 +
| Целое число.
 +
|-
 +
| Data
 +
| Необязательный.
 +
| Набор элементов Info.
 +
|-
 +
| Phones
 +
| Необязательный. Массив телефонов.
 +
| Набор элементов Phone.
 +
|-
 +
| Fax
 +
| Необязательный. Факс.
 +
| Строка в произвольном формате.
 +
|-
 +
| Images
 +
| Необязательный. Маcсив изображений.
 +
| Набор элементов Image.
 +
|}
 +
 
 +
Элемент '''Info'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| Name
 +
| Обязательный. Наименование отеля.
 +
| Строка в произвольном формате.
 +
|-
 +
| Area
 +
| Необязательный. Описание места расположения отеля.
 +
| Строка в произвольном формате.
 +
|-
 +
| Location
 +
| Необязательный. Район города.
 +
| Строка в произвольном формате.
 +
|-
 +
| Desc
 +
| Необязательный. Описание отеля.
 +
| Строка в произвольном формате.
 
|-
 
|-
 
| Address
 
| Address
| Необязательный. Адрес отеля.
+
| Необязательный. Адрес отеля.
| Строка в произвольном формате.
+
| Строка в произвольном формате.
|}
+
|}
 +
 
 +
Элемент '''Phones'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| Phone
 +
| Обязательный. Телефон.
 +
| Строка в произвольном формате.
 +
|}
 +
 
 +
Элемент '''Image'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| Path
 +
| Необязательный. Путь к полному изображению.
 +
| Строка в произвольном формате.
 +
|-
 +
| Icon
 +
| Необязательный. Путь к миниатюре, иконке.
 +
| Строка в произвольном формате.
 +
|}
 +
</div>
 +
</div>
 +
 
 +
==== Ошибки ====
  
Элемент Phones.
+
==См. также==
{| style="width: 800px" class="wikitable"
+
* [[Агентский интерфейс прикладного программирования (Агентский API)]]
|-
+
* [[Схема использования агентского API (workflow)]]
! scope="col" width="200" | Элемент
+
* [[Агентский API Авиабилеты]]
! scope="col" width="300" | Описание
+
* [[Агентский API Оплата]]
! scope="col" width="300" | Допустимые значения
 
|-
 
| Phone
 
| Обязательный. Телефон.
 
| Строка в произвольном формате.
 
|}
 
Элемент Image.
 
{| style="width: 800px" class="wikitable"
 
|-
 
! scope="col" width="200" | Элемент
 
! scope="col" width="300" | Описание
 
! scope="col" width="300" | Допустимые значения
 
|-
 
| Path
 
| Необязательный. Путь к полному изображению.
 
| Строка в произвольном формате.
 
|-
 
| Icon
 
| Необязательный. Путь к миниатюре, иконке.
 
| Строка в произвольном формате.
 
|}
 
 
 
==== Ошибки ====
 

Текущая версия на 18:45, 6 мая 2019

Внимание! В системе реализован усовершенствованный API-проект «Nemo Connect», настоятельно рекомендуем подключаться по схеме, описанной в документации по ссылке

Nemo-logo.png

Агентский API Отели — система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации.

Динамические данные

Поиск

Сервис предназначен для получения списка отелей, удовлетворяющих условиям запроса. В условия запроса входят: идентификатор города, где будет вестись поиск; дата заезда и дата выезда; информация о количестве людей и способе их размещения в комнатах. Так же указываются дополнительные необязательные поля фильтров.

Для получения списка доступных городов, воспользуйтесь запросом на выгрузку статики (см. ССЫЛКА). Список допустимых отелей для фильтра также доступен через сервис (см. ССЫЛКА). Рекомендуется выгрузить все данные по отелям, городам и странам в локальную базу, для экономии времени и запросов.

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelsSearch

развернуть

Запрос

развернуть

Ответ

Ошибки

Расширенная информация по одному отелю

Сервис получения дополнительной информации об отеле требует указания идентификатора отеля в системе Nemo и категории.

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelExtInfo

развернуть

Запрос

развернуть

Ответ

Ошибки

Штрафы за аннуляцию

Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.

Штрафы получаются по каждой услуге отдельным запросом. Нужно указать тип услуги, идентификатор результата поиска и выбранную категорию.

Внимание. Для отелей из Hotelbeds (Supplier=HOTELBEDS) штрафы до бронирования получить невозможно.

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Penalty

развернуть

Запрос

развернуть

Ответ

Ошибки

Бронирование

развернуть

Запрос

развернуть

Ответ

Ошибки

Подтверждение бронирования

развернуть

Запрос

развернуть

Ответ

Ошибки

Выгрузка актуальных данных по заказу(ам)

Используется для экспорта бронирований и для обновления данных в локальной клиентской базе.

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Export

развернуть

Запрос

развернуть

Ответ

Ошибки

Аннуляция заказа

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CancelBooking

развернуть

Запрос

Ответ

см. результаты бронирования.

Ошибки

  • You can cancel only booked order - возникает при попытке аннулировать незабронированный заказ.
  • Invalid Booking Id N - заказ с номером N отсутствует.

Статические данные

Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.

Страна

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic

развернуть

Запрос

развернуть

Ответ

Ошибки

Город

Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CityStatic

развернуть

Запрос

развернуть

Ответ

Ошибки

Статика по отелям и апартаментам

Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.

WSDL (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic

развернуть

Запрос

развернуть

Ответ

Ошибки

См. также