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

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

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
(Ответ)
 
(не показано 67 промежуточных версий 4 участников)
Строка 1: Строка 1:
 +
{{Attention|В системе реализован усовершенствованный API-проект «Nemo Connect», настоятельно рекомендуем подключаться по схеме, описанной в документации по [http://docs.nemo.travel/ ссылке]}}
 +
 +
[[Категория:Агентский API]]
 +
[[Категория:Интеграция]]
 
[[Файл:Nemo-logo.png‎|right]]
 
[[Файл:Nemo-logo.png‎|right]]
'''Агентский API Отелей''' - система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации.
+
'''Агентский API Отели''' система, которая предоставляет возможность поиска и бронирования отелей а так же получение информации о времени и размерах штрафов, уникальной информации об отеле, получение статической информации.
  
== Динамические данные ==
+
= Динамические данные =
=== Поиск ===
+
== Поиск ==
  
 
Сервис предназначен для получения списка отелей, удовлетворяющих условиям запроса. В условия запроса входят: идентификатор города, где будет вестись поиск; дата заезда и дата выезда; информация о количестве людей и способе их размещения в комнатах. Так же указываются дополнительные необязательные поля фильтров.
 
Сервис предназначен для получения списка отелей, удовлетворяющих условиям запроса. В условия запроса входят: идентификатор города, где будет вестись поиск; дата заезда и дата выезда; информация о количестве людей и способе их размещения в комнатах. Так же указываются дополнительные необязательные поля фильтров.
Строка 11: Строка 15:
 
'''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">
 
==== Запрос ====
 
==== Запрос ====
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px;">
+
<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%3DHotelsSearch">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelsSearch">
Строка 30: Строка 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:-->
Строка 146: Строка 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.
  
Строка 157: Строка 184:
 
* Категория &lt;Categories&gt;. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
 
* Категория &lt;Categories&gt;. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
  
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px;">
+
<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/"  
 
<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">
 
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelsSearch">
Строка 200: Строка 227:
 
               </Hotel>
 
               </Hotel>
 
...
 
...
    </Hotels>
+
            </Hotels>
 
           </HotelSearch>
 
           </HotelSearch>
 
         </Response>
 
         </Response>
Строка 257: Строка 284:
 
| Элемент Category
 
| Элемент Category
 
|}
 
|}
 
  
 
Элемент '''Service'''
 
Элемент '''Service'''
Строка 288: Строка 314:
 
Атрибут Currency - код валюты.
 
Атрибут Currency - код валюты.
 
|}
 
|}
 
  
 
Элемент '''Room'''
 
Элемент '''Room'''
Строка 350: Строка 375:
 
Атрибут Currency - код валюты.
 
Атрибут Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Расширенная информация по одному отелю ===
+
== Расширенная информация по одному отелю ==
 
 
 
Сервис получения дополнительной информации об отеле требует указания идентификатора отеля в системе Nemo и категории.
 
Сервис получения дополнительной информации об отеле требует указания идентификатора отеля в системе Nemo и категории.
  
 
'''WSDL''' (тестовый сервер): 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">
 
==== Запрос ====
 
==== Запрос ====
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px;">
+
<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">
Строка 404: Строка 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">
 
==== Ответ ====
 
==== Ответ ====
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px;">
+
<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/"  
 
<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:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelExtInfo"  
Строка 500: Строка 550:
 
Атрибут Currency - код валюты.
 
Атрибут Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Штрафы за аннуляцию ===
+
== Штрафы за аннуляцию ==
 +
 
 
Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
 
Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
  
Строка 512: Строка 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">
 
==== Запрос ====
 
==== Запрос ====
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px;">
+
<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%3DPenalty">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DPenalty">
Строка 561: Строка 616:
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''Source'''
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px;">
+
{| 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%3DPenalty">
+
|-
 +
! 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%3DPenalty">
 
   <SOAP-ENV:Body>
 
   <SOAP-ENV:Body>
 
     <ns1:penaltyResponse>
 
     <ns1:penaltyResponse>
Строка 638: Строка 715:
 
Атрибут: Currency - код валюты.
 
Атрибут: Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Бронирование ===
+
== Бронирование ==
 
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
 
+
<div class="mw-collapsible-content">
 
Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
 
Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
  
Строка 656: Строка 735:
 
'''WSDL''' (тестовый сервер): 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/"  
+
<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">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DBooking">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
Строка 783: Строка 863:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Booking'''
 
Элемент '''Booking'''
Строка 961: Строка 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». Через некоторое время проверять реальный статус бука отправляя запрос на чтение данных о бронировании.
  
<pre><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"  
+
<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:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DBooking"  
 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
Строка 1095: Строка 1197:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
 
Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
Строка 1269: Строка 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/"  
+
  <soapenv:Header/>
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport">
+
  <soapenv:Body>
  <soapenv:Header/>
+
      <ver:confirm>
  <soapenv:Body>
+
        <RequestBin>
    <ver:export>
+
            <Request>
      <RequestBin>
+
              <BookingId>179547</BookingId>
        <Request>
+
             </Request>
          <Export>
+
            <Source>
            <Items>
+
              <ClientId></ClientId>
              <!--Zero or more repetitions:-->
+
              <APIKey></APIKey>
              <Item Id="386621"/>
+
              <Language>ru</Language>
             </Items>
+
              <Currency>RUB</Currency>
          </Export>
+
            </Source>
        </Request>
+
        </RequestBin>
        <Source>
+
      </ver:confirm>
          <ClientId></ClientId>
+
  </soapenv:Body>
          <APIKey></APIKey>
+
</soapenv:Envelope>
          <Language>ru</Language>
+
</syntaxhighlight>
          <Currency>RUB</Currency>
+
 
        </Source>
+
Элемент '''Request'''
      </RequestBin>
+
{| style="width: 800px" class="wikitable"
    </ver:export>
+
|-
  </soapenv:Body>
+
! scope="col" width="200" | Элемент
</soapenv:Envelope>
+
! scope="col" width="300" | Описание
</pre>
+
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| BookingID
 +
| Обязательный. Идентификатор заказа в системе Nemo.
 +
| Целое число
 +
|}
  
В запросе нужно указать 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">
<pre>
+
 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"  
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport"  
+
<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">
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
  <SOAP-ENV:Body>
   <SOAP-ENV:Body>
+
      <ns1:confirmResponse>
     <ns1:exportResponse>
+
        <ResponseBin>
       <ResponseBin>
+
            <Response>
         <Response>
+
              <Books>
 +
                  <Book>
 +
                    <Id>179547</Id>
 +
                    <Status>booked</Status>
 +
                  </Book>
 +
              </Books>
 +
            </Response>
 +
        </ResponseBin>
 +
      </ns1:confirmResponse>
 +
  </SOAP-ENV:Body>
 +
</SOAP-ENV:Envelope>
 +
</syntaxhighlight>
 +
</div>
 +
</div>
 +
 
 +
==== Ошибки ====
 +
 
 +
== Выгрузка актуальных данных по заказу(ам) ==
 +
Используется для экспорта бронирований и для обновления данных в локальной клиентской базе.
 +
 
 +
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Export
 +
 
 +
<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%3DExport">
 +
   <soapenv:Header/>
 +
  <soapenv:Body>
 +
     <ver:export>
 +
       <RequestBin>
 +
         <Request>
 
           <Export>
 
           <Export>
 
             <Items>
 
             <Items>
               <Item Id="386621">
+
              <!--Zero or more repetitions:-->
                 <Hotel Id="1872666">
+
              <Item Id="386621"/>
                   <Supplier>GTA</Supplier>
+
            </Items>
                   <CityId>22046</CityId>
+
          </Export>
                   <DateBegin>2013-10-15</DateBegin>
+
        </Request>
                   <DateEnd>2013-10-18</DateEnd>
+
        <Source>
                   <CacheId>1872666</CacheId>
+
          <ClientId></ClientId>
                   <Name>ADLON KEMPINSKI</Name>
+
          <APIKey></APIKey>
                   <Categories>
+
          <Language>ru</Language>
                     <Category Id="1">
+
          <Currency>RUB</Currency>
                       <Rooms>
+
        </Source>
                         <Room Count="1" Id="1" ServiceId="1"/>
+
      </RequestBin>
                         <Room Count="1" Id="2" ServiceId="2"/>
+
    </ver:export>
                       </Rooms>
+
  </soapenv:Body>
                       <TotalPrice Currency="RUB">74733.84</TotalPrice>
+
</soapenv:Envelope>
                     </Category>
+
</syntaxhighlight>
                   </Categories>
+
 
                   <Services>
+
Элемент '''Item'''
                     <Service Id="1" Status="OK">
+
{| style="width: 800px" class="wikitable"
                       <Desc>Standard Twin</Desc>
+
|-
                       <Meal>Full Breakfast</Meal>
+
! scope="col" width="200" | Элемент
                       <Price Currency="RUB">37366.92</Price>
+
! scope="col" width="300" | Описание
                     </Service>
+
! scope="col" width="300" | Допустимые значения
                     <Service Id="2" Status="OK">
+
|-
                       <Desc>Standard Twin</Desc>
+
| Атрибут Id
                       <Meal>Full Breakfast</Meal>
+
| Обязательный. Идентификатор заказа в системе Nemo.
                       <Price Currency="RUB">37366.92</Price>
+
| Целое число
                     </Service>
+
|}
                   </Services>
+
 
                   <Rooms>
+
Элемент '''Source'''
                     <Room Id="1" Type="TWIN"/>
+
{| style="width: 800px" class="wikitable"
                     <Room Id="2" Type="SNGL"/>
+
|-
                   </Rooms>
+
! scope="col" width="200" | Элемент
                 </Hotel>
+
! scope="col" width="300" | Описание
                 <Type>HOTELS</Type>
+
! scope="col" width="300" | Допустимые значения
                 <Status>waiting</Status>
+
|-
                 <Prices>
+
| ClientID
                   <Price Currency="RUB">74733.84</Price>
+
| Обязательный. ID клиента в системе Nemo.
                   <Charges Currency="RUB">0</Charges>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                   <Commission Currency="RUB">0</Commission>
+
| Целое число.
                   <Penalty Currency="RUB">0</Penalty>
+
|-
                   <TotalPrice Currency="RUB">74733.84</TotalPrice>
+
| APIKey
                 </Prices>
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
                 <Dates>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                   <BookingDate>2013-08-01 20:21:47</BookingDate>
+
| Латинские буквы и цифры. Всего 32 символа.
                   <UpdateDate>2013-08-01 20:35:01</UpdateDate>
+
|}
                   <CancelDate xsi:nil="true"/>
+
</div>
                   <PenaltyDate>2013-07-31 19:10:37</PenaltyDate>
+
</div>
                   <AutoCancelDate>2013-08-01 20:23:47</AutoCancelDate>
+
 
                   <ConfirmationLimit/>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
                 </Dates>
+
==== Ответ ====
                 <Statuses>
+
<div class="mw-collapsible-content">
                   <PaymentStatus>1</PaymentStatus>
+
Ответ содержит элементы результатов бронирований. См. описание выше.
                   <DocumentStatus>1</DocumentStatus>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
                   <DeliveryStatus>1</DeliveryStatus>
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
                   <InvoiceStatus>1</InvoiceStatus>
+
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport"
                   <ProblemStatus>1</ProblemStatus>
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                 </Statuses>
+
  <SOAP-ENV:Body>
                 <Customer>
+
    <ns1:exportResponse>
                   <Person Number="1"/>
+
      <ResponseBin>
                 </Customer>
+
        <Response>
                 <Persons>
+
          <Export>
                   <Person Number="1"/>
+
            <Items>
                   <Person Number="2"/>
+
               <Item Id="386621">
                   <Person Number="3"/>
+
                 <Hotel Id="1872666">
                 </Persons>
+
                   <Supplier>GTA</Supplier>
               </Item>
+
                   <CityId>22046</CityId>
             </Items>
+
                   <DateBegin>2013-10-15</DateBegin>
             <Persons>
+
                   <DateEnd>2013-10-18</DateEnd>
               <Person Number="1">
+
                   <CacheId>1872666</CacheId>
                 <Lastname>IVANOV</Lastname>
+
                   <Name>ADLON KEMPINSKI</Name>
                 <Name>IVAN</Name>
+
                   <Categories>
                 <Middlename>IVANOVICH</Middlename>
+
                     <Category Id="1">
                <DateOfBirth xsi:nil="true"/>
+
                       <Rooms>
                <Phone>+79871231212</Phone>
+
                         <Room Count="1" Id="1" ServiceId="1"/>
                <Email>m.rudenko@mute-lab.com</Email>
+
                         <Room Count="1" Id="2" ServiceId="2"/>
                <Gender xsi:nil="true"/>
+
                       </Rooms>
                <Document Type="P">
+
                       <TotalPrice Currency="RUB">74733.84</TotalPrice>
                  <Series>1811</Series>
+
                     </Category>
                  <Number>912219</Number>
+
                   </Categories>
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
                   <Services>
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
                     <Service Id="1" Status="OK">
                </Document>
+
                       <Desc>Standard Twin</Desc>
              </Person>
+
                       <Meal>Full Breakfast</Meal>
              <Person Number="2">
+
                       <Price Currency="RUB">37366.92</Price>
                <Lastname>PETROV</Lastname>
+
                     </Service>
                <Name>IVAN</Name>
+
                     <Service Id="2" Status="OK">
                <Middlename>MIKHAILOVICH</Middlename>
+
                       <Desc>Standard Twin</Desc>
                <DateOfBirth xsi:nil="true"/>
+
                       <Meal>Full Breakfast</Meal>
                <Phone>+79871231212</Phone>
+
                       <Price Currency="RUB">37366.92</Price>
                <Email>m.rudenko@mute-lab.com</Email>
+
                     </Service>
                <Gender xsi:nil="true"/>
+
                   </Services>
                <Document Type="P">
+
                   <Rooms>
                  <Series>1866</Series>
+
                     <Room Id="1" Type="TWIN"/>
                  <Number>913319</Number>
+
                     <Room Id="2" Type="SNGL"/>
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
                   </Rooms>
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
                 </Hotel>
                </Document>
+
                 <Type>HOTELS</Type>
              </Person>
+
                 <Status>waiting</Status>
              <Person Number="3">
+
                 <Prices>
                <Lastname>SIDOROV</Lastname>
+
                   <Price Currency="RUB">74733.84</Price>
                <Name>IVAN</Name>
+
                   <Charges Currency="RUB">0</Charges>
                <Middlename>SERGEEVICH</Middlename>
+
                   <Commission Currency="RUB">0</Commission>
                 <DateOfBirth xsi:nil="true"/>
+
                   <Penalty Currency="RUB">0</Penalty>
                 <Phone>+79871231212</Phone>
+
                   <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>
 +
             <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>
 
                 <Email>m.rudenko@mute-lab.com</Email>
 
                 <Gender xsi:nil="true"/>
 
                 <Gender xsi:nil="true"/>
 
                 <Document Type="P">
 
                 <Document Type="P">
                   <Series>1866</Series>
+
                   <Series>1811</Series>
                   <Number>913319</Number>
+
                   <Number>912219</Number>
 
                   <IssueDate>2012-12-12 00:00:00</IssueDate>
 
                   <IssueDate>2012-12-12 00:00:00</IssueDate>
 
                   <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
 
                   <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
 
                 </Document>
 
                 </Document>
 
               </Person>
 
               </Person>
             </Persons>
+
              <Person Number="2">
           </Export>
+
                <Lastname>PETROV</Lastname>
         </Response>
+
                <Name>IVAN</Name>
       </ResponseBin>
+
                <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>
 
     </ns1:exportResponse>
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Формат ответа аналогичен результату бронирования.
 
Формат ответа аналогичен результату бронирования.
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Аннуляция заказа ===
+
== Аннуляция заказа ==
 +
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CancelBooking
 +
<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%3DCancelBooking">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCancelBooking">
Строка 1456: Строка 1687:
 
       <RequestBin>
 
       <RequestBin>
 
         <Request>
 
         <Request>
           <CancelBooking>
+
           <CancelBooking>          
             <Items>
+
             <Item Id="386621"/>
              <Item Id="386621"/>
 
            </Items>
 
 
           </CancelBooking>
 
           </CancelBooking>
 
         </Request>
 
         </Request>
Строка 1472: Строка 1701:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</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>
  
 
==== Ответ ====
 
==== Ответ ====
 
см. результаты бронирования.
 
см. результаты бронирования.
 
==== Ошибки ====
 
==== Ошибки ====
 +
* '''You can cancel only booked order''' - возникает при попытке аннулировать незабронированный заказ.
 +
* '''Invalid Booking Id N''' - заказ с номером N отсутствует.
  
== Статические данные ==
+
= Статические данные =
 
Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
 
Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
=== Страна ===
+
== Страна ==
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
 +
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
<pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  
+
<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">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
Строка 1503: Строка 1769:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Request'''
 
Элемент '''Request'''
Строка 1517: Строка 1783:
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''Source'''
<pre>
+
{| 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">
 +
<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/"  
 
<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:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic"  
Строка 1547: Строка 1835:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''CountryStatic'''
 
Элемент '''CountryStatic'''
Строка 1600: Строка 1888:
 
| Строка в произвольном формате.
 
| Строка в произвольном формате.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Город ===
+
== Город ==
 
Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:
 
Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:
  
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CityStatic
 
'''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">
 +
<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%3DCityStatic">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCityStatic">
Строка 1631: Строка 1923:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''CityStatic'''
 
Элемент '''CityStatic'''
Строка 1645: Строка 1937:
 
|}
 
|}
  
 +
Элемент '''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">
 +
<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/"  
 
<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">
 
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCityStatic">
Строка 1699: Строка 2013:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''CityStatic'''
 
Элемент '''CityStatic'''
Строка 1732: Строка 2046:
 
| См. описание элемента Data в ответе получения информации о стране.
 
| См. описание элемента Data в ответе получения информации о стране.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Статика по отелям и апартаментам ===
+
== Статика по отелям и апартаментам ==
 
Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.
 
Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.
  
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic
  
 +
<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%3DHotelStatic">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelStatic">
Строка 1763: Строка 2081:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Hotels'''
 
Элемент '''Hotels'''
Строка 1777: Строка 2095:
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''Source'''
<pre><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"  
+
{| style="width: 800px" class="wikitable"
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DHotelStatic"  
+
|-
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%3DHotelStatic"  
 +
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 
   <SOAP-ENV:Body>
 
   <SOAP-ENV:Body>
 
       <ns1:hotelsResponse>
 
       <ns1:hotelsResponse>
Строка 1855: Строка 2196:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Hotel'''
 
Элемент '''Hotel'''
Строка 1935: Строка 2276:
 
| Необязательный. Адрес отеля.
 
| Необязательный. Адрес отеля.
 
| Строка в произвольном формате.
 
| Строка в произвольном формате.
|}
+
|}
 
+
 
Элемент '''Phones'''
+
Элемент '''Phones'''
{| style="width: 800px" class="wikitable"
+
{| style="width: 800px" class="wikitable"
|-
+
|-
! scope="col" width="200" | Элемент
+
! scope="col" width="200" | Элемент
! scope="col" width="300" | Описание
+
! scope="col" width="300" | Описание
! scope="col" width="300" | Допустимые значения
+
! scope="col" width="300" | Допустимые значения
|-
+
|-
| Phone
+
| Phone
| Обязательный. Телефон.
+
| Обязательный. Телефон.
| Строка в произвольном формате.
+
| Строка в произвольном формате.
|}
+
|}
 
+
 
Элемент '''Image'''
+
Элемент '''Image'''
{| style="width: 800px" class="wikitable"
+
{| style="width: 800px" class="wikitable"
|-
+
|-
! scope="col" width="200" | Элемент
+
! scope="col" width="200" | Элемент
! scope="col" width="300" | Описание
+
! scope="col" width="300" | Описание
! scope="col" width="300" | Допустимые значения
+
! scope="col" width="300" | Допустимые значения
|-
+
|-
| Path
+
| Path
| Необязательный. Путь к полному изображению.
+
| Необязательный. Путь к полному изображению.
| Строка в произвольном формате.
+
| Строка в произвольном формате.
|-
+
|-
| Icon
+
| Icon
| Необязательный. Путь к миниатюре, иконке.
+
| Необязательный. Путь к миниатюре, иконке.
| Строка в произвольном формате.
+
| Строка в произвольном формате.
|}
+
|}
 +
</div>
 +
</div>
 +
 
 +
==== Ошибки ====
  
==== Ошибки ====
+
==См. также==
 +
* [[Агентский интерфейс прикладного программирования (Агентский API)]]
 +
* [[Схема использования агентского API (workflow)]]
 +
* [[Агентский API Авиабилеты]]
 +
* [[Агентский API Оплата]]

Текущая версия на 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

развернуть

Запрос

развернуть

Ответ

Ошибки

См. также