Веб-сервисы для эффективного управления бизнесом!

Инструменты пользователя

Инструменты сайта


api_страхование

Это старая версия документа!


Описание выписки медицинских страховок HI API.

Как использовать API.

Все вызовы методов API — это GET или POST HTTP-запросы к URL https://192.168.93.240:8080/svd/handler/hi. с некоторым набором параметров.

Методы

Загрузка справочных данных

method=load.countries - Возвращает список стран, доступных для страхования на данный момент. Значение типа транзакции для запроса – dictionary_list.

Данные транзакции для запроса: отсутствуют.

XML формат запроса:

  <?xml version="1.0" encoding="UTF-8"?>
<request version="1.0">
<transaction type="dictionary_list" id="1254254" />
<datetime>2014-01-13T10:29:34.000+0300</datetime>
<xmlsign>c94f3d3e36bef3cd53a70266222eefa60d2a9df6</xmlsign>
</request>

Данные транзакции для ответа:

<country>описание страны
атрибут idидентификационный номер страны
атрибут nameназвание страны

XML формат ответа:

<?xml version="1.0" encoding="UTF-8"?>
<response>
<datetime>2014-01-15T17:08:56.932+0200</datetime>
<xmlsign>dd9b90ec7723113edd65e2150b58085a8fa63c90</xmlsign>
<transaction>
	<country id="45" name="Австралия"/>
	<country id="48" name="Австрия"/>
	<country id="46" name="Алжир"/>
	<country id="49" name="Аргентина"/>
	<country id="50" name="Багамские острова"/>
	<country id="51" name="Бангладеш"/>
	<country id="187" name="Великобританія"/>
	<country id="181" name="Німеччина"/>
	<country id="189" name="Таїланд"/>
	<country id="188" name="Турція"/>
	<country id="61" name="Украина"/>
	<country id="180" name="Франція"/>
	<country id="182" name="Ізраїль"/>
</transaction>
</response>

method=load.insurance_amounts - Возвращает список сумм страхования для конкретной страны с учетом валюты, доступных на данный момент. Значение типа транзакции для запроса – dictionary_list.

Данные транзакции для запроса: <country> - идентификационный номер страны, взятый из списка, полученного в методе load.countries.

XML формат запроса:

  <?xml version="1.0" encoding="UTF-8"?>
  <request version="1.0">
<transaction type="dictionary_list" id="1254254">
	<country>180</country>
</transaction>
<datetime>2014-01-13T10:29:34.000+0300</datetime>
<xmlsign>ee71ae2d3e94eb367b6b83d384e3562b828b9121</xmlsign>
  </request>

Данные транзакции для ответа: <amount> – описание суммы; атрибут id – идентификационный номер суммы; атрибут name – название суммы с учетом идентификатора валюты.

XML формат ответа:

  <?xml version="1.0" encoding="UTF-8"?>
      <response>
      <datetime>2014-01-15T17:15:15.668+0200</datetime>
      <xmlsign>431127915c5e02a0985bcbf776770276aca67704</xmlsign>
      <transaction>
      <amount id="71" name="30000 EUR"/>
      <amount id="72" name="50000 EUR"/>
      <amount id="183" name="100000 EUR"/>
      <amount id="73" name="1000000 EUR"/>
      </transaction>
      </response>
      

Вычисление страховки

  method=insurance.calculate - Вычисляет стоимость страховки исходя из заданных параметров. Значение типа транзакции для запроса – calculate.
Данные транзакции для запроса:
  <country> - идентификационный номер страны, взятый из списка, полученного в методе load.countries;
  <amount> - идентификационный номер суммы страхования, взятый из списка, полученного в методе load.insurance_amounts;
  <start-date> - дата выезда из Украины в формате yyyy-MM-dd'T'HH:mm:ss.SSSZ;
  <end-date> - дата прибытия в Украину в формате yyyy-MM-dd'T'HH:mm:ss.SSSZ;
  <purposes> - список занятий, которыми будут заниматься застрахованные лица. Формируется как побитовая маска (уточняем для конкретного документа).

XML формат запроса:

  <?xml version="1.0" encoding="UTF-8"?>
  <request version="1.0">
<datetime>2014-01-10T09:29:34.000+0200</datetime>
<xmlsign>926956b330d8ff8ba8b64663ea23ae72eb8894e0</xmlsign>
<transaction type="calculate" id="1254254">
	<country>180</country>
	<amount>72</amount>
	<start-date>2013-08-16T00:00:00.000+0300</start-date>
	<end-date>2013-08-28T00:00:00.000+0300</end-date>
	<purposes>0</purposes>
</transaction>

</request>

Данные транзакции для ответа:

<programs>список программ страхования
<program>описание программы страхования (внутри тэга лежит справочная информация)
атрибут valueзначение для формирования побитовой маски
атрибут nameназвание программы
атрибут tariffвычисленный тариф страхования
<age-limits>список возрастных ограничений
<age-limit>описание возрастного ограничения
атрибут fromначальное значение возраста
атрибут toконечное значение возраста
атрибут ratioкоэффициент для умножения тарифа страхования

XML формат ответа:

  <?xml version="1.0" encoding="UTF-8"?>
      <response>
      <datetime>2014-01-16T09:18:36.977+0200</datetime>
      <xmlsign>f1cc2ddcf10d0fbf572418c61ee01cc2f170a4a8</xmlsign>
      <transaction>
      <programs>
      <program value="0" name="Программа страхования A" tariff="23.04">Описание программы страхования A</program>
      <program value="1" name="Программа страхования B" tariff="25.2">Описание программы страхования B</program>
      <program value="2" name="Программа страхования C" tariff="28.8">Описание программы страхования C</program>
      </programs>
      <age-limits>
      <age-limit from="55" to="59" ratio="3.0"/>
      <age-limit from="66" to="75" ratio="10.0"/>
      <age-limit from="60" to="65" ratio="5.0"/>
      <age-limit from="0" to="54" ratio="1.0"/>
      </age-limits>
      </transaction>
      </response>

Запись страховки method=insurance.save – Записывает документ страховки в базу. Значение типа транзакции для запроса – save.

Данные транзакции для запроса:

  <country> - идентификационный номер страны, взятый из списка, полученного в методе load.countries;
  <amount> - идентификационный номер суммы страхования, взятый из списка, полученного в методе                 load.insurance_amounts;   
  <start-date> - дата выезда из Украины в формате yyyy-MM-dd'T'HH:mm:ss.SSSZ;
  <end-date> - дата прибытия в Украину в формате yyyy-MM-dd'T'HH:mm:ss.SSSZ;
  <purposes> - список занятий, которыми будут заниматься застрахованные лица. Формируется как побитовая маска     (уточняем для конкретного документа).
  <program> – идентификационный номер программы страхования, взятый из списка, полученного в методе insurance.calculate;
  <price> – общая стоимость страховки, полученная путем сложения стоимостей для всех участников страхования.     Стоимость страховки для одного участника вычисляется по формуле: price = tariff * ratio * day_count;
  <insurer> – описание страхователя;
  <last-name> – фамилия;
  <first-name> – имя;
  <middle-name> – отчество;
  <birthday> – день рождения;
  <phone> – телефон;
  <e-mail> – адрес электронной почты;
  <zip-code> – индекс адреса проживания;
  <address> – адрес проживания;
  <insured> – список застрахованных людей;
  <human> – описание застрахованного человека (содержание тэга подобно тэгу <insurer>).

XML формат запроса:

  <?xml version="1.0" encoding="UTF-8"?>
  <request version="1.0">
<datetime>2014-01-10T09:29:34.000+0200</datetime>
<xmlsign>dc3ef71428bd0331592cff0bea3421fb433ec4c5</xmlsign>
<transaction type="save" id="1254254">
	<country>180</country>
	<amount>72</amount>
	<startDate>2013-08-16T00:00:00.000+0300</startDate>
	<endDate>2013-08-28T00:00:00.000+0300</endDate>
	<purposes>0</purposes>
	<program>1</program>
	<price>604.8</price>
	<insurer>
		<last-name>Титарчук</last-name>
		<first-name>Сергей</first-name>
		<middle-name>Владимирович</middle-name>
		<birthday>1975-08-03T00:00:00.000+0300</birthday>
		<phone>+11111111111</phone>
		<e-mail>s.titarchuk@a-express.com.ua</e-mail>
		<zip-code>01170</zip-code>
		<address>Украина, г. Киев, ул. Жмеринская 10, кв. 187</address>
	</insurer>
	<insured>
		<human>
			<last-name>Титарчук</last-name>
			<first-name>Сергей</first-name>
			<middle-name>Владимирович</middle-name>
			<birthday>1975-08-03T00:00:00.000+0300</birthday>
			<phone>+11111111111</phone>
			<e-mail>s.titarchuk@a-express.com.ua</e-mail>
			<zip-code>01170</zip-code>
			<address>Украина, г. Киев, ул. Жмеринская 10, кв. 187</address>
		</human>
		<human>
			<last-name>Бутов</last-name>
			<first-name>Андрей</first-name>
			<middle-name>Владимирович</middle-name>
			<birthday>1974-11-28T00:00:00.000+0300</birthday>
			<phone>+111111111111</phone>
			<e-mail>butov@mail.ru</e-mail>
			<zip-code>10172</zip-code>
			<address>Україна, м. Київ, вул.</address>
		</human>
	</insured>	
</transaction>

</request>

Данные транзакции для ответа: <insurance> – идентификационный номер документа; <price> – общая стоимость страховки; <program> – идентификационный номер программы страхования, взятый из списка, полученного в методе insurance.calculate.

XML формат ответа:

  <?xml version="1.0" encoding="UTF-8"?>
  <response>
<datetime>2014-01-10T09:29:34.000+0200</datetime>
<xmlsign>04e0680df8efb00acbb06d3e918847af15be3ead</xmlsign>
<transaction>
	<insurance>379</insurance>
	<program>1</program>
	<price>604.8</price>
</transaction>

</response> Подпись страховки method=insurance.sign – Подписывает документ страховки в базе. Значение типа транзакции для запроса – sign.

Данные транзакции для запроса: <insurance> – идентификационный номер документа; <price> – общая стоимость страховки; <program> – идентификационный номер программы страхования, взятый из списка, полученного в методе insurance.calculate.

XML формат запроса:

  <?xml version="1.0" encoding="UTF-8"?>
  <request version="1.0">
<datetime>2014-01-10T09:29:34.000+0200</datetime>
<xmlsign>04e0680df8efb00acbb06d3e918847af15be3ead</xmlsign>
<transaction type="sign" id="1254254">
	<insurance>379</insurance>
	<program>1</program>
	<price>604.8</price>
</transaction>

</request>

Данные транзакции для ответа: <insurer> – описание подписанта; <timestamp> – дата и время подписания в формате yyyy-MM-dd'T'HH:mm:ss.SSSZ; внутри тэга лежит цифровая подпись документа в системе.

XML формат ответа:

  <?xml version="1.0" encoding="UTF-8"?>
  <response>
<datetime>2014-01-16T10:21:02.975+0200</datetime>
<xmlsign>93ec46f3050ee67b1abc753cb5a8bb0cf4b11f68</xmlsign>
<transaction id="10039" document="379">
	<signer id="88" name="KAG admin"/>
	<timestamp>2014-01-16T10:21:02.968+0200</timestamp>
	MCwCFG+HiLJGx1cFU9Q0GWgHcdd5xQgwAhQ9EstdGpS8sNa5spj85ZdQXVVy9w==
</transaction>
  </response>

Печать PDF-файлов

  method=document.preview_form – Печатает и возвращает pdf-поток для определенной формы.
  Дополнительные параметры запроса: 
  <form> - идентификационный номер формы.
  Данные транзакции для запроса: транзакция отсутствует.
  Данные транзакции для ответа: транзакция отсутствует.
  method= document.preview – Печатает и возвращает pdf-поток для определенного документа.
  Дополнительные параметры запроса: 
  <document> - идентификационный номер документа.
  Данные транзакции для запроса: транзакция отсутствует.
  Данные транзакции для ответа: транзакция отсутствует.
  method= document.print – Печатает и возвращает pdf-файл для определенного документа.
  Дополнительные параметры запроса: 
  <document> - идентификационный номер документа.
  Данные транзакции для запроса: транзакция отсутствует.
  Данные транзакции для ответа: транзакция отсутствует.
api_страхование.1562136450.txt.gz · Последние изменения: 2019/07/03 06:47 — ilya