Документация поможет вам решить вопрос получения расчета по КАСКО без необходимости работать напрямую с интерфейсом СК Диамант.

Общая последовательность шагов:


1. Авторизоваться в системе.
2. Получить данные из справочников.
3. Сохранить расчет.
4. Запрос на получение тарифа.
5. Описание параметров расчета.

Подробнее о каждом шаге.

1. Авторизоваться в системе


Для работы с API партнер СК Диамант получает логин и пароль к своей учетной записи и использует его для обращения к сервису. Логин и пароль вы можете запросить у своего куратора или it службы после заключения агентского договора с СК Диамант.

Для получения тарифов КАСКО необходимо авторизоваться в API и получить токен. Токен - это специальный код, разрешающий доступ к данным API, который следует указывать при вызове методов.

Получение токена

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


Адрес для отправки запроса http://lk.skdiamant.ru/rest/v3/default/obtain-token

Пример
			  {
				username:your_username
				password:your_password
			  }
Если логин и пароль верные, то ответ от сервера будет содержать json вида
{"token": "<your_token>"}

Использование токена при вызове методов

Токен, полученный для пользователя, необходимо указывать в параметре token при каждом запросе к API Диаманта от имени этого пользователя.
Если указан неверный токен, возвращается сообщение об ошибке с кодом 503

Пример заголовков запроса с указанием полученного токена:

Адрес для отправки запроса http://lk.skdiamant.ru/rest/full/calculation/

Пример:
					POST /rest/full/calculation/ HTTP/1.1
					Host: lk.skdiamant.ru
					Connection: keep-alive
					Content-Length: 1790
					Pragma: no-cache
					Cache-Control: no-cache
					Accept: application/json, text/plain, /
					Origin: http://lk.skdiamant.ru
					User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/537.36

					Authorization: Token de3c100303c75a6aab93368184457a1fc42447b5

					Content-Type: application/json;charset=UTF-8
					Referer: http://lk.skdiamant.ru/
					Accept-Encoding: gzip, deflate
					Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
				

2. Получить данные из справочников



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

Справочники для расчета:

Справочник Значение
http://lk.skdiamant.ru/rest/default/antitheft/models/Противоугонное оснащение
http://lk.skdiamant.ru/rest/full/exploitation_area/Регион
http://lk.skdiamant.ru/rest/full/car_mark/?rank=market марка ТС
http://lk.skdiamant.ru/rest/full/prolongation/ Пролонгация договора
http://lk.skdiamant.ru/rest/full/contributory_scheme/ Порядок оплаты
http://lk.skdiamant.ru/rest/full/payment_form/ Способ выплаты
http://lk.skdiamant.ru/rest/full/insurance_duration/ Срок страхования
http://lk.skdiamant.ru/rest/full/target_of_using/ Характер использования ТС
http://lk.skdiamant.ru/rest/full/policy_area/ Расширение территории страхования
http://lk.skdiamant.ru/rest/full/optional_equipment/ Тип оборудования
http://lk.skdiamant.ru/rest/full/deductible_type/ Тип франшизы
http://lk.skdiamant.ru/rest/full/claim_form/ Система возмещения ущерба
http://lk.skdiamant.ru/rest/full/payment_type/ Лимит возмещения
http://lk.skdiamant.ru/rest/full/coverage_condition/ Условия покрытия

 Рассмотрим получение данных на примере справочника Способ выплаты

Для получения данных нужно отправить GET-запрос.

Адрес для отправки запроса http://lk.skdiamant.ru/rest/full/payment_form/


Пример:


			GET /rest/full/payment_form/ HTTP/1.1
			Host: lk.skdiamant.ru
			Connection: keep-alive
			Pragma: no-cache
			Cache-Control: no-cache
			Accept: application/json, text/plain, /
			User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36
			Authorization: Token 6d4815ea63841178a90d7231ae0905a2e826f23f
			Referer: http://lk.skdiamant.ru/
			Accept-Encoding: gzip, deflate, sdch
			Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.6,en;q=0.4
			Cookie: utmb=79854275.5.10.1446024787; authToken=%226d4832ea63841178a90d7231ae0905a2e826f23f%22; csrftoken=uuypd7xLFw2UIIDcGwfyJjb4UmKGQKoe; sessionid=73z9c5uz8tqde2f7xgftiemmqtbw573t; utmt=1;
			utma=79854275.722908158.1445934955.1445942134.1446024787.3; utmb=79854275.6.10.1446024787; utmc=79854275;
			utmz=79854275.1445934955.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
		


Ответ сервера будет содержать значения этого параметра и ID этих значений:

					[
					   {
						  "id":41826,
						  "title":"Ремонт на СТОА по направлению Страховщика"
					   },
					   {
						  "id":41827,
						  "title":"Ремонт на СТОА по выбору Страхователя"
					   },
					   {
						  "id":41828,
						  "title":"Ремонт на СТОА официального дилера по направлению Страховщика"
					   },
					   {
						  "id":41829,
						  "title":"Оплата по калькуляции Страховщика"
					   }
					]
				


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

3. Сохранить расчет



После того, как все данные из справочников получены, можно приступать к созданию и отправке запроса на расчет. Запрос, пример которого ниже, должен содержать ID из справочников, по типу - название справочника:ID нужного параметра. Нужно создать запрос для того, чтобы дать серверу понять, с какими параметрами нужно сделать расчет, сохранить этот расчет и отправить обратно его идентификатор.

Адрес для отправки запроса http://lk.skdiamant.ru/rest/full/calculation/


Пример запроса с минимально необходимым набором полей (марка, модель, стоимость, год):

				{
                    car_mark: 46980,
                    car_model: 46986,
                    car_cost: 470037,
                    car_manufacturing_year: 2013
                }
		  

Пример запроса с минимально необходимым набором полей (марка, модель, стоимость, год) с двумя водителями:

		    	{
                    car_mark: 46980,
                    car_model: 46986,
                    car_cost: 470037,
                    car_manufacturing_year: 2013,
                    driver_set: [
                        {
                            "age": 52,
                            "expirience": 22
                        },
                        {
                            "age": 31,
                            "expirience": 8
                        }
                    ]
                }
				


Если всё сформировано правильно, в ответ вы получите сохраненный расчет с набором параметров и, главное, идентификатором.
Пример ответа нашего сервера с успешным сохранением расчета (описание данных из ответа в разделе №5):

					{
					   "drivers_count":1,
					   "seats_number":null,
					   "payment_form":[
						  107
					   ],
					   "engine_power":184.0,
					   "is_aerographed":false,
					   "car_cost":"300000",
					   "is_deductible":false,
					   "maximum_mass":null,
					   "antitheft":null,
					   "policy_series":"",
					   "is_right_wheel":false,
					   "is_under_warranty":true,
					   "term_of_credit":null,
					   "calculation_at_date":null,
					   "is_accident_insured":false,
					   "car_model_group":36091,
					   "car_currency":23,
					   "contributory_scheme":19,
					   "drivers_minimal_age":55,
					   "deductible_value":null,
					   "exploitation_area":30261,
					   "is_earlier_insurance":false,
					   "earlier_insurance_cars_count":1,
					   "policy_number":"",
					   "manufacturing_country":null,
					   "sattelite_model":null,
					   "client_name":"",
					   "is_legal_entity":false,
					   "is_calculate_gap":false,
					   "is_civil_liability_voluntary_insured":false,
					   "is_cmr_insured":false,

					   "id":8550681,

					   "offers":[

					   ],
					   "optional_equipment_cost":null,
					   "on_logic_version_date":"2100-01-01",
					   "insured_object":null,
					   "year_of_exploitation_period":null,
					   "created_by_user":12292,
					   "mileage":0,
					   "car_weight":null,
					   "packet_calculation":null,
					   "insurance_duration":82,
					   "post_code":"",
					   "earlier_icompany":null,
					   "target_of_using":112,
					   "car_model":36094,
					   "company":null,
					   "maximum_speed":null,
					   "count_years_break_even_insurance":0,
					   "antitheft_model":[

					   ],
					   "civil_liability_voluntary_cost":null,
					   "owner_registration":104,
					   "client_phone":"",
					   "car_type":1,
					   "is_credit":false,
					   "calculation_type":null,
					   "car_mark":303,
					   "date_of_exploitation_period":"2015-10-12",
					   "insurable_risk":29,
					   "is_logic_version_date":false,
					   "insurance_duration_value":null,
					   "policy_area":null,
					   "credit_bank":null,
					   "car_modification":36121,
					   "client_district":"",
					   "signalization_type":[

					   ],
					   "created_at":"2015-10-12T17:28:57.789",
					   "deductible_type":null,
					   "drivers_minimal_experience":30,
					   "claim_form":17,
					   "is_calculate_osago":false,
					   "using_api":true,
					   "is_optional_equipment_insured":false,
					   "is_armoured":false,
					   "car_manufacturing_year":2015,
					   "client_email":"",
					   "payment_type":111,
					   "engine_displacement":null,
					   "vehicle_category":null,
					   "has_autostart":false,
					   "driver_set":[
						  {
							 "gender":"M",
							 "age":55,
							 "has_children":false,
							 "expirience":30,
							 "is_married":false
						  }
					   ],
					   "external_id":"",
					   "available_insurance_departments":[
						  {
							 "code":"",
							 "title":"\u041c\u0421\u041a - online",
							 "active":true,
							 "logo":"/media/logo_main_ins/ms_03.png",
							 "long_title":"\u041c\u0421\u041a - online",
							 "id":33503
						  }
					   ],
					   "deductible_currency":23,
					   "is_multidrive":false
					}
				



4. Запрос на получение тарифа



В ответ на запрос сервер осуществит расчет с учетом ваших параметров и отправит ответ, содержащий id страховой компании с учетом условий. После этого нужно будет отправить отдельный POST-запрос, содержащий id расчета и id страховой компании Диамант. В результате сервер отправит вам стоимость страхования КАСКО.

Пример запроса на расчет тарифа:

				POST http://lk.skdiamant.ru/rest/v3/default/calculation/6655740/result/42825/
			

, где "6655740" - id калькулейшена, а "42825" - id региональной версии страховой компании, которая пришла в массиве "available_insurance_departments" из калькулейшена.

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

				[
				   {
					  "program":{
						 "theft_sum":null,
						 "title":"Комплекс",
						 "sum":"42820",
						 "tarif":"9.11",
						 "discount":0,
						 "option_set":[

						 ],
						 "id":298962,
						 "harm_sum":null
					  },
					  "ins_dir_car_name":[
						 {
							"selected":{
							   "id":3273634,
							   "title":"AUDI A3"
							},
							"id":48775,
							"title":"Автомобили"
						 }
					  ],
					  "insurance_type":"KASKO",
					  "installment":{
						 "payments":{
							"0":{
							   "sum":null,
							   "percent":100
							}
						 },
						 "id":298963,
						 "title":"Единовременно"
					  },
					  "extra_parameters":[

					  ],
					  "calculation":{
						 "id":6655740
					  },
					  "available_programs":[
						 {
							"id":298962,
							"title":"Комплекс"
						 }
					  ],
					  "is_selected":true,
					  "messages":{
						 "print_msg":[

						 ],
						 "errors":[

						 ],
						 "messages":[

						 ],
						 "warnings":[
							"Минимальные требования к противоугонному оснащению: Штатная ПС",
							"К2: 1.00",
							"К3: 1.00",
							"К5: 1.00",
							"К6: 1.00",
							"К7: 1.00",
							"К8: 0.90",
							"К10: 1.00",
							"К11: 1.00",
							"К12: 1.00",
							"К14: 1.00",
							"К15: 1.00",
							"К16: 1.00",
							"К17: 1.00",
							"К18: 1.00",
							"К13: 1.00",
							"К9: 0.97",
							"К4: 1.20",
							"Тбаз Хищение: 1.9",
							"Тбаз Ущерб: 7.9",
							"К1: 1.33",
							"К19: 0.80",
							"К20андер: 1.00",
							"Кdo: None",
							"Кав: 1.00"
						 ]
					  },
					  "add_risks":{
						 "accident_sum":0,
						 "cmr_sum":null,
						 "optional_equipment_sum":0,
						 "civil_liability_voluntary_sum":0,
						 "cmr_tariff":null,
						 "gap_sum":null
					  },
					  "is_default":true,
					  "insurance_company":{
						 "code":"",
						 "logo":"",
						 "version":42825,
						 "id":42824,
						 "title":"Диамант"
					  },
					  "insurer_data":{
						 "response_url":null,
						 "url_of_calculator":"",
						 "b2b_id":null,
						 "request_url":null,
						 "quote_doc":null,
						 "b2b_url":null
					  },
					  "bank":{

					  },
					  "sysinfo":{
						 "calculation_error_message":null,
						 "ctime":"2016-01-22T19:47:51.959",
						 "result_counter":1,
						 "calculation_time":6.390021,
						 "value_rating_position":null,
						 "value_rating":null,
						 "is_recalculated":false
					  },
					  "id":68310621,
					  "available_installments":[
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":100
							   }
							},
							"id":298963,
							"title":"Единовременно"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":50
							   },
							   "4":{
								  "sum":null,
								  "percent":50
							   }
							},
							"id":298969,
							"title":"2 платежа (50% + 50% через 4 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":50
							   },
							   "3":{
								  "sum":null,
								  "percent":50
							   }
							},
							"id":298970,
							"title":"2 платежа (50% через 3 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":50
							   },
							   "6":{
								  "sum":null,
								  "percent":50
							   }
							},
							"id":298971,
							"title":"2 платежа (50% через 6 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":35
							   },
							   "2":{
								  "sum":null,
								  "percent":35
							   },
							   "3":{
								  "sum":null,
								  "percent":30
							   }
							},
							"id":298972,
							"title":"3 платежа (35% + 65% в теч. 3 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":35
							   },
							   "3":{
								  "sum":null,
								  "percent":35
							   },
							   "6":{
								  "sum":null,
								  "percent":30
							   }
							},
							"id":298974,
							"title":"3 платежа (в течение 6 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":35
							   },
							   "1":{
								  "sum":null,
								  "percent":22
							   },
							   "2":{
								  "sum":null,
								  "percent":22
							   },
							   "3":{
								  "sum":null,
								  "percent":21
							   }
							},
							"id":298975,
							"title":"4 платежа (35% + 65% в теч. 3 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":35
							   },
							   "2":{
								  "sum":null,
								  "percent":22
							   },
							   "3":{
								  "sum":null,
								  "percent":22
							   },
							   "4":{
								  "sum":null,
								  "percent":21
							   }
							},
							"id":298976,
							"title":"4 платежа (35% + 65% в теч. 4 мес.)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":25
							   },
							   "9":{
								  "sum":null,
								  "percent":25
							   },
							   "3":{
								  "sum":null,
								  "percent":25
							   },
							   "6":{
								  "sum":null,
								  "percent":25
							   }
							},
							"id":298977,
							"title":"4 платежа (поквартально)"
						 },
						 {
							"payments":{
							   "0":{
								  "sum":null,
								  "percent":35
							   },
							   "1":{
								  "sum":null,
								  "percent":16
							   },
							   "2":{
								  "sum":null,
								  "percent":16
							   },
							   "3":{
								  "sum":null,
								  "percent":16
							   },
							   "4":{
								  "sum":null,
								  "percent":17
							   }
							},
							"id":298978,
							"title":"5 платежей (35% + 65% в теч. 4 мес.)"
						 },
						 {
							"payments":{

							},
							"id":298979,
							"title":"3 платежа (35% + 65% в теч. 4 мес.)"
						 }
					  ]
				   }
				]
			


5. Описание параметров расчета.


Переменная Значение по умолчанию Описание
antitheft
http://diamant-staff.cmios.ru/rest/default/antitheft/models/
Противоугонное оснащение
car_cost Стоимость ТС (в рублях)
car_manufacturing_year Год выпуска ТС
car_mark
http://diamant-staff.cmios.ru/rest/full/car_mark/?rank=market
Марка ТС
car_model
http://diamant-staff.cmios.ru/rest/full/car_mark/<id_марки>/car_model/
Модель ТС
car_model_group
http://diamant-staff.cmios.ru/rest/full/car_mark/<id_марки>/car_model_group/
Модельная группа ТС
civil_liability_voluntary_cost Страховая сумма по риску гражданская ответственность
claim_form Значение по умолчанию: Без учета износа
http://diamant-staff.cmios.ru/rest/full/claim_form/
Система возмещения ущерба
contributory_scheme Значение по умолчанию: Единовременно
http://diamant-staff.cmios.ru/rest/full/contributory_scheme/
Порядок уплаты
coverage_condition Значение по умолчанию: Полное
http://diamant-staff.cmios.ru/rest/full/coverage_condition/
Условие покрытия
created_at Дата сохранения расчета
credit_bank Банк кредитования автомобиля. Не используется в текущей версии тарифов
date_of_exploitation_period Дата начала эксплуатации. Не используется в текущей версии тарифов
deductible_type Значение по умолчанию: Нет
http://diamant-staff.cmios.ru/rest/full/deductible_type/
Тип франшизы
deductible_value Размер франшизы
driver_set Список водителей
drivers_count Количество водителей
drivers_minimal_age Минимальный возраст водителей
drivers_minimal_experience Минимальный стаж водителей
engine_power Мощность двигателя. Не используется в текущей версии тарифов
external_id Идентификатор из внешей системы (используется при интеграциях с CRM системами или сайтом)
has_autostart Автомобиль с автозапуском. Не используется в текущей версии тарифов
id Идентификатор сохраненного расчета.
insurable_risk
http://diamant-staff.cmios.ru/rest/full/insurable_risk/
ID страхового продукта, для расчета каско использовать: insurable_risk: "41817" + ссылка на справочник
insurance_cases_count Значение по умолчанию: 0 Количество страховых случаев
insurance_duration Значение по умолчанию: 12 месяцев
http://diamant-staff.cmios.ru/rest/full/insurance_duration/
Длительность страхования
is_accident_entire_cabin_insured Весь салон Страховая сумма
is_accident_insured Застраховать от Несчастного случая
is_accident_separate_seats_insured Отдельные места количество мест
is_armoured Бронированный авто
is_autorun Автозапуск
is_civil_liability_voluntary_insured Застраховать свою гражданскую ответственность
is_credit Авто приобретено в кредит
is_legal_entity Страхователь Юр.лицо
is_multidrive Мультидрайв
is_new_car Новый автомобиль
is_optional_equipment_insured Страхование дополнительного оборудования
is_right_wheel Правый руль
is_under_warranty Автомобиль на гарантии. Не используется в текущей версии тарифов
mileage Пробег. Не используется в текущей версии тарифов
optional_equipment
http://diamant-staff.cmios.ru/rest/full/optional_equipment/
Дополнительное оборудование
owner_registration Регион регистрации собственника. Не используется в текущей версии тарифов
payment_form Значение по умолчанию: Ремонт на СТОА по направлению Страховщика
http://diamant-staff.cmios.ru/rest/full/payment_form/
Форма выплаты страхового возмещения
payment_type Значение по умолчанию: Неагрегатная страховая сумма
http://diamant-staff.cmios.ru/rest/full/payment_type/
Лимит возмещения
policy_area Значение по умолчанию: Территория Российской Федерации
http://diamant-staff.cmios.ru/rest/full/policy_area/
Регион полиса
seats_number Кол-во пасажирских мест. Не используется, в текущей версии тарифов
target_of_using Значение по умолчанию: В личных целях (Страхователь – физическое лицо)
http://diamant-staff.cmios.ru/rest/full/target_of_using/
Цель использования
territory_expansion_period Период расширения в днях
underwriter_discount Скидка андеррайтера
vip_discount Скидка для VIP
Для элемента из списка driver_set, параметр age Возраст
Для элемента из списка driver_set, параметр expirience Стаж
exploitation_area Значение по умолчанию: Москва
http://diamant-staff.cmios.ru/rest/full/exploitation_area/
Регион
has_guarded_parking Хранение ТС на охраняемой стоянке
insured_cars_count Кол-во застрахованных в СК Диамант автомобилей
prolongation Значение по умолчанию: Новый договор
http://diamant-staff.cmios.ru/rest/full/prolongation/
Пролонгация договора