Документация UFS API

Введение

UFS API позволяет выполнять определенний набор операций, которые вы делаете с нашим веб-клиентом.

UFS API построен с использованием принципов REST и правил HTTP, что дает возможность для взаимодействия широкому спектру HTTP клиентов.

Начало работы

API Root Endpoint (LIVE)

http://ukrfinservice.net/api/method/{METHOD}
                

API Root Endpoint (TEST)

http://dev.ukrfinservice.net/api/method/{METHOD}
                

Пример обращения к API Root Endpoint

$ curl http://dev.ukrfinservice.net/api/method/{METHOD} \
    -H 'Authorization: Bearer {ACCESS_TOKEN}'
                

Для получения ответа с результатом нужно отправить запрос к API Root Endpoint. REST запросы представляют собой обычные HTTP-запросы методом GET или POST.

Метод Описание
GET Параметры передаются в URL.
POST Параметры передаются в теле запроса.

Все запросы к UFS API требуют один обязательный заголовок:
Authorization — Заголовок запроса аутентификации.

Ответ на запрос к UFS API имеет формат JSON структуры данних.

Аутентификация

URL авторизации (LIVE)

http://ukrfinservice.net/oauth/v2/token
                

URL авторизации (TEST)

http://dev.ukrfinservice.net/oauth/v2/token
                

Пример получения маркера доступа access_token

$ curl http://dev.ukrfinservice.net/oauth/v2/token \
    -d 'client_id={CLIENT_ID}' \ 
    -d 'client_secret={CLIENT_SECRET}' \ 
    -d 'grant_type=client_credentials'
                

Процедура проверки подлинности запроса происходит путем сравнения маркера доступа access_token. Маркер доступа access_token можно получить обратившись к URL авторизации с определенным набором параметром.

Параметр Описание
client_id Идентификатор клиента — уникальная строка, представляющая информацию о клиенте.
client_secret Секретый ключ клиента.
grant_type Тип предоставления полномочий клиенту. В UFS API используется значение client_credentials

CLIENT_ID и CLIENT_SECRET

Пару ключей можно получить в главном профиле агента. Для этого, после авторизации перейдите на вкладку «Инструменты». За тем нажмите на кнопку «Добавить».

Ключи доступа

На странице добавления «Инструмента» выберите необходимые продукты и нажмите на кнопку «Добавить».

Ключи доступа

Созданный «Инструмент» будет содержать необходимые ключи client_id и client_secret.

Ключи доступа

Ответ

Структура ответа


{
    "error": {
        "code": 400,
        "message": "API: Parameters form is not valid!"
    }
}

                

В ответ на запрос, UFS API веб-сервис возвращает JSON структуру данных, содержащий результат выполнения вызываемого метода.

Для REST-запросов, эти данные возвращаются в теле HTTP ответа. Ответ может быть обработан, используя непосредственно один из доступных JSON-парсеров, в зависимости от языка программирования.

У каждого из методов собственная структура возвращаемый данных, ниже описана работа с методами. В случае ошибки UFS API возвращает код и сообщение об ошибке.

Продукт Travel Abroad

В данном разделе описано методы для работы с продуктом Travel Abroad системы.

Информация

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.info \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=travel_abroad'

Пример ответа


{
   "product_alias":"travel_abroad",
   "product_name":"За рубеж",
   "companies":{
      "3":{
         "company_id":3,
         "company_name":"ЧАО СК \"Граве Украина\""
      },
      "..."
   },
   "countries":{
      "AU":{
         "id":"AU",
         "name":"Австралия",
         "sum_insureds":{
            "4":{
               "sum_insured":"50000.00",
               "currency":"USD"
            },
            "9":{
               "sum_insured":"75000.00",
               "currency":"USD"
            }
         }
      },
      "..."
   },
   "programs":{
      "5":{
         "id":5,
         "code":"STANDART",
         "terms":{
            "1":{
               "code":"a",
               "description":"Неотложная медицинская помощь"
            },
            "2":{
               "code":"b",
               "description":"Неотложное стационарное лечение"
            },
            "..."
         }
      },
      "..."
   },
   "periods":{
      "1":{
         "id":1,
         "min":1,
         "max":2,
         "unit":"day"
      },
      "2":{
         "id":2,
         "min":3,
         "max":7,
         "unit":"day"
      },
      "..."
   },
   "sport_classes":{
      "1":{
         "id":1,
         "code":"A",
         "description":"легкая атлетика, крокет, гольф, гимнастика, плавание (кроме подводного плавания), сквош, теннис, стрельба"
      },
      "..."
   },
   "coefficients":{
      "is_work":{
         "alias":"is_work",
         "name":"Работа по найму",
         "description":null,
         "rate":"1.75"
      }
   }
}


Получение информации по продукту.

Ниже представлен список параметров необходимых для получения ответа.

Параметры запроса

Параметр Описание Обязательный/опциональный
method Название метода. Для получения информации по продукту — product.info Обязательный
product_alias Алиас продукта. Для Продукта Travel Abroad — travel_abroad Обязательный

Стоимость

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.calculate \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=travel_abroad' \
    -d 'method=product.calculate' \
    -d 'is_work=1' \
    -d 'country_code=AT' \
    -d 'is_sport=1' \
    -d 'sport_class_id=1' \
    -d 'number_of_insured=2' \
    -d 'sum_insured=30000' \
    -d 'sum_insured_currency=EUR' \
    -d 'travel_period_from=2015-03-30' \
    -d 'travel_period_till=2015-04-06' \
    -d 'insured_1_birthday=1987-06-22' \
    -d 'insured_2_birthday=1991-02-28' \
    

Пример ответа


{
    "companies": {
        "3": {
            "programs": {
                "5": {
                    "insuredSum": "30000.00 EUR",
                    "rate": 0.0729,
                    "cost": 657.293,
                    "insureds": {
                        "1": {
                            "birthday": "1997-03-30",
                            "cost": 657.293
                        }
                    },
                    "currency": "UAH"
                },
                "...": {}
            }
        },
        "...": {}
    }
}


Рассчет стоимости договора.

Ниже представлен список параметров необходимых для получения ответа.

Параметры запроса

Параметр Описание Обяз.
product_alias Алиас продукта. Для Продукта Travel Abroad — travel_abroad Да
method Название метода. Для рассчета стоимости договора — product.calculate Да
country_code Код страны Да
number_of_insured Количество застрахованных Да
sum_insured Страховая сумма Да
sum_insured_currency Валюта страхования Да
type single/annual — Типы страхования для разовой поездки и годовой программы. Да
travel_period_from Даты отъезда Обязательный, если type=single
travel_period_till Даты приезда Обязательный, если type=single
valid_from Дата начала действия договора Обязательный, если type=annual
travel_period_days_number Количество дней пребывания за рубежом Обязательный, если type=annual
insured_1_birthday День рождения застрахованного #1 Да
insured_2_birthday День рождения застрахованного #2 Нет
insured_3_birthday День рождения застрахованного #3 Нет
insured_4_birthday День рождения застрахованного #4 Нет
insured_5_birthday День рождения застрахованного #5 Нет
is_work Работа по найму
is_sport Занятие спортом
sport_class_id id вида спорта
company_id Росчет стоимости по выбраной компании Нет
program_id Росчет стоимости по выбранной программе Нет

Оформление

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.issue \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=travel_abroad' \
    -d 'is_work=1' \
    -d 'country_code=AT' \
    -d 'is_sport=1' \
    -d 'sport_class_id=2' \
    -d 'number_of_insured=1' \
    -d 'sum_insured=30000.00' \
    -d 'sum_insured_currency=EUR' \
    -d 'travel_period_from=2015-03-31' \
    -d 'travel_period_till=2015-04-07' \
    -d 'insured_1_birthday=1997-03-31' \
    -d 'insured_2_birthday=1997-03-31' \
    -d 'insured_3_birthday=1997-03-31' \
    -d 'insured_4_birthday=1997-03-31' \
    -d 'insured_5_birthday=1997-03-31' \
    -d 'company_id=3' \
    -d 'program_id=6' \
    -d 'insured_1_name_lat=Gorbush' \
    -d 'insured_1_last_name_lat=Leontev' \
    -d 'insured_1_series=NE' \
    -d 'insured_1_number=123456' \
    -d 'insured_1_inn=1234567899' \
    -d 'insured_1_phone_number=%2B38+%28999%29+999-99-99' \
    -d 'insured_1_email_address=hab%40gma.com' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bcountry%5D=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bstate%5D=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bprovince%5D=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bcity%5D=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bstreet%5D=%D0%B1%D1%83%D0%BB.+%D0%9B%D0%B5%D1%81%D1%96+%D0%A3%D0%BA%D1%80%D0%B0%D1%97%D0%BD%D0%BA%D0%B8' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bstreet_number%5D=34' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bapartment_number%5D=72' \
    -d 'insured_1_address%5Baddress_registration%5D%5Bpostal_code%5D=01133' \
    -d 'insured_1_address%5Bis_address_equal%5D=1' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bcountry%5D=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bstate%5D=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bprovince%5D=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bcity%5D=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bstreet%5D=%D0%B2%D1%83%D0%BB.+%D0%A7%D0%B5%D1%80%D0%B2%D0%BE%D0%BD%D0%BE%D1%82%D0%BA%D0%B0%D1%86%D1%8C%D0%BA%D0%B0' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bstreet_number%5D=22%D0%90' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bapartment_number%5D=72' \
    -d 'insured_1_address%5Baddress_permanent%5D%5Bpostal_code%5D=20300' \
    -d 'insured_1_is_insurer=1' \
    -d 'insurer_address%5Baddress_registration%5D%5Bcountry%5D=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'insurer_address%5Baddress_registration%5D%5Bstate%5D=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'insurer_address%5Baddress_registration%5D%5Bprovince%5D=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'insurer_address%5Baddress_registration%5D%5Bcity%5D=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'insurer_address%5Baddress_registration%5D%5Bstreet%5D=%D0%B1%D1%83%D0%BB.+%D0%9B%D0%B5%D1%81%D1%96+%D0%A3%D0%BA%D1%80%D0%B0%D1%97%D0%BD%D0%BA%D0%B8' \
    -d 'insurer_address%5Baddress_registration%5D%5Bstreet_number%5D=34' \
    -d 'insurer_address%5Baddress_registration%5D%5Bpostal_code%5D=01133' \
    -d 'insurer_address%5Bis_address_equal%5D=0' \
    -d 'insurer_birthday=1997-03-31' \
    -d 'agreement_signcode1=W539' \
    

Пример ответа


{
    "agreement_id":         245,
    "agreement_number":     "89000026",
    "valid_from":           "2015-04-02 00:00:00",
    "valid_till":           "2015-05-02 23:59:59",
    "cost":                 657.293,
    "currency":             "UAH",
    "company_alias":        "grawe"
    "agreement_signcode1":  "W539"
}


Оформление договора.

Ниже представлен список параметров необходимых для получения ответа.

* поля: inn, phone_number, email, address являються обязательными только для лица которое выступает страхователем,

Поля insured_* - обязательные в зависимости от количества застрахованных

Параметры запроса

Параметр Описание Обяз.
product_alias Псевдоним продукта Да
is_work Работа по найму Нет
country_code Код страны Да
is_sport Занятие спортом Нет
sport_class_id Идентификатор вида спорта Нет
number_of_insured Количество застрахованных Да
sum_insured Страховая сумма Да
sum_insured_currency Валюта страховой суммы Да
travel_period_from Дата отезда Да
travel_period_till Дата приезда Да
insured_1_birthday Дата рождения застрахованного #1 Да
insured_2_birthday Дата рождения застрахованного #2 Нет
insured_3_birthday Дата рождения застрахованного #3 Нет
insured_4_birthday Дата рождения застрахованного #4 Нет
insured_5_birthday Дата рождения застрахованного #5 Нет
company_id Идентификатор страховой компании Да
program_id Идентификатор страховой программы Да
insured_1_name_lat Имя застрахованного #1 (Загран. паспорт) Да
insured_1_last_name_lat Фамилия застрахованного #1 (Загран. паспорт) Да
insured_1_series Серия загран. паспорта застрахованного #1 Да
insured_1_number Номер загран. паспорта застрахованного #1 Да
insured_1_inn ИНН застрахованного #1 Нет
insured_1_phone_number Номер телефона застрахованного #1 Нет
insured_1_email_address Почта застрахованного #1 Нет
insured_1_address Адрес Застрахованного #1. Структура типа IndividualAddress Нет
insured_1_is_insurer Являеться ли застрахованный #1 страхователем Нет
... до 5 застрахованных Нет
insurer_address Адрес Страхователя. Структура типа IndividualAddress Нет
insurer_birthday День рождения страхователя Нет
agreement_signcode1 Четырёхзначная подпись договора Нет

Продукт Green Card

В данном разделе описано методы для работы с продуктом Green Card системы.

Информация

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.info \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=green_card'

Пример ответа


{
   "territories":{
      "1":{
         "id":1,
         "name":"Вся Европа"
      },
      "..."
   },
   "vehicles":{
      "1":{
         "id":1,
         "name":"Легковые автомобили"
      },
      "..."
   },
   "periods":{
      "1":{
         "id":1,
         "duration":15,
         "unit":"day"
      },
      "..."
   },
   "companies":{
      "1":{
         "company_id":1,
         "company_name":"УАСК \"АСКА\" ЗАО"
      },
      "..."
   }
}


Получение информации по продукту.

Ниже представлен список параметров необходимых для получения ответа.

Параметры запроса

Параметр Описание Обязательный/опциональный
method Название метода. Для получения информации по продукту — product.info Обязательный
product_alias Алиас продукта. Для Продукта Green Card — green_card Обязательный

Стоимость

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.calculate \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=green_card' \
    -d 'vehicle_id=1' \
    -d 'territory_id=2' \
    -d 'period_id=1' \

Пример ответа


{
   "companies":{
      "1":{
         "cost":1029,
         "currency":"UAH"
      },
      "..."
   }
}


Рассчет стоимости договора.

Ниже представлен список параметров необходимых для получения ответа.

Параметры запроса

Параметр Описание Обяз.
product_alias Псевдоним продукта (green_card) Да
vehicle_id Идентификатор типа ТС Да
territory_id Идентификатор территории Да
period_id Идентификатор периода Да
company_id Расчет стоимости от выбраной компании Нет

Оформление

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.issue \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'date_from=2015-04-06' \
    -d 'product_alias=green_card' \
    -d 'vehicle_id=2' \
    -d 'territory_id=1' \
    -d 'period_id=13' \
    -d 'company_id=1' \
    -d 'name_lat=Alex' \
    -d 'last_name_lat=Leontev' \
    -d 'email_address=habrabra%40gma.com' \
    -d 'phone_number=%2B38+%28999%29+999-99-99' \
    -d 'inn=1234567899' \
    -d 'individual_address[address_registration][country]=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'individual_address[address_registration][state]=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'individual_address[address_registration][province]=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_registration][city]=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_registration][street]=%D0%B1%D1%83%D0%BB.+%D0%9B%D0%B5%D1%81%D1%96+%D0%A3%D0%BA%D1%80%D0%B0%D1%97%D0%BD%D0%BA%D0%B8' \
    -d 'individual_address[address_registration][street_number]=34' \
    -d 'individual_address[address_registration][apartment_number]=45' \
    -d 'individual_address[address_registration][postal_code]=01133' \
    -d 'individual_address[is_address_equal]=0' \
    -d 'individual_address[address_permanent][country]=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'individual_address[address_permanent][state]=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'individual_address[address_permanent][province]=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_permanent][city]=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_permanent][street]=%D0%B2%D1%83%D0%BB.+%D0%A7%D0%B5%D1%80%D0%B2%D0%BE%D0%BD%D0%BE%D1%82%D0%BA%D0%B0%D1%86%D1%8C%D0%BA%D0%B0' \
    -d 'individual_address[address_permanent][street_number]=22%D0%B0' \
    -d 'individual_address[address_permanent][apartment_number]=72' \
    -d 'individual_address[address_permanent][postal_code]=24176' \
    -d 'vehicle[brand_name]=Acura' \
    -d 'vehicle[model_name]=MDX' \
    -d 'vehicle[state_number]=AK1234AB' \
    

Пример ответа


{
    "agreement_id":     242,
    "agreement_number": "AE / 97190026",
    "valid_from":       "2015-04-02 00:00:00",
    "valid_till":       "2015-04-16 23:59:59",
    "cost":             471,
    "company_alias":    "aska"
}


Оформление договора.

Ниже представлен список параметров необходимых для получения ответа.

Параметры запроса

Параметр Описание Обязательный/опциональный
date_from Дата начала действия договора Да
product_alias Псевдоним продукта (green_card) Да
vehicle_id Идентификатор типа ТС Да
territory_id Идентификатор территории Да
period_id Идентификатор периода Да
company_id Идентификатор компании Да
name_lat Имя латинськими буквами Да
last_name_lat Фамилия латинськими буквами Да
email_address Електронная почта Да
phone_number Номер телефона Да
inn ИНН Да
individual_address Адрес Страхователя. Структура типа IndividualAddress Да
vehicle[brand_name] Бренд ТС Да
vehicle[model_name] Модель ТС Да
vehicle[state_number] Гос. номер ТС Да

Продукт Mtpl

В данном разделе описано методы для работы с продуктом Mtpl системы.

Информация

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.info \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=mtpl'

Пример ответа


{
    "product_alias": "mtpl",
    "product_name": "ОСАГО",
    "companies": {
        "1": {
            "company_id": 1,
            "company_name": "УАСК \"АСКА\" ЗАО"
        },
        "...": {}
    },
    "parameters": {
        "vehicle": {
            "1": {
                "id": 1,
                "type": "car",
                "code": "B1",
                "name": "до 1600 куб. см включительно"
            },
            "...": {}
        },
        "driving_experience": {
            "16": {
                "id": 16,
                "name": "до 3-х лет включительно"
            },
            "...": {}
        },
        "personality": {
            "1": {
                "id": 1,
                "name": "Физическое лицо"
            },
            "...": {}
        },
        "vehicle_use_period": {
            "16": {
                "id": 16,
                "duration": 15,
                "unit": "day"
            },
            "...": {}
        },
        "vehicle_use_area": {
            "1": {
                "id": 1,
                "name": "Не такси"
            },
            "...": {}
        },
        "vehicle_registration_place": {
            "1": {
                "id": 1,
                "name": "Киев"
            },
            "...": {}
        },
        "period": {
            "16": {
                "id": 16,
                "duration": 15,
                "unit": "day"
            },
            "...": {}
        },
        "cheat": {
            "1": {
                "id": 1,
                "name": "Наличие"
            },
            "...": {}
        },
        "vehicle_manufacture_year": {
            "1": {
                "id": 1,
                "year": 2015
            },
            "...": {}
        },
        "bonus_malus": {
            "1": {
                "id": 1,
                "discount": "1 год"
            },
            "...": {}
        },
        "franchise": {
            "1": {
                "id": 1,
                "sum": 0
            },
            "...": {}
        },
        "identification_by": {
            "passport": "Паспорт",
            "...": ""
        }
    }
}


Получение информации по продукту.

Ниже представлен список параметров необходимых для получения ответа.

product.info Параметры запроса

Параметр Описание Обязательный/опциональный
product_alias Алиас продукта. Для Продукта Mtpl — mtpl Обязательный

Стоимость

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.calculate \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'vehicle_registration_city_id=15582' \
    -d 'vehicle=1' \
    -d 'driving_experience=16' \
    -d 'personality=1' \
    -d 'vehicle_use_area=1' \
    -d 'vehicle_use_period=28' \
    -d 'vehicle_registration_city=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'vehicle_manufacture_year=1' \
    -d 'bonus_malus=1' \
    -d 'franchise=1' \
    -d 'cheat=1' \
    -d 'period=28' \
    

Пример ответа


{
    "companies": {
        "3": {
            "cost": 3061.8,
            "currency": "UAH"
        },
        "4": {
            "cost": 2041.2,
            "currency": "UAH"
        },
        "...": {}
    }
}


Рассчет стоимости договора.

Ниже представлен список параметров необходимых для получения ответа.

product.calculate Параметры запроса

Параметр Описание Обязательный/опциональный
product_alias Алиас продукта. Для Продукта Mtpl — mtpl Обязательный
vehicle_registration_city_id Идентификатор города регистрации Да
vehicle Идентификатор категории ТС Да
driving_experience Идентификатор опыта вождения Да
personality Идентификатор лица страхователя (физ. юр.) Да
vehicle_use_area Идентификатор сферы использования Да
vehicle_use_period Идентификатор периода использования Да
vehicle_registration_city Идентификатор города регистрации Да
vehicle_manufacture_year Идентификатор года производства ТС Да
bonus_malus Идентификатор скидки за стаж без ДТП. Да
franchise Идентификатор франшизы Да
cheat Идентификатор наличия мошенничества Да
period Идентификатор периода использования Да
product_alias Псевдоним продукта Да
company_id Идентификатор компании Нет

Оформление

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.issue \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'vehicle_registration_city_id=15582' \
    -d 'vehicle=1' \
    -d 'driving_experience=16' \
    -d 'personality=1' \
    -d 'vehicle_use_area=1' \
    -d 'vehicle_use_period=28' \
    -d 'vehicle_registration_city=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'vehicle_manufacture_year=1' \
    -d 'bonus_malus=1' \
    -d 'franchise=1' \
    -d 'cheat=1' \
    -d 'period=28' \
    -d 'product_alias=mtpl' \
    -d 'company_id=6' \
    -d 'brand_name=Acura' \
    -d 'model_name=MDX' \
    -d 'body_number=WBACD91870PK91670' \
    -d 'state_number=AK1234AB' \
    -d 'name=Иван' \
    -d 'last_name=Иванов' \
    -d 'father_name=Иванович' \
    -d 'email_address=ivanov@gmail.com' \
    -d 'phone_number=+380994568333' \
    -d 'inn=9876543211' \
    -d 'birthday=1990-02-02' \
    -d 'identification_by=pension_card' \
    -d 'date_from=2015-03-12' \
    -d 'individual_address[address_registration][country]=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'individual_address[address_registration][state]=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'individual_address[address_registration][province]=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_registration][city]=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_registration][street]=%D0%B1%D1%83%D0%BB.+%D0%9B%D0%B5%D1%81%D1%96+%D0%A3%D0%BA%D1%80%D0%B0%D1%97%D0%BD%D0%BA%D0%B8' \
    -d 'individual_address[address_registration][street_number]=34' \
    -d 'individual_address[address_registration][apartment_number]=45' \
    -d 'individual_address[address_registration][postal_code]=01133' \
    -d 'individual_address[is_address_equal]=0' \
    -d 'individual_address[address_permanent][country]=%D0%A3%D0%BA%D1%80%D0%B0%D0%B8%D0%BD%D0%B0' \
    -d 'individual_address[address_permanent][state]=%D0%B3%D0%BE%D1%80%D0%BE%D0%B4+%D0%9A%D0%B8%D0%B5%D0%B2' \
    -d 'individual_address[address_permanent][province]=%D0%BC%D1%96%D1%81%D1%82%D0%BE+%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_permanent][city]=%D0%9A%D0%B8%D1%97%D0%B2' \
    -d 'individual_address[address_permanent][street]=%D0%B2%D1%83%D0%BB.+%D0%A7%D0%B5%D1%80%D0%B2%D0%BE%D0%BD%D0%BE%D1%82%D0%BA%D0%B0%D1%86%D1%8C%D0%BA%D0%B0' \
    -d 'individual_address[address_permanent][street_number]=22%D0%B0' \
    -d 'individual_address[address_permanent][apartment_number]=72' \
    -d 'individual_address[address_permanent][postal_code]=24176' \
    -d 'access_token=M2NjMGY3MjhhM2U2ZDE1NTgxNTNhNzM4MTYxOGJmMzE2NWI3OTA3MTZkYTc0ZWI2OTAyYTAzOGM5NWY0ZmZhZA' \
    

Пример ответа

{
    "agreement_id": 251,
    "agreement_number": "CT / 190026",
    "valid_from": "2015-04-02 00:00:00",
    "valid_till": "2016-04-01 23:59:59",
    "cost": 612.36,
    "company_alias": "illichivska"
}

Оформление договора.

Ниже представлен список параметров необходимых для получения ответа.

product.issue Параметры запроса

Параметр Описание Обязательный/опциональный
product_alias Алиас продукта. Для Продукта Mtpl — mtpl Обязательный
vehicle_registration_city_id Идентификатор города регистрации Да
vehicle Идентификатор категории ТС Да
driving_experience Идентификатор опыта вождения Да
personality Идентификатор лица страхователя (физ. юр.) Да
vehicle_use_area Идентификатор сферы использования Да
vehicle_use_period Идентификатор периода использования Да
vehicle_registration_city Идентификатор города регистрации Да
vehicle_manufacture_year Идентификатор года производства ТС Да
bonus_malus Идентификатор скидки за стаж без ДТП. Да
franchise Идентификатор франшизы Да
cheat Идентификатор наличия мошенничества Да
period Идентификатор периода использования Да
brand_name Марка ТС Да
model_name Модель ТС Да
body_number Номер кузова ТС Да
state_number Гос. номер ТС Да
name Имя страхователя Да
last_name Фамилия страхователя Да
father_name Отчество страхователя Да
email_address Електронная почта страхователя Да
phone_number Номер телефона страхователя Да
inn ИНН страхователя Да
birthday День рождения страхователя Да
identification_by Документ удостоверяющий личность Да
date_from Дата начала действия договора Да
product_alias Псевдоним продукта Да
company_id Идентификатор компании Нет
individual_address Адрес Страхователя. Структура типа IndividualAddress Да

Продукт Property Insurance

В данном разделе описано методы для работы с продуктом Property Insurance.

Информация

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.info \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=property'

Пример ответа


{
   "risks":{
      "1":{
         "name":"Действие огня"
      },
      "2":{
         "name":"Стихийные бедствия"
      },
      "3":{
         "name":"Влияние жидкостей"
      },
      "4":{
         "name":"Похищение"
      },
      "5":{
         "name":"Противоправные действия третьих лиц"
      },
      "6":{
         "name":"Падение посторонних предметов"
      }
   },
   "periods":{
      ...
   },
   "coverages":{
      ...
   },
   "companies":{
      ...
   },
   "company_coverage":{
      ...
   },
   "company_period":{
      ...
   }
}


Получение информации по продукту.

Ниже представлен список параметров необходимых для получения ответа.

product.info Параметры запроса

Параметр Описание Обязательный/опциональный
product_alias Алиас продукта. Для Продукта Property Insurance — property Обязательный

Стоимость

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/product.calculate \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'product_alias=property' \
    -d 'period_id=10'

Пример ответа


{
   "companies":{
      "7":{
         "cost":400,
         "currency":"UAH"
      },
      "1":{
         "cost":720,
         "currency":"UAH"
      }
   }
}


Рассчет стоимости договора.

Ниже представлен список параметров необходимых для получения ответа.

product.calculate Параметры запроса

Параметр Описание Обязательный/опциональный
product_alias Алиас продукта. Для Продукта Property Insurance — property Обязательный
period_id Идентификатор периода страхования Да

Оформление

Пример ответа

{
   "agreement_id":349,
   "agreement_number":null,
   "valid_from":"2015-12-04 00:00:00",
   "valid_till":"2016-12-03 23:59:59",
   "cost":720,
   "currency":"UAH",
   "company_alias":"aska"
}

Оформление договора.

Ниже представлен список параметров необходимых для получения ответа.

product.issue Параметры запроса

Параметр Описание Обязательный/опциональный
product_alias Алиас продукта. Для Продукта Property Insurance — property Обязательный
date_from Дата начала действия договора Обязательный
period_id Идентификатор периода страхования Обязательный
property_area Площадь имущества Обязательный
company_id Идентификатор компании Обязательный
name Имя страхователя Обязательный
last_name Фамилия страхователя Обязательный
father_name Отчество страхователя Обязательный
email_address Електронная почта страхователя Обязательный
phone_number Номер телефона страхователя Обязательный
inn ИНН страхователя Обязательный
birthday День рождения страхователя Обязательный
product_alias Псевдоним продукта Обязательный
individual_address Адрес Страхователя. Структура типа IndividualAddress Обязательный
address_permanent Адрес места фактического жительства. Структура типа Address Обязательный, если is_address_equal = 0

Работа с договорами

В данном разделе описаны методы для работы с уже оформленными договорами.

Список договоров

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/agreement.list \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'page=1' \
    -d 'rows=2'

Пример ответа

{
   "total_count":297,
   "agreements":{
      "315":{
         "id":315,
         "agreement_number": "98090026",
         "status":{
            "code":"pending_cancellation",
            "description":"Ожидает аннулирования"
         },
         "company":{
            "id":3,
            "name":"ЧАО «СК «Граве Украина»"
         },
         "product":{
            "id":2,
            "name":"За рубеж"
         },
         "cost":127.05,
         "currency":"UAH",
         "valid_from":"2015-08-11",
         "valid_till":"2015-09-06",
         "created_at":"2015-07-21 15:55:23"
      },
      "314":{
         "id":314,
         "agreement_number": "98090025",
         "status":{
            "code":"pending_cancellation",
            "description":"Ожидает аннулирования"
         },
         "company":{
            "id":3,
            "name":"ЧАО «СК «Граве Украина»"
         },
         "product":{
            "id":2,
            "name":"За рубеж"
         },
         "cost":127.05,
         "currency":"UAH",
         "valid_from":"2015-08-11",
         "valid_till":"2015-09-06",
         "created_at":"2015-07-21 15:35:23"
      }
   }
}


Метод используется для получения списка договоров агента.

Параметры запроса

Параметр Описание Обязательный/опциональный
page Порядковый номер страницы. Отсчет начинается с 1. По умолчанию — 1. Опциональный
rows Количество строк (от 1 до 100). По умолчанию — 20. Опциональный

Информация по договору

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/agreement.info \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'agreement_id={AGREEMENT_ID}'

Пример ответа

{
    "id": 318,
    "agreement_number": "CT / 190026",
    "status": {
        "code": "signed",
        "description": "Подписан"
    },
    "company": {
        "id": 6,
        "name": "ЧАО «СО «Ильичевское»"
    },
    "product": {
        "alias": "mtpl",
        "name": "ОСАГО"
    },
    "cost": 384.75,
    "currency": "UAH",
    "createdAt": "2015-07-23 10:59:09",
    "validFrom": "2015-07-24 00:00:00",
    "validTill": "2016-07-23 23:59:59"
}

Метод используется для получения информации по договору.

Параметры запроса

Параметр Описание Обязательный/опциональный
agreement_id ID договора оформленного методом product.issue Обязательный

Возможные статусы договора

Статус Описание
draft Ожидает подписания. Устанавливается после выполнения метода product.issue
signed Подписан. Промежуточный статус системы. Описывает состояние договора до формирования PDF-документа.
pending_payment Ожидает оплаты. Устанавливается после выполнения метода agreement.confirm
paid Оплачен. Устанавливается после подтверждения оплаты администратором.
pending_cancellation Ожидает аннулирования. Устанавливается после выполнения метода agreement.cancel
canceled Аннулирован. Устанавливается после подтверждения аннулирования администратором.

Подписание договора

Пример запроса

$ curl https://ukrfinservice.net/api/method/agreement.confirm \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'agreement_id={AGREEMENT_ID}'

Пример ответа

{
    "status": "signed"
}

После того как договор оформили его нужно подписать (подтвердить).

Ниже представлен список параметров необходимых для подписания (подтверждения) договора.

Параметры запроса

Параметр Описание Обязательный/опциональный
agreement_id ID договора оформленного методом product.issue Обязательный

Оплата договора

Пример запроса

$ curl https://ukrfinservice.net/api/method/agreement.payment \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'agreement_id={AGREEMENT_ID}'

Пример ответа

{
    "status": "paid"
}

Для сообщения серверу факта принятия оплаты необходимо выполнить запрос.

Ниже представлен список параметров необходимых для подтверждения оплаты договора.

Параметры запроса

Параметр Описание Обязательный/опциональный
agreement_id ID договора оформленного методом product.issue Обязательный

Скачивание договора

Пример запроса

$ curl https://dev.ukrfinservice.net/api/method/agreement.download \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'agreement_id={AGREEMENT_ID}'

Пример ответа

{
    "status": "success",
    "link": "https:\/\/ukrfinservice.net\/downloading\/agreement\/6HglSC0UKZAzRJH.pdf"
}


Метод используется для получения ссылки на скачивание договора страхования в формате PDF.

Ниже представлен список параметров необходимых для получения ссылки на скачивание.

Параметры запроса

Параметр Описание Обязательный/опциональный
agreement_id ID договора оформленного методом product.issue Обязательный

Аннулирование договора

Пример запроса

$ curl http://dev.ukrfinservice.net/api/method/agreement.cancel \
    -H 'Authorization: Bearer {ACCESS_TOKEN}' \
    -d 'agreement_id={AGREEMENT_ID}' \
    -d 'description={DESCRIPTION}'

Пример ответа

{
    "status": "success",
    "message": "Agreement is pending for cancellation."
}


Метод используется для аннулирования договора в случае неверно заполненных данных.

Договор может быть аннулирован если он не вступил в силу.

Параметры запроса

Параметр Описание Обязательный/опциональный
agreement_id ID договора оформленного методом product.issue Обязательный
description Причина аннулирования договора. Обязательный

Структуры данных

В данном разделе описаны структуры используемые методами UFS API.

Структура Address

Пример

[
    "country":          "Украина",
    "state":            "Киевская область",
    "province":         "Бучанский район",
    "city":             "Буча",
    "street":           "ул. Лермонтова",
    "street_number":    "23",
    "apartment_number": "119",
    "postal_code":      "08292"
]

Ниже представлены параметры входящие в структуру Address.

Параметры запроса

Параметр Описание Обязательный/опциональный
country Страна Обязательный
state Область Опциональный
province Регион Опциональный
city Город Обязательный
street Улица Обязательный
street_number Номер дома Обязательный
apartment_number Номер кв./оф. Обязательный
postal_code Почтовый индекс Обязательный

Структура IndividualAddress

Пример

[
    "address_registration": [
        "country":          "Украина",
        "state":            "Киевская область",
        "province":         "Бучанский район",
        "city":             "Буча",
        "street":           "ул. Лермонтова",
        "street_number":    "23",
        "apartment_number": "119",
        "postal_code":      "08292"
    ],
    "is_address_equal":     0,
    "address_permanent":    [
        "country":          "Украина",
        "city":             "Киев",
        "street":           "бул. Победы",
        "street_number":    "37",
        "apartment_number": "83",
        "postal_code":      "01100"
    ]
]

Ниже представлены параметры входящие в структуру Address.

Параметры запроса

Параметр Описание Обязательный/опциональный
address_registration Адрес регистрации (прописки). Структура типа Address Обязательный
is_address_equal Флаг (булевое значение [0, 1]) совпадения адреса регистрации с адресом места фактического жительства. Обязательный
address_permanent Адрес места фактического жительства. Структура типа Address Обязательный, если is_address_equal = 0