Личный кабинет

Главная → Блог → Как проверить ОСАГО автоматически: полис и история полисов по VIN или госномеру через API

Страхование и ОСАГО

Как проверить ОСАГО автоматически: полис и история полисов по VIN или госномеру через API

· Редакция AvtoVinCod · 7 мин чтения

Как проверить ОСАГО автоматически: полис и история полисов по VIN или госномеру через API

Проверить ОСАГО автоматически можно двумя методами AvtoVinCod: /osago возвращает текущие полисы (страховая, серия и номер, статус, срок) по VIN, госномеру, кузову или серии и номеру полиса, а /osago-history отдаёт все полисы автомобиля за годы, включая цель использования (такси), ограничение по водителям и тип собственника. Первый подходит для проверки на входе (оформление, приёмка, размещение объявления), второй для скоринга и выявления скрытого такси. Метод истории отвечает за 15-60 секунд, поэтому вызывайте его асинхронно.

Что именно можно проверить: полис сейчас или история за годы

Это два разных вопроса, и путать их дорого. Первый: есть ли у машины действующий полис прямо сейчас. Второй: как автомобиль страховался раньше, у кого, в каком регионе и для чего. На первый отвечает API проверки полиса ОСАГО, на второй - API истории полисов ОСАГО.

В ответе /osago приходят страховая компания, серия и номер полиса, статус, срок действия, марка и модель. Этого хватает, чтобы за один запрос понять, застрахована ли машина и совпадает ли полис с тем, что вам рассказали.

В /osago-history данных больше: все полисы за годы, страховые, сроки и периоды использования, регион, цель использования (в том числе такси), ограничение по водителям и тип собственника. Персональных данных в ответе нет: ни ФИО, ни паспортов.

ЗадачаМетодВремя ответа
Есть ли действующий полис сейчас/osagoобычный синхронный запрос
Сверка полиса клиента по серии и номеру/osago?series=&number=обычный синхронный запрос
Скрытое такси, смена страховых, перерывы/osago-historyобычно 15-60 с
Скоринг перед выкупом или расчётом тарифа/osago-historyобычно 15-60 с

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

Типовая ситуация: клиент присылает скан или вводит в форму серию и номер полиса. Вы отправляете GET /osago?series=XXX&number=0000000000 и получаете данные по этому полису: страховую, статус, срок и марку с моделью.

Дальше сопоставляете ответ с заявкой. Марка и модель в полисе должны совпадать с тем, что указано в заявке или объявлении. Срок действия должен покрывать нужную дату. Статус должен быть рабочим. Любое из трёх несовпадений - повод не отказывать автоматически, а отправить кейс на ручную проверку: опечатка в серии случается куда чаще подделки.

Практический совет: в интеграции заведите три исхода, а не два. "Совпало", "не совпало, нужна проверка человеком" и "полис не найден". Последний не равен слову "поддельный": можно ошибиться в одной цифре, а данные могут отсутствовать по причинам, которые вы не видите. Метод показывает данные по полису, а юридическое решение остаётся за вашим процессом.

Проверка по VIN и госномеру: примеры запросов

Если полиса на руках нет, ищем по автомобилю. Запрос по VIN:

curl -H "Authorization: Bearer ВАШ_ТОКЕН" \
 "https://api.avtovincod.ru/osago?vin=X7TEST00000000001"

По госномеру:

curl -H "Authorization: Bearer ВАШ_ТОКЕН" \
 "https://api.avtovincod.ru/osago?plate=Т000ТТ00"

Есть также варианты ?body= для номера кузова и ?series=&number= для конкретного полиса. Прямой запрос по plate работает сам по себе, связка с другим методом не обязательна. Но если вам в любом случае нужен VIN для остальных проверок (залоги, ограничения, история регистрации), сначала вызовите получение VIN по госномеру, сохраните VIN и дальше работайте уже с ним. Так меньше путаницы с переоформленными номерами. Подробнее о построении таких цепочек - в материале проверка по госномеру для автосалонов и площадок.

В ответе смотрите на success: 1 означает, что проверка выполнена и списана, 0 - проверка не выполнена или данных нет, и это бесплатно. Если запрос попал в историю, в ответе есть блок billing с полями charged, currency, billed, balance, requestId, а в заголовках дублируются X-Charged, X-Balance и X-Request-Id. Нет блока - запрос не списан. Логируйте requestId: при спорных случаях по нему быстрее разбираться с поддержкой.

Пример на Python

import requests

TOKEN = "ВАШ_ТОКЕН"
URL = "https://api.avtovincod.ru/osago"

def check_osago(vin):
 r = requests.get(
 URL,
 params={"vin": vin},
 headers={"Authorization": f"Bearer {TOKEN}"},
 timeout=30,
 )
 data = r.json()

 if data.get("success") == 1:
 return data
 code = str(data.get("code"))
 if code == "402":
 raise RuntimeError("Пополните баланс")
 if code == "429":
 raise RuntimeError("Лимит запросов: повторить позже")
 if code == "503":
 raise RuntimeError("Источник недоступен: повторить, не тарифицируется")
 return None # данных нет, бесплатно

print(check_osago("X7TEST00000000001"))

Логика простая: 402 - вопрос к балансу, 429 - притормозите и повторите с паузой, 503 - сбой источника, он не тарифицируется, поэтому смело ставьте в очередь на повтор. Остальные ошибки приходят в формате {"success":0,"error":"текст","code":"КОД"}.

Отлаживайтесь на тестовых значениях: VIN X7TEST00000000001 и госномер Т000ТТ00. Ответ приходит образцом по схеме метода, бесплатно, с полем "testMode": true. Токен нужен и для тестов.

История полисов: что она раскрывает

Один действующий полис говорит мало. История - другое дело. Видно, как часто менялась страховая, были ли перерывы между полисами и в каком регионе машину страховали. Три страховые за два года и дыра в полгода без полиса - повод задать продавцу вопросы.

Самое ценное поле для оценки риска - цель использования. Если в истории встречается такси, а в объявлении "один владелец, личное авто", расхождение налицо. Ограничение по водителям и тип собственника дополняют картину: полис без ограничений на юрлицо ведёт себя иначе, чем полис на одного водителя-физлица. Это признаки эксплуатации, а не приговор, но для скоринга они полезны.

Читайте историю в связке с соседними методами. Проверка такси по разрешениям покажет действующие и аннулированные разрешения, а проверка каршеринга - использование машины в каршеринге. Если цель "такси" в ОСАГО подтверждается разрешением, картина целостная. Если разрешений нет, а полис с такси был - машина могла работать в серой зоне или разрешение давно аннулировано.

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

Ответ /osago-history занимает обычно 15-60 секунд. Поставьте клиентский таймаут от 60 секунд, лучше 90. В пользовательском интерфейсе не держите открытое соединение: создайте задачу в очереди, покажите "проверяем историю" и обновите карточку, когда ответ придёт. При 503 или 429 повторяйте с нарастающей паузой. Короткую проверку /osago показывайте пользователю сразу, а историю подгружайте следом.

Сценарии для бизнеса

Страховые и агрегаторы. Перед расчётом сверяете заявленную цель использования с историей: если клиент пишет "личная", а в прошлых полисах значится такси, тариф считается иначе. Заодно видна предыдущая страховая.

Выкуп и трейд-ин. Продавец говорит "ездил сам, страховался один раз у одной компании". История полисов это подтверждает или опровергает за минуту. Оценщик получает аргумент для торга, а не ощущение.

Маркетплейсы и доски объявлений. Автоматический бейдж "есть действующее ОСАГО" строится на /osago при публикации объявления. Дёшево и без участия модератора.

Автопарки и лизинг. Раз в сутки ночным заданием проходите по парку и находите машины, у которых полис заканчивается через 14 дней. Список уходит ответственному, никто не выезжает на линию без страховки.

Автосалоны. Перед приёмкой на комиссию достаточно VIN или госномера: полис и история за пару минут. Когда нужен весь пакет проверок, а не только страхование, смотрите сводный отчёт по VIN для бизнеса.

Сколько это стоит и как не платить лишнего

Базовая цена /osago - 1,5 ₽ за запрос. История полисов в каталоге идёт отдельным тарифом, актуальные значения всегда в prices.json (поля price_individual и price_company).

Правило списания: платите за выполненную проверку. Ошибки и сбои источника бесплатны: success: 0 и код 503 ничего не стоят. Метод /osago относится к реестровым проверкам, поэтому точное правило тарификации для случая с пустым результатом сверяйте в разделе "Тарификация" его документации, а по факту списания ориентируйтесь на блок billing.

Как экономить. Кэшируйте результат по VIN на срок действия полиса: если полис действует до октября, повторять запрос на тот же автомобиль каждый день незачем. Не вызывайте историю там, где достаточно текущего полиса. И не запускайте проверку на каждый просмотр карточки, только на событие: публикация, заявка, приёмка.

Расчёт на 10 000 проверок /osago в месяц: 10 000 × 1,5 ₽ = 15 000 ₽. Если из них 30% повторы по одним и тем же VIN и вы их кэшируете, платных запросов остаётся 7 000, то есть 10 500 ₽. Экономия 4 500 ₽ только на кэше.

Как подключиться за 10 минут

Регистрация в личном кабинете занимает минуту, токен выдаётся сразу. Пополнение от 100 ₽ банковской картой, чек приходит на email. Договора и пробного периода нет, согласований тоже. Депозит действует 90 дней.

Сначала прогоните интеграцию на тестовых значениях: бесплатно, с "testMode": true. Потом переключайтесь на реальные VIN и госномера. Юрлицам доступна оплата по счёту: акт и акт сверки в конце месяца.

Если вы собираете ИИ-агента, который сам проверяет машины по запросу менеджера, подключите MCP-сервер AvtoVinCod: адрес https://api.avtovincod.ru/mcp, авторизация через Authorization: Bearer. Для этой задачи есть инструмент osago_check, вызов тарифицируется как обычный запрос к методу.

Частые вопросы

Можно ли проверить ОСАГО только по госномеру?

Да. Методы /osago и /osago-history принимают параметр plate, отдельно получать VIN не обязательно. Если VIN нужен для других проверок, его можно получить через /gos2vin.

Чем отличается проверка полиса от истории полисов ОСАГО?

/osago показывает текущие полисы: страховую, серию и номер, статус, срок, марку и модель. /osago-history даёт все полисы за годы с периодами, регионом, целью использования, ограничением по водителям и типом собственника.

Как проверить подлинность полиса по серии и номеру через API?

Отправьте GET /osago?series=...&number=... и сверьте страховую, статус, срок и марку с моделью с данными заявки или объявления. Результат сверки - сигнал для вашего процесса, окончательное решение принимаете вы.

Показывает ли API персональные данные водителей и собственника?

Нет. В истории полисов нет персональных данных, только тип собственника, ограничение по водителям, регион и цель использования.

Можно ли узнать КБМ по этому API?

В описании методов /osago и /osago-history такого поля нет, поэтому полагаться на КБМ через них нельзя.

Сколько времени занимает запрос истории полисов?

Обычно 15-60 секунд. Ставьте клиентский таймаут от 60 секунд и вызывайте метод асинхронно, через очередь задач.

Что делать, если полис не найден: это поддельный полис?

Не обязательно. Возможна опечатка в серии или номере, либо данные просто не найдены. Перепроверьте ввод, попробуйте поиск по VIN или госномеру и отправьте спорный случай на ручную проверку.

Тарифицируется ли запрос, если данных нет?

Ошибки и сбои источника (например, 503) и ответы с success: 0 бесплатны. Для выполненных реестровых проверок правило смотрите в разделе "Тарификация" документации метода, а факт списания - в блоке billing ответа.

Проверка автомобилей через API

Без договора и долгих согласований: пополните баланс от 100 ₽ и проверяйте реальные машины. Тестовые значения бесплатно, документация с примерами на популярных языках.

Получить токен   Документация API

Читайте также