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

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

Материал из Центр поддержки системы бронировании
Перейти к навигации Перейти к поиску
(Запрос)
 
(не показаны 83 промежуточные версии 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">
 
==== Запрос ====
 
==== Запрос ====
<div lang="xml">
+
<div class="mw-collapsible-content">
 +
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
 
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  
 
<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:-->
Строка 61: Строка 67:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</div>
+
</syntaxhighlight>
  
 
Элемент '''HotelSearch'''
 
Элемент '''HotelSearch'''
Строка 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.
  
Строка 153: Строка 180:
  
 
Каждый отель содержит:
 
Каждый отель содержит:
#Набор номеров &lt;Rooms&gt;. Типы номеров (одноместный, двухместный и т.д.)&nbsp;: устанавливается автоматически по количеству клиентов из запроса.
+
* Набор номеров &lt;Rooms&gt;. Типы номеров (одноместный, двухместный и т.д.)&nbsp;: устанавливается автоматически по количеству клиентов из запроса.
#Сервисы &lt;Services&gt;. Каждый отель предлагает различные типы обслуживания в номерах. Цена и доступность может различаться.
+
* Сервисы &lt;Services&gt;. Каждый отель предлагает различные типы обслуживания в номерах. Цена и доступность может различаться.
#Категория &lt;Categories&gt;. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
+
* Категория &lt;Categories&gt;. Это допустимые комбинации номер + обслуживание. Для бронирования отеля пользователь должен выбрать одну из предлагаемых ему категорий.
  
<source lang="xml">  
+
<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>
Строка 207: Строка 234:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</source>
+
</syntaxhighlight>
  
 
Элемент '''Hotel'''
 
Элемент '''Hotel'''
Строка 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">
 
==== Запрос ====
 
==== Запрос ====
<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">
Строка 386: Строка 414:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Item'''
 
Элемент '''Item'''
Строка 404: Строка 432:
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''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%3DHotelExtInfo"  
+
|-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
! scope="col" width="200" | Элемент
   <SOAP-ENV:Body>
+
! scope="col" width="300" | Описание
     <ns1:extInfoResponse>
+
! 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%3DHotelExtInfo"  
 +
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 +
   <SOAP-ENV:Body>
 +
     <ns1:extInfoResponse>
 
       <ResponseBin>
 
       <ResponseBin>
 
         <Response>
 
         <Response>
Строка 436: Строка 487:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''HotelExtInfo'''
 
Элемент '''HotelExtInfo'''
Строка 499: Строка 550:
 
Атрибут Currency - код валюты.
 
Атрибут Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Штрафы за аннуляцию ===
+
== Штрафы за аннуляцию ==
 +
 
 
Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
 
Всегда в явном виде нужно указывать пользователю информацию о штрафах за аннуляцию до бронирования.
  
Строка 511: Строка 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/"  
+
<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">
 
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DPenalty">
 
   <soapenv:Header/>
 
   <soapenv:Header/>
Строка 537: Строка 594:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Item'''
 
Элемент '''Item'''
Строка 559: Строка 616:
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''Source'''
<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">
 
  <soap-env:body>
 
    <ns1:penaltyresponse>
 
      <responsebin>
 
        <response>
 
          <penalty>
 
            <itemdatebegin>2013-10-15 00:00:00</itemdatebegin>
 
            <cancelcharges>
 
              <charge>
 
                <datefrom>2013-10-12 00:00:00</datefrom>
 
                <dateto>2013-10-15 23:59:59</dateto>
 
                <money currency="RUB">74733.84</money>
 
              </charge>
 
              <charge>
 
                <datefrom>2013-09-23 00:00:00</datefrom>
 
                <dateto>2013-10-11 00:00:00</dateto>
 
                <money currency="RUB">67260.46</money>
 
              </charge>
 
              <charge>
 
                <datefrom>2013-08-01 17:59:00</datefrom>
 
                <dateto>2013-09-22 00:00:00</dateto>
 
                <money currency="RUB">12455.64</money>
 
              </charge>
 
            </cancelcharges>
 
            <modifycharges>
 
          </modifycharges></penalty><modifycharges>
 
        </modifycharges></response><modifycharges>
 
      </modifycharges></responsebin><modifycharges>
 
    </modifycharges></ns1:penaltyresponse><modifycharges>
 
  </modifycharges></soap-env:body><modifycharges>
 
</modifycharges></soap-env:envelope></pre>
 
 
 
Элемент '''Penalty'''
 
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 600: Строка 623:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| ItemDateBegin
+
| ClientID
| Обязательный. Дата начала услуги (дата заселения в отель).
+
| Обязательный. ID клиента в системе Nemo.
| Формат гггг-мм-дд чч:мм:сс
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
 +
| Целое число.
 
|-
 
|-
| CancelCharges
+
| APIKey
| Необязательный. Содержит информацию о штрафах за аннуляцию.
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
| Элемент Charge
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
 +
| Латинские буквы и цифры. Всего 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>
 +
    <ns1:penaltyResponse>
 +
      <ResponseBin>
 +
        <Response>
 +
          <Penalty>
 +
            <ItemDateBegin>2013-10-15 00:00:00</ItemDateBegin>
 +
            <CancelCharges>
 +
              <Charge>
 +
                <DateFrom>2013-10-12 00:00:00</DateFrom>
 +
                <DateTo>2013-10-15 23:59:59</DateTo>
 +
                <Money Currency="RUB">74733.84</Money>
 +
              </Charge>
 +
              <Charge>
 +
                <DateFrom>2013-09-23 00:00:00</DateFrom>
 +
                <DateTo>2013-10-11 00:00:00</DateTo>
 +
                <Money Currency="RUB">67260.46</Money>
 +
              </Charge>
 +
              <Charge>
 +
                <DateFrom>2013-08-01 17:59:00</DateFrom>
 +
                <DateTo>2013-09-22 00:00:00</DateTo>
 +
                <Money Currency="RUB">12455.64</Money>
 +
              </Charge>
 +
            </CancelCharges>
 +
            <ModifyCharges/>
 +
          </Penalty>
 +
        </Response>
 +
      </ResponseBin>
 +
    </ns1:penaltyResponse>
 +
  </SOAP-ENV:Body>
 +
</SOAP-ENV:Envelope>
 +
</syntaxhighlight>
 +
 
 +
Элемент '''Penalty'''
 +
{| style="width: 800px" class="wikitable"
 +
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| ItemDateBegin
 +
| Обязательный. Дата начала услуги (дата заселения в отель).
 +
| Формат гггг-мм-дд чч:мм:сс
 +
|-
 +
| CancelCharges
 +
| Необязательный. Содержит информацию о штрафах за аннуляцию.
 +
| Элемент Charge
 
|-
 
|-
 
| ModifyCharges
 
| ModifyCharges
Строка 635: Строка 715:
 
Атрибут: Currency - код валюты.
 
Атрибут: Currency - код валюты.
 
|}
 
|}
 +
</div>
 +
</div>
  
 
==== Ошибки ====
 
==== Ошибки ====
  
=== Бронирование ===
+
== Бронирование ==
 
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
 
==== Запрос ====
 
==== Запрос ====
 
+
<div class="mw-collapsible-content">
 
Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
 
Схема запроса позволяет указывать несколько услуг для бронирования сразу. Это было сделано с заделом на возможность расширения функциональности в будущем при сохранении совместимости.
  
Строка 653: Строка 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/>
Строка 780: Строка 863:
 
   </soapenv:Body>
 
   </soapenv:Body>
 
</soapenv:Envelope>
 
</soapenv:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Элемент '''Booking'''
 
Элемент '''Booking'''
Строка 958: Строка 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">
Строка 1092: Строка 1197:
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
 
Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
 
Структура ответа очень похожа на запрос. Выделяются те же основные элементы.
Строка 1266: Строка 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>
 
          <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" | Элемент
<pre>
+
! scope="col" width="300" | Описание
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"  
+
! scope="col" width="300" | Допустимые значения
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport"
+
|-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+
| BookingID
  <SOAP-ENV:Body>
+
| Обязательный. Идентификатор заказа в системе Nemo.
    <ns1:exportResponse>
+
| Целое число
      <ResponseBin>
+
|}
        <Response>
+
 
          <Export>
+
Элемент '''Source'''
            <Items>
+
{| style="width: 800px" class="wikitable"
              <Item Id="386621">
+
|-
                <Hotel Id="1872666">
+
! scope="col" width="200" | Элемент
                  <Supplier>GTA</Supplier>
+
! scope="col" width="300" | Описание
                  <CityId>22046</CityId>
+
! scope="col" width="300" | Допустимые значения
                  <DateBegin>2013-10-15</DateBegin>
+
|-
                  <DateEnd>2013-10-18</DateEnd>
+
| ClientID
                  <CacheId>1872666</CacheId>
+
| Обязательный. ID клиента в системе Nemo.
                  <Name>ADLON KEMPINSKI</Name>
+
Можно посмотреть/добавить в "Администрирование" "Веб-служба. Авторизация".
                  <Categories>
+
| Целое число.
                    <Category Id="1">
+
|-
                      <Rooms>
+
| APIKey
                        <Room Count="1" Id="1" ServiceId="1"/>
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
                        <Room Count="1" Id="2" ServiceId="2"/>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                      </Rooms>
+
| Латинские буквы и цифры. Всего 32 символа.
                      <TotalPrice Currency="RUB">74733.84</TotalPrice>
+
|}
                    </Category>
+
</div>
                  </Categories>
+
</div>
                  <Services>
+
 
                    <Service Id="1" Status="OK">
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
                      <Desc>Standard Twin</Desc>
+
==== Ответ ====
                      <Meal>Full Breakfast</Meal>
+
<div class="mw-collapsible-content">
                      <Price Currency="RUB">37366.92</Price>
+
 
                    </Service>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
                    <Service Id="2" Status="OK">
+
<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">
                      <Desc>Standard Twin</Desc>
+
  <SOAP-ENV:Body>
                      <Meal>Full Breakfast</Meal>
+
      <ns1:confirmResponse>
                      <Price Currency="RUB">37366.92</Price>
+
        <ResponseBin>
                    </Service>
+
            <Response>
                  </Services>
+
              <Books>
                  <Rooms>
+
                  <Book>
                    <Room Id="1" Type="TWIN"/>
+
                    <Id>179547</Id>
                    <Room Id="2" Type="SNGL"/>
+
                    <Status>booked</Status>
                  </Rooms>
+
                  </Book>
                </Hotel>
+
              </Books>
                <Type>HOTELS</Type>
+
            </Response>
                <Status>waiting</Status>
+
        </ResponseBin>
                <Prices>
+
      </ns1:confirmResponse>
                  <Price Currency="RUB">74733.84</Price>
+
  </SOAP-ENV:Body>
                  <Charges Currency="RUB">0</Charges>
+
</SOAP-ENV:Envelope>
                  <Commission Currency="RUB">0</Commission>
+
</syntaxhighlight>
                  <Penalty Currency="RUB">0</Penalty>
+
</div>
                  <TotalPrice Currency="RUB">74733.84</TotalPrice>
+
</div>
                </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>
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=Export
                  <ConfirmationLimit/>
+
 
                </Dates>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
                <Statuses>
+
==== Запрос ====
                  <PaymentStatus>1</PaymentStatus>
+
<div class="mw-collapsible-content">
                  <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>
+
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"  
                  <InvoiceStatus>1</InvoiceStatus>
+
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport">
                  <ProblemStatus>1</ProblemStatus>
+
  <soapenv:Header/>
                </Statuses>
+
  <soapenv:Body>
                <Customer>
+
    <ver:export>
                  <Person Number="1"/>
+
      <RequestBin>
                </Customer>
+
        <Request>
                <Persons>
+
          <Export>
                  <Person Number="1"/>
+
            <Items>
                  <Person Number="2"/>
+
              <!--Zero or more repetitions:-->
                  <Person Number="3"/>
+
              <Item Id="386621"/>
                </Persons>
+
            </Items>
              </Item>
+
          </Export>
            </Items>
+
        </Request>
            <Persons>
+
        <Source>
              <Person Number="1">
+
          <ClientId></ClientId>
                <Lastname>IVANOV</Lastname>
+
          <APIKey></APIKey>
                <Name>IVAN</Name>
+
          <Language>ru</Language>
                <Middlename>IVANOVICH</Middlename>
+
          <Currency>RUB</Currency>
                <DateOfBirth xsi:nil="true"/>
+
        </Source>
                <Phone>+79871231212</Phone>
+
      </RequestBin>
                <Email>m.rudenko@mute-lab.com</Email>
+
    </ver:export>
                <Gender xsi:nil="true"/>
+
  </soapenv:Body>
                <Document Type="P">
+
</soapenv:Envelope>
                  <Series>1811</Series>
+
</syntaxhighlight>
                  <Number>912219</Number>
+
 
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
Элемент '''Item'''
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
{| style="width: 800px" class="wikitable"
                </Document>
+
|-
              </Person>
+
! scope="col" width="200" | Элемент
              <Person Number="2">
+
! scope="col" width="300" | Описание
                <Lastname>PETROV</Lastname>
+
! scope="col" width="300" | Допустимые значения
                <Name>IVAN</Name>
+
|-
                <Middlename>MIKHAILOVICH</Middlename>
+
| Атрибут Id
                <DateOfBirth xsi:nil="true"/>
+
| Обязательный. Идентификатор заказа в системе Nemo.
                <Phone>+79871231212</Phone>
+
| Целое число
                <Email>m.rudenko@mute-lab.com</Email>
+
|}
                <Gender xsi:nil="true"/>
+
 
                <Document Type="P">
+
Элемент '''Source'''
                  <Series>1866</Series>
+
{| style="width: 800px" class="wikitable"
                  <Number>913319</Number>
+
|-
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
+
! scope="col" width="200" | Элемент
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
! scope="col" width="300" | Описание
                </Document>
+
! scope="col" width="300" | Допустимые значения
              </Person>
+
|-
              <Person Number="3">
+
| ClientID
                <Lastname>SIDOROV</Lastname>
+
| Обязательный. ID клиента в системе Nemo.
                <Name>IVAN</Name>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                <Middlename>SERGEEVICH</Middlename>
+
| Целое число.
                <DateOfBirth xsi:nil="true"/>
+
|-
                <Phone>+79871231212</Phone>
+
| APIKey
                <Email>m.rudenko@mute-lab.com</Email>
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
                <Gender xsi:nil="true"/>
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
                <Document Type="P">
+
| Латинские буквы и цифры. Всего 32 символа.
                  <Series>1866</Series>
+
|}
                   <Number>913319</Number>
+
</div>
                   <IssueDate>2012-12-12 00:00:00</IssueDate>
+
</div>
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
+
 
                </Document>
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
              </Person>
+
==== Ответ ====
            </Persons>
+
<div class="mw-collapsible-content">
          </Export>
+
Ответ содержит элементы результатов бронирований. См. описание выше.
        </Response>
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
      </ResponseBin>
+
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
    </ns1:exportResponse>
+
xmlns:ns1="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DExport"
  </SOAP-ENV:Body>
+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
</SOAP-ENV:Envelope>
+
  <SOAP-ENV:Body>
</pre>
+
    <ns1:exportResponse>
 
+
      <ResponseBin>
Формат ответа аналогичен результату бронирования.
+
        <Response>
 
+
          <Export>
==== Ошибки ====
+
            <Items>
 
+
              <Item Id="386621">
=== Аннуляция заказа ===
+
                <Hotel Id="1872666">
==== Запрос ====
+
                  <Supplier>GTA</Supplier>
<pre>
+
                  <CityId>22046</CityId>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+
                  <DateBegin>2013-10-15</DateBegin>
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCancelBooking">
+
                  <DateEnd>2013-10-18</DateEnd>
  <soapenv:Header/>
+
                  <CacheId>1872666</CacheId>
  <soapenv:Body>
+
                  <Name>ADLON KEMPINSKI</Name>
    <ver:cancel>
+
                  <Categories>
      <RequestBin>
+
                    <Category Id="1">
        <Request>
+
                      <Rooms>
          <CancelBooking>
+
                        <Room Count="1" Id="1" ServiceId="1"/>
            <Items>
+
                        <Room Count="1" Id="2" ServiceId="2"/>
              <Item Id="386621"/>
+
                      </Rooms>
            </Items>
+
                      <TotalPrice Currency="RUB">74733.84</TotalPrice>
          </CancelBooking>
+
                    </Category>
        </Request>
+
                   </Categories>
        <Source>
+
                   <Services>
          <ClientId></ClientId>
+
                    <Service Id="1" Status="OK">
          <APIKey></APIKey>
+
                      <Desc>Standard Twin</Desc>
          <Language>ru</Language>
+
                      <Meal>Full Breakfast</Meal>
          <Currency>RUB</Currency>
+
                      <Price Currency="RUB">37366.92</Price>
        </Source>
+
                    </Service>
      </RequestBin>
+
                    <Service Id="2" Status="OK">
    </ver:cancel>
+
                      <Desc>Standard Twin</Desc>
  </soapenv:Body>
+
                      <Meal>Full Breakfast</Meal>
</soapenv:Envelope>
+
                      <Price Currency="RUB">37366.92</Price>
</pre>
+
                    </Service>
 
+
                  </Services>
==== Ответ ====
+
                  <Rooms>
см. результаты бронирования.
+
                    <Room Id="1" Type="TWIN"/>
==== Ошибки ====
+
                    <Room Id="2" Type="SNGL"/>
 
+
                  </Rooms>
== Статические данные ==
+
                </Hotel>
Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
+
                <Type>HOTELS</Type>
=== Страна ===
+
                <Status>waiting</Status>
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
+
                <Prices>
==== Запрос ====
+
                  <Price Currency="RUB">74733.84</Price>
<pre><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
+
                  <Charges Currency="RUB">0</Charges>
xmlns:ver="http://tst.nemo-ibe.com/wsdev/?version%3D1.0%26for%3DCountryStatic">
+
                  <Commission Currency="RUB">0</Commission>
  <soapenv:Header/>
+
                  <Penalty Currency="RUB">0</Penalty>
  <soapenv:Body>
+
                  <TotalPrice Currency="RUB">74733.84</TotalPrice>
      <ver:countries>
+
                </Prices>
        <RequestBin>
+
                <Dates>
            <Request>
+
                  <BookingDate>2013-08-01 20:21:47</BookingDate>
              <CountryStatic>
+
                  <UpdateDate>2013-08-01 20:35:01</UpdateDate>
              </CountryStatic>
+
                  <CancelDate xsi:nil="true"/>
            </Request>
+
                  <PenaltyDate>2013-07-31 19:10:37</PenaltyDate>
            <Source>
+
                  <AutoCancelDate>2013-08-01 20:23:47</AutoCancelDate>
              <ClientId></ClientId>
+
                  <ConfirmationLimit/>
              <APIKey></APIKey>
+
                </Dates>
              <Language>ru</Language>
+
                <Statuses>
              <Currency>RUB</Currency>
+
                  <PaymentStatus>1</PaymentStatus>
            </Source>
+
                  <DocumentStatus>1</DocumentStatus>
        </RequestBin>
+
                  <DeliveryStatus>1</DeliveryStatus>
      </ver:countries>
+
                  <InvoiceStatus>1</InvoiceStatus>
  </soapenv:Body>
+
                  <ProblemStatus>1</ProblemStatus>
</soapenv:Envelope>
+
                </Statuses>
</pre>
+
                <Customer>
 
+
                  <Person Number="1"/>
Элемент '''Request'''
+
                </Customer>
{| style="width: 800px" class="wikitable"
+
                <Persons>
|-
+
                  <Person Number="1"/>
! scope="col" width="200" | Элемент
+
                  <Person Number="2"/>
! scope="col" width="300" | Описание
+
                  <Person Number="3"/>
! scope="col" width="300" | Допустимые значения
+
                </Persons>
|-
+
              </Item>
| CountryStatic
+
            </Items>
| Пустой элемент
+
            <Persons>
| <br/>
+
              <Person Number="1">
|}
+
                <Lastname>IVANOV</Lastname>
 +
                <Name>IVAN</Name>
 +
                <Middlename>IVANOVICH</Middlename>
 +
                <DateOfBirth xsi:nil="true"/>
 +
                <Phone>+79871231212</Phone>
 +
                <Email>m.rudenko@mute-lab.com</Email>
 +
                <Gender xsi:nil="true"/>
 +
                <Document Type="P">
 +
                  <Series>1811</Series>
 +
                  <Number>912219</Number>
 +
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
 +
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
 +
                </Document>
 +
              </Person>
 +
              <Person Number="2">
 +
                <Lastname>PETROV</Lastname>
 +
                <Name>IVAN</Name>
 +
                <Middlename>MIKHAILOVICH</Middlename>
 +
                <DateOfBirth xsi:nil="true"/>
 +
                <Phone>+79871231212</Phone>
 +
                <Email>m.rudenko@mute-lab.com</Email>
 +
                <Gender xsi:nil="true"/>
 +
                <Document Type="P">
 +
                  <Series>1866</Series>
 +
                  <Number>913319</Number>
 +
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
 +
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
 +
                </Document>
 +
              </Person>
 +
              <Person Number="3">
 +
                <Lastname>SIDOROV</Lastname>
 +
                <Name>IVAN</Name>
 +
                <Middlename>SERGEEVICH</Middlename>
 +
                <DateOfBirth xsi:nil="true"/>
 +
                <Phone>+79871231212</Phone>
 +
                <Email>m.rudenko@mute-lab.com</Email>
 +
                <Gender xsi:nil="true"/>
 +
                <Document Type="P">
 +
                  <Series>1866</Series>
 +
                  <Number>913319</Number>
 +
                  <IssueDate>2012-12-12 00:00:00</IssueDate>
 +
                  <ExpiryDate>2014-12-12 00:00:00</ExpiryDate>
 +
                </Document>
 +
              </Person>
 +
            </Persons>
 +
          </Export>
 +
        </Response>
 +
      </ResponseBin>
 +
    </ns1:exportResponse>
 +
  </SOAP-ENV:Body>
 +
</SOAP-ENV:Envelope>
 +
</syntaxhighlight>
  
==== Ответ ====
+
Формат ответа аналогичен результату бронирования.
<pre>
+
</div>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
+
</div>
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'''
+
==== Ошибки ====
 +
 
 +
== Аннуляция заказа ==
 +
'''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"
 
|-
 
|-
Строка 1553: Строка 1710:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Countries
+
| Атрибут Id
| Обязательный
+
| Обязательный. Идентификатор заказа в системе Nemo.
| Набор элементов Country
+
| Целое число
 
|}
 
|}
  
Элемент '''Country'''
+
Элемент '''Source'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1565: Строка 1722:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Атрибут Id
+
| ClientID
| Обязательный. Идентификатор страны (ISO).
+
| Обязательный. ID клиента в системе Nemo.
| Целое число
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
|-
+
| Целое число.
| Code
 
| Обязательный. Код страны ISO.
 
| Строка из 2-х латинских букв
 
 
|-
 
|-
| Continent
+
| APIKey
| Обязательный. Название континента.
+
| Обязательный. APIKey - секретный ключ доступа к API Nemo.
| Строка.
+
Можно посмотреть/добавить в "Администрирование" ⇨ "Веб-служба. Авторизация".
|-
+
| Латинские буквы и цифры. Всего 32 символа.
| Data
 
| Обязательный. Информация требующая перевода.
 
| Набор элементов Info.
 
 
|}
 
|}
 +
</div>
 +
</div>
 +
 +
==== Ответ ====
 +
см. результаты бронирования.
 +
==== Ошибки ====
 +
* '''You can cancel only booked order''' - возникает при попытке аннулировать незабронированный заказ.
 +
* '''Invalid Booking Id N''' - заказ с номером N отсутствует.
  
Элемент '''Info'''
+
= Статические данные =
{| style="width: 800px" class="wikitable"
+
Для работы с веб-сервисом Nemo необходимо выгрузить статичные данные. Это данные о странах, городах и отелях.
|-
+
== Страна ==
! scope="col" width="200" | Элемент
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CountryStatic
! scope="col" width="300" | Описание
+
<div class="toccolours mw-collapsible mw-collapsed" style="width:1000px">
! scope="col" width="300" | Допустимые значения
+
==== Запрос ====
|-
+
<div class="mw-collapsible-content">
| Атрибут Language
+
<syntaxhighlight lang="xml" line enclose="div" style="font-size:9pt;background: #F9F9F9; border: 1px dashed #2F6FAB; padding: 10px 5px; margin: 10px 0;">
| Обязательный. Язык в котором представлена информация.
 
| Строка из 2-х латинских букв.
 
|-
 
| Name
 
| Обязательный. Наименование страны.
 
| Строка в произвольном формате.
 
|}
 
 
 
==== Ошибки ====
 
 
 
=== Город ===
 
Параметры поиска всех услуг требуют указания ID города. Города выгружаются по каждой стране следующим запросом:
 
 
 
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=CityStatic
 
 
 
==== Запрос ====
 
<pre>
 
 
<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%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>
Строка 1625: Строка 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"
 
|-
 
|-
Строка 1637: Строка 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">
 +
<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%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>
 
                          </Info>
 
                          <Info Language="RU">
 
                              <Name>Anar Darah</Name>
 
                          </Info>
 
                        </Data>
 
                    </City>
 
...
 
                   </Cities>
 
               </CityStatic>
 
             </Response>
 
         </ResponseBin>
 
       </ns1:citiesResponse>
 
 
   </SOAP-ENV:Body>
 
   </SOAP-ENV:Body>
 
</SOAP-ENV:Envelope>
 
</SOAP-ENV:Envelope>
</pre>
+
</syntaxhighlight>
  
Элемент '''CityStatic'''
+
Элемент '''CountryStatic'''
 
{| style="width: 800px" class="wikitable"
 
{| style="width: 800px" class="wikitable"
 
|-
 
|-
Строка 1705: Строка 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"
 
|-
 
|-
Строка 1717: Строка 1856:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Атрибут '''Id'''
+
| Атрибут Id
| Обязательный. Идентификатор города.
+
| Обязательный. Идентификатор страны (ISO).
 
| Целое число
 
| Целое число
 
|-
 
|-
| Name
+
| Code
| Название города.
+
| Обязательный. Код страны ISO.
|  
+
| Строка из 2-х латинских букв
 +
|-
 +
| Continent
 +
| Обязательный. Название континента.
 +
| Строка.
 
|-
 
|-
 
| Data
 
| 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">
 +
<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%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>
Строка 1757: Строка 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"
 
|-
 
|-
Строка 1769: Строка 1932:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| CityId
+
| CountryId
| Обязательный. Идентификатор города из которого необходимо получить отели.
+
| Обязательный. Идентификатор страны.
 
| Целое число
 
| Целое число
 
|}
 
|}
  
==== Ответ ====
+
Элемент '''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" | Элемент
   <SOAP-ENV:Body>
+
! scope="col" width="300" | Описание
       <ns1:hotelsResponse>
+
! 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%3DCityStatic">
 +
   <SOAP-ENV:Body>
 +
       <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/>
 
                     </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>
 
                         <Data>
                           <Info>
+
                           <Info Language="EN">
                               <Name>W St.petersburg</Name>
+
                               <Name>Aibak</Name>
                              <Area xsi:nil="true"/>
+
                          </Info>
                              <Location>City centre</Location>
+
                          <Info Language="RU">
                               <Desc>This 5 star hotel is located in the city centre of St Petersburg
+
                               <Name>Aibak</Name>
                                    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"
 
|-
 
|-
Строка 1861: Строка 2022:
 
! scope="col" width="300" | Допустимые значения
 
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Атрибут Id
+
| Cities
| Обязательный. Идентификатор отеля в системе Nemo.
+
| Обязательный. Массив городов.  
| Целое число.
+
| Набор элементов City
|-
+
|}
| CityId
+
 
| Обязательный. Идентификатор города.
+
Элемент '''City'''
| Целое число.
+
{| style="width: 800px" class="wikitable"
 
|-
 
|-
| CountryId
+
! scope="col" width="200" | Элемент
| Обязательный. Идентификатор страны .
+
! scope="col" width="300" | Описание
| Целое число.
+
! scope="col" width="300" | Допустимые значения
 
|-
 
|-
| Latitude
+
| Атрибут '''Id'''
| Необязательный. Широта.
+
| Обязательный. Идентификатор города.
| Вещественное число.
+
| Целое число
 
|-
 
|-
| Longitude
+
| Name
| Необязательный. Долгота.
+
| Название города.
| Вещественное число.
+
|  
 
|-
 
|-
| Rating
+
| Data
| Необязательный. Рейтинг.
+
| Названия городов на разных языках. В данный момент поддерживаются названия на русском и английском.
| Вещественное число.
+
| См. описание элемента Data в ответе получения информации о стране.
|-
+
|}
| Floors
+
</div>
| Необязательный. Количество этажей
+
</div>
| Целое число.
+
 
|-
+
==== Ошибки ====
| Data
+
 
| Необязательный.
+
== Статика по отелям и апартаментам ==
| Набор элементов Info.
+
Этот запрос будет использоваться для выгрузки статичной информации по одному или нескольким отелям.
|-
 
| Phones
 
| Необязательный. Массив телефонов.
 
| Набор элементов Phone.
 
|-
 
| Fax
 
| Необязательный. Факс.
 
| Строка в произвольном формате.
 
|-
 
| Images
 
| Необязательный. Маcсив изображений.
 
| Набор элементов Image.
 
|}
 
  
Элемент '''Info'''
+
'''WSDL''' (тестовый сервер): http://tst.nemo-ibe.com/wsdev/wsdl.php?for=HotelStatic
{| style="width: 800px" class="wikitable"
+
 
|-
+
<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"
 +
|-
 
! scope="col" width="200" | Элемент
 
! scope="col" width="200" | Элемент
 
! scope="col" width="300" | Описание
 
! scope="col" width="300" | Описание
 
! 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 символа.
| Address
+
|}
| Необязательный. Адрес отеля.
+
</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
Элемент '''Phones'''
+
| Необязательный. Район города.
{| style="width: 800px" class="wikitable"
+
| Строка в произвольном формате.
|-
+
|-
! scope="col" width="200" | Элемент
+
| Desc
! scope="col" width="300" | Описание
+
| Необязательный. Описание отеля.
! scope="col" width="300" | Допустимые значения
+
| Строка в произвольном формате.
|-
+
|-
| Phone
+
| Address
| Обязательный. Телефон.
+
| Необязательный. Адрес отеля.
| Строка в произвольном формате.
+
| Строка в произвольном формате.
|}
+
|}
 
+
 
Элемент '''Image'''
+
Элемент '''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" | Допустимые значения
|-
+
|-
| Path
+
| Phone
| Необязательный. Путь к полному изображению.
+
| Обязательный. Телефон.
| Строка в произвольном формате.
+
| Строка в произвольном формате.
|-
+
|}
| Icon
+
 
| Необязательный. Путь к миниатюре, иконке.
+
Элемент '''Image'''
| Строка в произвольном формате.
+
{| style="width: 800px" class="wikitable"
|}
+
|-
 +
! scope="col" width="200" | Элемент
 +
! scope="col" width="300" | Описание
 +
! scope="col" width="300" | Допустимые значения
 +
|-
 +
| Path
 +
| Необязательный. Путь к полному изображению.
 +
| Строка в произвольном формате.
 +
|-
 +
| 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

развернуть

Запрос

развернуть

Ответ

Ошибки

См. также