Метод policyinfo

Содержит в себе три информационных блока:
['policy'] - данные полиса ОСАГО на дату запроса, включая дату создания и период действия полиса.
['vehicle'] - регистрационные данные ГИБДД (технические характеристики ТС, серия и номер ПТС, история регистрационных действий).
['diagnostic'] - данные из ЕАИСТО (техосмотр).

Время исполнения метода примерно 1-3 сек.

Формируем данные для запроса:

$param=array(
'vin'=>'', //вин номер, латинские буквы и цифры
'regnum'=>'О628УЕ61', //госномер, русские буквы и цифры
'body'=>'', //номер кузова, латинские буквы и цифры
'chassis'=>'', //номер шасси, латинские буквы и цифры
'policy'=>'', //серия и номер полиса в формате "ССС 0658309568", в серии полиса буквы русские
'format'=>'', //можно установить вывод данных в нужном вам формате и структуре, об этом подробнее читайте ниже
'daterequest'=>'20.06.2021'); //дата, на которую будет запрашиваться полис ОСАГО из базы РСА, не может быть больше текущей и меньше 01.01.2014

Ключи массива $param, которые не имеют значений, можно пропускать.
Если ключ policy имеет значение, то запрос будет производитьсся по нему, в остальных случаях ключи имеют следующий приоритет: vin, regnum, body, chassis.
Соответветственно, из ключей policy,vin, regnum, body, chassis достаточно указывать только какой-то один, но если есть возможность дополнительно указать vin - будет еще лучше.
Если ключ daterequest отстуствует или имеет пустое значение, дата проставится автоматически текущая.
Если значение ключа daterequest больше текущей даты или меньше 01.01.2014, дата исправится автоматически на текущую или 01.01.2014 соответственно.
Ключ format и его значение имеет смысл указывать только если вас не устраивает выходная структура данных по умолчанию и вы хотите получить другую из существующих наборов.

Приводим данные для запроса в формат json:

$param=urlencode(json_encode($param));

Производим запрос с выводом результата в виде массива:

$url='https://kbm-osago.online/apimain.php?apikey=ВашАпиКей&metod=policyinfo&data='.$param;
$data=json_decode(file_get_contents($url),true);

Вывод результата:

print_r($data);

Array ( [status] => ok [policy] => Array ( [0] => Array ( [policy] => ССС 0658309568 [insur] => САО ВСК [status] => Прекратил действие [is_active] => Период использования ТС не активен на запрашиваемую дату [is_follow_to_registration] => Сведения отсутствуют [has_trailer] => Нет [using] => Не определено для ранее загруженных договоров до [restriction] => Ограничен список лиц, допущенных к управлению (допущено: 3 чел.) [insurant] => Р***** Виталий Михайлович 20.08.1974 [owner] => Р***** Виталий Михайлович 20.08.1974 [kbm] => 1.00 [geo] => Ростовская обл, р-н Октябрьский, п Персиановский [amount] => 1900.80 руб. [category] => B [brand] => Volkswagen [model] => PASSAT [regnum] => O628YE61 [vin] => WVWZZZ3BZ1P205797 [power] => 110.00 [change_date] => [change_status] => [policy_state] => Array ( [policy_created_date] => 28.06.2013 [policy_start_date] => 28.06.2013 [policy_end_date] => 27.06.2014 [policy_state] => INACTIVE [policy_insurer] => САО ВСК [policy_regnum] => O628YE61 [policy_vin] => WVWZZZ3BZ1P205797 [policy_body] => [policy_chassis] => [police_brand] => Volkswagen [policy_model] => PASSAT [status] => ok ) ) ) [vehicle] => Array ( [brand] => ФОЛЬКСВАГЕН [model] => ПАССАТ [year] => 2001 [color] => СЕРЕБРИСТЫЙ [engine] => Array ( [volume] => 1781.0 [number] => 038851 [powerHp] => 110.0 [powerKwt] => 81 ) [vin] => WVWZZZ3ВZ1Р205797 [body] => WVWZZZ3ВZ1Р205797 [chassis] => [category] => В [type] => Легковые автомобили прочие [PTS] => Array ( [number] => [issue] => ) [reghistory] => Array ( [0] => Array ( [datereg_from] => 17.10.2001 [datereg_to] => 19.12.2005 [owner_type] => Юридическое лицо [operation] => в связи с изменением места регистрации ) [1] => Array ( [datereg_from] => 12.05.2006 [datereg_to] => 12.05.2006 [owner_type] => Физическое лицо [operation] => постановка с одновременным снятием с учета ) [2] => Array ( [datereg_from] => 11.07.2006 [datereg_to] => [owner_type] => Физическое лицо [operation] => регистрация снятых с учета ) ) ) [diagnostic] => Array ( [0] => Array ( [dk] => 097830012101877 [start] => 17.02.2021 [end] => 18.02.2022 [odometr] => 300000 [station] => 632382, НОВОСИБИРСКАЯ ОБЛАСТЬ, КУЙБЫШЕВ ГОРОД, , ЭНГЕЛЬСА УЛИЦА, 58, 0, 0 [pdfBase64] => [brand] => VW [model] => Passat [regnum] => [vin] => WVWZZZ3BZ1P205797 [body] => WVWZZZ3BZ1P205797 [chassis] => ) [1] => Array ( [dk] => 067140021802015 [start] => 07.05.2018 [end] => 07.05.2019 [odometr] => 350000 [station] => [pdfBase64] => [brand] => [model] => [regnum] => [vin] => WVWZZZ3BZ1P205797 [body] => WVWZZZ3BZ1P205797 [chassis] => ) [2] => Array ( [dk] => 201306281551032835030 [start] => 28.06.2013 [end] => 28.06.2014 [odometr] => 120000 [station] => [pdfBase64] => [brand] => [model] => [regnum] => [vin] => WVWZZZ3BZ1P205797 [body] => WVWZZZ3BZ1P205797 [chassis] => ) ) )

Обратите внимание, что блок ['policy'] содержит внутри себя массив полисов, то есть полис по параметрам запроса может быть не один, хотя в большинстве случаев возвращается именно один.
Пример обращения к первому полису: $data['policy'][0].

['status'] - результат выполнения, с возможными значениями:
ok - запрос выполнен успешно и записан в базу статистики для тарификации.
no_data - не найдены данные по параметрам запроса, записывается в статистику, но не тарифицируется.
error - отсутвует связь с источником даных, не тарифицируется, не записывается в статистику.



Метод policy, является быстрым субметодом policyifo

Содержит в себе информационный блок ['policy'] - данные полиса ОСАГО на дату запроса, включая дату создания и период действия полиса.
Время исполнения метода примерно 0.5-1 сек.
Данные для запроса аналогичны policyinfo. Выходные данные аналогичны блоку ['policy'] метода policyinfo.

Производим запрос с выводом результата в виде массива:

$url='https://kbm-osago.online/apimain.php?apikey=ВашАпиКей&metod=policy&data='.$param;
$data=json_decode(file_get_contents($url),true);

Вывод результата:

print_r($data);

Array ( [0] => Array ( [policy] => ССС 0658309568 [insur] => САО ВСК [status] => Прекратил действие [is_active] => Период использования ТС не активен на запрашиваемую дату [is_follow_to_registration] => Сведения отсутствуют [has_trailer] => Нет [using] => Не определено для ранее загруженных договоров до [restriction] => Ограничен список лиц, допущенных к управлению (допущено: 3 чел.) [insurant] => Р***** Виталий Михайлович 20.08.1974 [owner] => Р***** Виталий Михайлович 20.08.1974 [kbm] => 1.00 [geo] => Ростовская обл, р-н Октябрьский, п Персиановский [amount] => 1900.80 руб. [category] => B [brand] => Volkswagen [model] => PASSAT [regnum] => O628YE61 [vin] => WVWZZZ3BZ1P205797 [power] => 110.00 [change_date] => [change_status] => [policy_state] => Array ( [policy_created_date] => 28.06.2013 [policy_start_date] => 28.06.2013 [policy_end_date] => 27.06.2014 [policy_state] => INACTIVE [policy_insurer] => САО ВСК [policy_regnum] => O628YE61 [policy_vin] => WVWZZZ3BZ1P205797 [policy_body] => [policy_chassis] => [police_brand] => Volkswagen [policy_model] => PASSAT [status] => ok ) ) )




Метод policy_state, является быстрым субметодом policyifo

Содержит в себе базовые данные полиса ОСАГО, включая дату создания и период действия полиса.
Время исполнения метода примерно 0.5-1 сек.

Формируем данные для запроса:

$param=array(
'bsoseries'=>'ХХХ',
'bsonumber'=>'0151396066'
);

Приводим данные для запроса в формат json:

$param=urlencode(json_encode($param));

Производим запрос с выводом результата в виде массива:

$url='https://kbm-osago.online/apimain.php?apikey=ВашАпиКей&metod=policy_state&data='.$param;
$data=json_decode(file_get_contents($url),true);

Вывод результата:

print_r($data);

Array ( [policy_created_date] => 17.12.2020 [policy_start_date] => 27.12.2020 [policy_end_date] => 26.12.2021 [policy_state] => ACTIVE [policy_insurer] => АО ГСК Югория [policy_regnum] => В047АО196 [policy_vin] => XTA219010E0271535 [policy_body] => [policy_chassis] => [police_brand] => ВАЗ/Lada [policy_model] => 2190/Granta [status] => ok )