Kintsugi API ( 1.0 )

Download OpenAPI specification :

API Кинцуги

Описание

Данная документация описывает программные интерфейсы (API) Кинцуги. В качестве транспортного протокола используется HTTP 1.1. Кодировка запросов и ответов: UTF-8.

Обмен данными происходит в формате JSON . В запросе должен присутствовать заголовок Accept со значением application/json, а если запрос содержит тело - еще Content-Type с таким же значением.

 Accept: application/json 
Content-Type: application/json

Авторизация

Авторизация происходит по заголовку Authorization со значением токена, полученного у оператора платформы. Заголовок формируется следующим образом:

Authorization: Bearer {partner_token}

Ограничения

При использовании API-интерфейса есть ограничения на количество запросов в минуту: не более 100.

При неправильной авторизации 2 раза в течение часа - ограничение к API-интерфейсу по IP-адресу на 1 час.

Асинхронный режим выполнения запросов

Некоторые функции API выполняются в асинхронном режиме.

Асинхронный режим предполагает следующий алгоритм выполнения:

  • При вызове функции на сервере происходит регистрация задачи и в ответе возвращается идентификатор задачи (атрибут request_id ).
  • Далее задача выполняется на сервере.
  • Для получения результата клиент вызывает метод async_results , передавая в качестве параметра полученный на первом шаге request_id .

Риски

Добавить/обновить риски, работает в асинхронном режиме

Метод для загрузки массива рисков. Риски должны быть сгруппированы по лидеру, страхователю и виду риска. Для идентификации существующих рисков используется параметр external_id . Обработка риска происходит в соответствии с текущим статусом:

  • риск не найден - создание риска,
  • риск найден и полис еще не оформлен - обновление риска,
  • риск найден, полис к нему оформлен, но убытки еще не зарегистрированы - создание дополнения к полису.

Для новых рисков происходит автоматический поиск подходящего договора.

Работа с дополнительными параметрами риска.

Каждому виду рисков в системе соответсвует свой набор дополнительных параметров. Список доступных видов рисков и список параметров к ним можно получить в разделе Справочники. Для передачи риска необходимо сформировать объект properties , ключами которого будут ключи параметра, если параметр имеет значение тип словаря, то в качестве значения необходимо передавать id.

Коды результатов обработки одного риска.

  • 1 - добавлен новый риск;
  • 2 - риск успешно обновлен в периоде охлаждения;
  • 3 - создано новое дополнение к полису;
  • -1 - ошибка валидации входных параметров. Такие риски потребуется передать повторно после устранения ошибок в данных;
  • -2 - не удалось подобрать действующий договор страхования. Такие риски потребуется передать повторно после добавления договора или устранения ошибок в данных;
  • -3 - действие запрещено;
    • риск с данными номером и датой уже добавлен в договор
    • риск в статусе Отказано в оформлении полиса
    • страхователь не может добавить дополнение к полису
    • полис оформлен и уже добавлены убытки
    • полис оформлен, ничего не изменилось, поэтому дополнение создать нельзя
    • полис оформлен, дополнение оформить нельзя, так как параметры не подходят к условиям договора
  • -4 - действие отменено из-за выполнения конфликтных обновлений. Попробуйте передать повторно через некоторое время;
  • -5 - произошла ошибка на сервере, напишите в ТП и/или попробуйте передать повторно через некоторое время;
Authorizations:
partnerAuth
Request Body schema: application/json

Загружаемые риски

insurant_tax_code
required
string

ИНН страхователя

leader_tax_code
required
string

ИНН лидера страхования

risk_kind_id
required
integer

ID вида риска (справочник - risk_kinds)

required
Array of objects ( RiskModel ) [ 1 .. 2000 ]

Responses

Request samples

Content type
application/json
{
  • "insurant_tax_code" : "6679145825" ,
  • "leader_tax_code" : "6679145825" ,
  • "risk_kind_id" : 1 ,
  • "risks" : [
    ]
}

Response samples

Content type
application/json
Example
{
  • "success" : true ,
  • "request_id" : "61f0c404-5cb3-11e7-907b-a6006ad3dba0" ,
  • "status" : "IN PROGRESS"
}

Получить документы по рискам (полисы/дополнения)

Authorizations:
partnerAuth
query Parameters
leader_id
integer
Example: leader_id=21

ID страховщика, который является лидером договора

coinsurer_id
integer
Example: coinsurer_id=65

ID страховщика, который является состраховщиком риска, но не лидером договора

insurant_id
integer
Example: insurant_id=154

ID страхователя риска

risk_kind_id
integer
Example: risk_kind_id=1

ID вида риска

min_created_date
string
Example: min_created_date=01.01.2024

Минимальная дата оформления полиса / дополнения

max_created_date
string
Example: max_created_date=01.01.2025

Максимальная дата оформления полиса / дополнения

min_date_from
string
Example: min_date_from=01.01.2024

Минимальная дата начала страхования

max_date_from
string
Example: max_date_from=01.01.2025

Максимальная дата начала страхования

page
integer >= 1
Default: 1
Example: page=1

Номер страницы

per_page
integer [ 1 .. 1000 ]
Default: 100
Example: per_page=100

Кол-во записей на странице

Responses

Response samples

Content type
application/json
{
  • "success" : true ,
  • "data" : [
    ] ,
  • "meta" : {
    }
}

Массовое удаление рисков

Метод для массового удаления рисков.

Коды результатов обработки одного риска.

  • 0 - риск успешно удален;
  • -1 - риск не найден;
  • -2 - нет доступа для удаления;
  • -3 - риск охлажден - удаление невозможно;
  • -4 - действие отменено из-за выполнения конфликтных обновлений. Попробуйте позже;
  • -5 - произошла ошибка на сервере, напишите в ТП и/или попробуйте передать повторно через некоторое время;
Authorizations:
partnerAuth
Request Body schema: application/json

Удаляемые риски

risk_ids
required
Array of integers [ 1 .. 500 ]

Responses

Request samples

Content type
application/json
{
  • "risk_ids" : [
    ]
}

Response samples

Content type
application/json
{
  • "success" : true ,
  • "data" : [
    ]
}

Асинхронный вызов

Получить результат асинхронного вызова

Функция предназначена для получения результатов выполнения вызовов, запущенных в асинхронном режиме.

Статусы:

  • IN_PROGRESS - задача находится в процессе выполнения,
  • COMPLETED - задача выполнена и в data будет возвращен результат выполнения.

Результаты хранятся в течение 30 дней.

Authorizations:
partnerAuth
path Parameters
request_id
required
string
Example: 4875

ID, полученный при асинхронном запросе

Responses

Response samples

Content type
application/json
Example
{
  • "success" : true ,
  • "request_id" : "61f0c404-5cb3-11e7-907b-a6006ad3dba0" ,
  • "status" : "IN PROGRESS"
}

Справочники

Получить список видов риска

Authorizations:
partnerAuth

Responses

Response samples

Content type
application/json
{
  • "success" : true ,
  • "data" : [
    ]
}

Получить список параметров по виду риска

Authorizations:
partnerAuth
path Parameters
risk_kind_id
required
integer
Example: 4875

ID вида риска

Responses

Response samples

Content type
application/json
{
  • "success" : true ,
  • "data" : [
    ]
}

Получить список валют

Authorizations:
partnerAuth

Responses

Response samples

Content type
application/json
{
  • "success" : true ,
  • "data" : [
    ]
}