Главная → Документация → CARFAX: история авто из США и Канады
CARFAX: история авто из США и Канады
Отчёт CARFAX по VIN автомобиля из США или Канады: история регистраций и владельцев, пробеги, ДТП и повреждения, обслуживание у дилеров, статус титула (salvage, rebuilt и другие). Приходит оригинал PDF на английском, тот же отчёт на русском страницей и разобранный JSON на русском. Полезно перед покупкой автомобиля, привезённого из Северной Америки.
Аутентификация
Токен передаётся заголовком Authorization: Bearer <токен> или параметром ?token=. Токен один для всех API, он в личном кабинете.
Эндпоинт
GET https://api.avtovincod.ru/usa-history
Можно и POST с теми же параметрами в теле формы.
Параметры
| Параметр | Описание |
|---|---|
vin | VIN, 17 символов (латиница и цифры, без I, O, Q) - заказ отчёта |
task | номер задачи (taskId из ответа на заказ) - опрос готовности |
brand | необязательно: марка латиницей. Сервис определяет её по VIN сам; не определилась - отчёт заказывается без неё. brand=- - заказать без марки |
Марку сервис определяет по VIN сам (коды производителей NHTSA и наша база). Если определить её не удалось, отчёт заказывается без марки: на результат это не влияет, передавать brand не нужно. Какую марку подставим, можно узнать бесплатно: GET /vv-brand?vin=VIN&method=usa_history (ответ: brand, required, candidates).
Как работает: заказ, номер задачи, опрос
Отчёт формируется 5-15 минут (иногда дольше), поэтому метод асинхронный, как ДТП по базе ГИБДД:
- Заказ:
GET /usa-history?vin=VIN. Ответ сразу:status: "processing"и номер задачиtaskId. Бесплатно. - Опрос:
GET /usa-history?task=taskIdне чаще, чем черезpollAfterSecсекунд (обычно 30). Пока отчёт готовится - сноваprocessingи оценкаeta_sec. Опросы бесплатны. - Готово:
status: "done", ссылки на файлы отчёта вreport.filesи блокbilling- деньги списываются один раз, в этот момент. Повторный опрос той же задачи отдаёт тот же ответ без нового списания.
Задачу не нужно держать открытой: отчёт досчитается на сервере, даже если вы перестали опрашивать, и будет ждать по taskId. Повторный заказ того же VIN, пока первый готовится, вернёт тот же taskId (второй раз не платите).
Проверка наличия данных перед заказом. Перед каждым заказом сервис бесплатно спрашивает источник, есть ли по VIN данные для этого отчёта, ничего передавать для этого не нужно. Данных нет: ответ приходит сразу, NOT_AVAILABLE с полем "precheck": true, без задачи и без списания. Источник проверки не ответил: отчёт заказывается как обычно.
У источника проверки очередь (не чаще одного запроса в 3 секунды). Если она занята, сервис сам ждёт и повторяет до 25 секунд, поэтому ответ на заказ иногда приходит через 20-30 секунд: ставьте таймаут HTTP-клиента не меньше 60 секунд. Не дождались - ответ 429 SERVICE_BUSY с полем retryAfterSec (и заголовком Retry-After): повторите тот же запрос через указанное число секунд, деньги не списаны. Узнать заранее, в каких отчётах по VIN есть данные, можно методом Наличие данных по VIN.
Пример запроса
curl -H "Authorization: Bearer $TOKEN" "https://api.avtovincod.ru/usa-history?vin=3VWJ17AT9HM628325"
# через 30 секунд и далее, пока status не станет done:
curl -H "Authorization: Bearer $TOKEN" "https://api.avtovincod.ru/usa-history?task=3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c"
Пример ответа
1. Заказ принят
{
"success": 1,
"status": "processing",
"taskId": "3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c",
"query": {
"vin": "3VWJ17AT9HM628325"
},
"eta_sec": 600,
"pollAfterSec": 30,
"poll": "GET /usa-history?task=3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c"
}
2. Опрос: ещё готовится
{
"success": 1,
"status": "processing",
"taskId": "3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c",
"query": {
"vin": "3VWJ17AT9HM628325"
},
"eta_sec": 420,
"pollAfterSec": 30,
"poll": "GET /usa-history?task=3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c",
"note": "Отчёт получен, собираем все файлы."
}
3. Опрос: отчёт готов
{
"success": 1,
"status": "done",
"found": 1,
"taskId": "3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c",
"query": {
"vin": "3VWJ17AT9HM628325"
},
"report": {
"code": "usa_history",
"title": "CARFAX: история авто из США и Канады",
"vin": "3VWJ17AT9HM628325",
"brand": "VW",
"created_at": "2026-11-01 12:14:05",
"files": [
{
"type": "pdf",
"name": "usa_history_3VWJ17AT9HM628325.pdf",
"size": 538112,
"url": "https://api.avtovincod.ru/vv-file/Qm9kZXJfdGVzdF90b2tlbl8xMjM0NTY3"
},
{
"type": "html",
"name": "usa_history_3VWJ17AT9HM628325_ru.html",
"size": 41870,
"url": "https://api.avtovincod.ru/vv-file/UnVfdGVzdF90b2tlbl83NjU0MzIxMDk4"
}
],
"web_url": null,
"text": null,
"files_until": "2027-01-30",
"data": {
"schema": "carfax",
"lang": "ru",
"vehicle": {
"title": "2017 Volkswagen Beetle SE",
"year": 2017,
"make": "Volkswagen",
"model": "Beetle SE",
"vin": "3VWJ17AT9HM628325",
"body": "Хэтчбек, 2 дв.",
"body_en": "Hatchback 2 DR",
"engine": "1.8 л, 4 цил.",
"engine_en": "1.8L I4 F DOHC 16V",
"fuel": "бензин",
"fuel_en": "Gasoline",
"drive": "Передний привод",
"drive_en": "Front wheel drive",
"odometer_last": {
"mi": 12925,
"km": 20801
}
},
"summary": {
"service_records": 5,
"open_recalls_min": 1,
"owners": 2,
"usage": "Личная машина",
"usage_en": "Personal Vehicle",
"last_state": "Калифорния",
"last_state_en": "California",
"branded_title": "Salvage (после тотальной гибели)",
"branded_title_en": "Salvage",
"total_loss": true,
"accidents": 4,
"damage": "severe",
"structural_damage": false,
"airbag_deployed": false,
"odometer_problem": false,
"title_problem": true,
"warranty": "Гарантия аннулирована",
"lien": true
},
"highlights": [
{
"text": "Записей об обслуживании: 5",
"text_en": "5 Service History Records"
},
{
"text": "Открытых отзывов: не меньше 1",
"text_en": "At Least 1 Open Recall"
},
{
"text": "Владельцев: 2",
"text_en": "2 Previous Owners"
}
],
"accidents": [
{
"date": "2020-06-19",
"title": "ДТП: тяжёлые повреждения, столкновение с другим автомобилем",
"title_en": "Accident reported: severe damage with another motor vehicle",
"details": [],
"details_en": [],
"severity_code": "severe"
},
{
"date": "2020-06-19",
"title": "Машина признана тотальной гибелью",
"title_en": "TOTAL LOSS VEHICLE",
"details": [
"Страховая компания признала машину тотальной гибелью",
"Повреждения от столкновения"
],
"details_en": [
"Vehicle declared a total loss by an insurance company",
"Collision damage reported"
],
"severity_code": null
}
],
"checks": [
{
"key": "total_loss",
"title": "Тотальная гибель",
"title_en": "Total Loss",
"note": "Тотальная гибель: 19.06.2020.",
"note_en": "Total Loss Reported: 06/19/2020.",
"values": [
{
"owner": 1,
"value": "Тотальная гибель",
"value_en": "Total Loss Reported",
"status_code": "problem"
},
{
"owner": 2,
"value": "Новых проблем нет",
"value_en": "No New Issues Reported",
"status_code": "ok"
}
]
},
{
"key": "accident",
"title": "ДТП и повреждения",
"title_en": "Accident / Damage",
"note": "В DMV есть отметки о проблемах с титулом. ДТП: 19.06.2020 и 08.07.2020. Повреждение: 16.07.2020.",
"note_en": "DMV title problems reported. Accidents reported: 06/19/2020 and 07/08/2020. Damage reported: 07/16/2020.",
"values": [
{
"owner": 1,
"value": "ДТП",
"value_en": "Accident Reported",
"status_code": "warning"
},
{
"owner": 2,
"value": "Тяжёлые повреждения",
"value_en": "Severe Damage",
"status_code": "problem"
}
]
}
],
"title_history": [
{
"key": "damage_brands",
"title": "Отметки о повреждениях в титуле",
"title_en": "Damage Brands",
"note": "Salvage | Junk | Rebuilt | Fire | Flood | Hail | Lemon (тотальная гибель, утиль, восстановлена, пожар, затопление, град, лимон)",
"note_en": "Salvage | Junk | Rebuilt | Fire | Flood | Hail | Lemon",
"values": [
{
"owner": 1,
"value": "Проблем нет",
"value_en": "No Problem",
"status_code": "ok"
},
{
"owner": 2,
"value": "Внимание! Есть проблема",
"value_en": "Alert! Problem Found",
"status_code": "problem"
}
]
}
],
"title_alert": "В DMV штата сообщили о серьёзных проблемах. Машина не подходит под гарантию выкупа CARFAX (Buyback Guarantee).",
"title_alert_en": "Severe problems were reported by a state Department of Motor Vehicles (DMV). This vehicle does not qualify for the CARFAX Buyback Guarantee.",
"ownership": [
{
"owner": 1,
"year_purchased": 2017,
"type": "Личное",
"type_en": "Personal",
"length": "2 г. 11 мес.",
"length_en": "2 yrs. 11 mo.",
"states": "Калифорния",
"states_en": "California",
"miles_per_year": 4737,
"km_per_year": 7623,
"odometer_mi": 12925,
"odometer_km": 20801
},
{
"owner": 2,
"year_purchased": 2020,
"type": "Личное",
"type_en": "Personal",
"length": "6 г. 1 мес.",
"length_en": "6 yrs. 1 mo.",
"states": "Калифорния, Иллинойс",
"states_en": "California, Illinois",
"miles_per_year": null,
"km_per_year": null,
"odometer_mi": 12925,
"odometer_km": 20801
}
],
"history": [
{
"owner": 1,
"title": "Владелец 1",
"purchased": 2017,
"usage": "Личная машина",
"usage_en": "Personal Vehicle",
"miles_per_year": 4737,
"km_per_year": 7623,
"events": [
{
"date": "2017-05-09",
"odometer_mi": 11,
"odometer_km": 18,
"source": "Kearny Mesa Volkswagen",
"source_en": "Kearny Mesa Volkswagen",
"location": "San Diego, CA",
"phone": "858-300-8160",
"web": "vwofkearnymesa.com",
"title_no": null,
"comments": [
"Обслуживание",
"Предпродажная подготовка выполнена",
"Мойка/детейлинг"
],
"comments_en": [
"Vehicle serviced",
"Pre-delivery inspection completed",
"Vehicle washed/detailed"
]
},
{
"date": "2017-09-28",
"odometer_mi": null,
"odometer_km": null,
"source": "Регистрирующий орган (DMV), Калифорния",
"source_en": "California Motor Vehicle Dept.",
"location": "San Diego, CA",
"phone": null,
"web": null,
"title_no": null,
"comments": [
"Выдан или обновлён титул",
"Первый владелец",
"Оформлена как личная машина"
],
"comments_en": [
"Title issued or updated",
"First owner reported",
"Titled or registered as personal vehicle"
]
}
]
},
{
"owner": 2,
"title": "Владелец 2",
"purchased": 2020,
"usage": "Личная машина",
"usage_en": "Personal Vehicle",
"miles_per_year": null,
"km_per_year": null,
"events": [
{
"date": "2020-09-08",
"odometer_mi": null,
"odometer_km": null,
"source": "Регистрирующий орган (DMV), Калифорния",
"source_en": "California Motor Vehicle Dept.",
"location": "Sacramento, CA",
"phone": null,
"web": null,
"title_no": null,
"comments": [
"Новый владелец",
"Выдан титул Salvage (после тотальной гибели)"
],
"comments_en": [
"New owner reported",
"SALVAGE TITLE/CERTIFICATE ISSUED"
]
}
]
}
],
"recalls": [
{
"date": "2024-10-30",
"nhtsa": "24V834",
"recall": "Отзыв № 69GQ: фронтальная подушка безопасности водителя",
"recall_en": "69GQ DRIVER FRONTAL AIRBAG",
"status": "Статус: есть способ устранения",
"status_en": "Remedy Available"
}
],
"extra": [],
"report_date": "2026-11-01 17:50:50 CST",
"translated": true
}
},
"billing": {
"charged": 389,
"currency": "RUB",
"billed": true,
"balance": 1611,
"requestId": 1234567
}
}
Что возвращает
| Поле | Значение |
|---|---|
status | processing - отчёт готовится; done - готов; error - не сформирован (бесплатно) |
taskId | номер задачи для опроса ?task= |
eta_sec, pollAfterSec | примерно сколько ждать и через сколько секунд спросить снова |
found | 1 - отчёт есть |
report.files[] | файлы отчёта: type (pdf, image, txt, html - страница отчёта, открывается в браузере), name, size в байтах, url - ссылка для скачивания |
report.web_url | ссылка на веб-версию отчёта, если она отдаётся для этого метода; иначе null. Поле есть всегда |
report.text | текст отчёта, если источник прислал его текстом; иначе null |
report.data | отчёт на русском в JSON: главное, ДТП, проверки по владельцам, титул, владельцы, хронология, отзывы (ниже) |
report.files_until | до какой даты файлы можно скачать |
report.brand, report.created_at | марка, по которой заказан отчёт, и время готовности |
Файлы. Ссылки https://api.avtovincod.ru/vv-file/... открываются без токена (ссылка сама служит доступом, не публикуйте её), файл приходит с понятным именем usa_history_VIN.pdf. Срок хранения - 90 дней (files_until), потом ссылка отвечает 410 FILE_GONE: сохраните файлы к себе. Параметр ?dl=1 - скачать, а не открыть в браузере. PDF - оригинал источника, мы его не меняем; страница usa_history_VIN_ru.html - тот же отчёт на русском.
Отчёт на русском: report.data и страница
Кроме оригинала PDF на английском приходят тот же отчёт на русском страницей (файл html, имя usa_history_VIN_ru.html) и в JSON (report.data). Рядом с каждым переведённым значением - оригинал с окончанием _en. Названия дилеров и мастерских - как в отчёте. Пробег - в милях и километрах, даты - ГГГГ-ММ-ДД.
| Поле | Значение |
|---|---|
schema, lang | "carfax" и "ru" |
vehicle | машина: title, vin, year, make, model, body, engine, fuel, drive, odometer_last (mi, km) |
summary | главное: service_records, open_recalls_min, owners, usage, last_state, branded_title (особая отметка в титуле, например Salvage), total_loss, accidents (сколько ДТП и повреждений), damage (none, minor, moderate, severe, reported), structural_damage, airbag_deployed, odometer_problem, title_problem, warranty, lien; null - сведений нет |
highlights[] | строки «главного» в начале отчёта: text |
accidents[] | ДТП и повреждения: date, title, details[], severity_code |
checks[], title_history[] | проверки по владельцам (тотальная гибель, силовая структура, подушки, пробег, ДТП, отзывы, гарантия; отметки в титуле): key, title, note, values[] - owner, value, status_code (ok, warning, problem, unknown); title_alert - предупреждение о титуле |
ownership[] | владельцы: owner, year_purchased, type, length, states, miles_per_year, km_per_year, odometer_mi, odometer_km |
history[] | хронология по владельцам: title, owner, purchased, usage, events[] - date (или null, если в отчёте «Not Reported»), odometer_mi, odometer_km, source, location, phone, web, title_no, comments[] |
recalls[] | отзывные кампании: date, nhtsa, recall, status |
extra[], translated | сведения вне разделов выше; false - часть фраз пока на английском |
Каждое значение сверено с текстом PDF. Если разобрать отчёт не удалось, поля report.data и страницы на русском нет, а PDF приходит как обычно, цена та же. При расхождении перевода и оригинала верен PDF.
Коды ошибок
Все ошибки бесплатны.
| Код | Значение |
|---|---|
NO_TOKEN, TOKEN_INVALID | токен не передан или недействителен |
NOT_ALLOWED | API не подключён вашему токену |
INSUFFICIENT_BALANCE | недостаточно средств: при заказе учитываются и отчёты, которые уже готовятся |
RATE_LIMIT, TOO_MANY_PARALLEL | слишком часто или слишком много отчётов готовится одновременно (до 20) |
INPUT_REQUIRED, BAD_VIN | не передан VIN или он неверный |
BAD_TASK, TASK_NOT_FOUND | номер задачи неверный, чужой или от другого метода |
NOT_AVAILABLE | отчёт не сформирован: в источнике нет данных по этому VIN |
SERVICE_BUSY (429) | очередь проверки наличия данных занята: повторите через retryAfterSec секунд |
PROVIDER_TIMEOUT | отчёт не получен за 6 часов; закажите позже |
PROVIDER_FAIL, SERVICE_UNAVAILABLE | сбой источника или сервис временно недоступен; повторите позже |
Примеры кода: PHP, Python, JavaScript, Go, Java, C#, Ruby, 1С
Примеры готовы к запуску: токен берётся из переменной окружения AVC_TOKEN, а в запросе стоит тестовое значение (vin=X7TEST00000000001). По тестовому VIN сразу приходит настоящий готовый отчёт по VIN 3VWJ17AT9HM628325 (status: "done", файлы и report.data, как после заказа), без задачи и ожидания: бесплатно, без списания и даже при нулевом балансе, с полем "testMode": true. Так интеграцию можно собрать и проверить до первого платного запроса. Все тестовые значения.
curl -s --max-time 90 -G "https://api.avtovincod.ru/usa-history" \
--data-urlencode "vin=X7TEST00000000001" \
-H "Authorization: Bearer $AVC_TOKEN"<?php
$url = 'https://api.avtovincod.ru/usa-history?' . http_build_query(['vin' => 'X7TEST00000000001']);
$ch = curl_init($url);
curl_setopt_array($ch, [CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 90,
CURLOPT_HTTPHEADER => ['Authorization: Bearer ' . getenv('AVC_TOKEN')]]);
$d = json_decode(curl_exec($ch), true);
echo $d['success'] ? json_encode($d, JSON_UNESCAPED_UNICODE) : $d['code'] . ': ' . $d['error'];import os, requests
r = requests.get("https://api.avtovincod.ru/usa-history", params={"vin": "X7TEST00000000001"},
headers={"Authorization": "Bearer " + os.environ["AVC_TOKEN"]}, timeout=90)
d = r.json()
print(d if d.get("success") else f'{d["code"]}: {d["error"]}')// Node.js 18+, файл .mjs (await на верхнем уровне)
const url = "https://api.avtovincod.ru/usa-history?" + new URLSearchParams({ vin: "X7TEST00000000001" });
const res = await fetch(url, { headers: { Authorization: `Bearer ${process.env.AVC_TOKEN}` },
signal: AbortSignal.timeout(90000) });
const d = await res.json();
console.log(d.success ? d : `${d.code}: ${d.error}`);package main
import (
"fmt"
"io"
"net/http"
"net/url"
"os"
"time"
)
func main() {
q := url.Values{}
q.Set("vin", "X7TEST00000000001")
req, _ := http.NewRequest("GET", "https://api.avtovincod.ru/usa-history?"+q.Encode(), nil)
req.Header.Set("Authorization", "Bearer "+os.Getenv("AVC_TOKEN"))
resp, err := (&http.Client{Timeout: 90 * time.Second}).Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(resp.StatusCode, string(body))
}// Java 11+
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.*;
import java.nio.charset.StandardCharsets;
import java.time.Duration;
public class AvtoVinCod {
public static void main(String[] args) throws Exception {
String q = "vin=" + URLEncoder.encode("X7TEST00000000001", StandardCharsets.UTF_8);
HttpRequest req = HttpRequest.newBuilder(URI.create("https://api.avtovincod.ru/usa-history?" + q))
.header("Authorization", "Bearer " + System.getenv("AVC_TOKEN"))
.timeout(Duration.ofSeconds(90)).GET().build();
HttpResponse<String> resp = HttpClient.newHttpClient()
.send(req, HttpResponse.BodyHandlers.ofString());
System.out.println(resp.statusCode() + " " + resp.body());
}
}// .NET 6+
using System.Net.Http.Headers;
using var http = new HttpClient { Timeout = TimeSpan.FromSeconds(90) };
http.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", Environment.GetEnvironmentVariable("AVC_TOKEN"));
var url = "https://api.avtovincod.ru/usa-history?" + "vin=" + Uri.EscapeDataString("X7TEST00000000001");
var resp = await http.GetAsync(url);
Console.WriteLine((int)resp.StatusCode + " " + await resp.Content.ReadAsStringAsync());require "net/http"
require "json"
uri = URI("https://api.avtovincod.ru/usa-history")
uri.query = URI.encode_www_form(vin: "X7TEST00000000001")
req = Net::HTTP::Get.new(uri)
req["Authorization"] = "Bearer #{ENV["AVC_TOKEN"]}"
res = Net::HTTP.start(uri.host, uri.port, use_ssl: true, read_timeout: 90) { |h| h.request(req) }
d = JSON.parse(res.body)
puts d["success"] == 1 ? d : "#{d["code"]}: #{d["error"]}"Токен = "ВАШ_ТОКЕН";
Соединение = Новый HTTPСоединение("api.avtovincod.ru", 443, , , , 90, Новый ЗащищенноеСоединениеOpenSSL);
Запрос = Новый HTTPЗапрос("/usa-history?" + "vin=" + КодироватьСтроку("X7TEST00000000001", СпособКодированияСтроки.КодировкаURL));
Запрос.Заголовки.Вставить("Authorization", "Bearer " + Токен);
Ответ = Соединение.Получить(Запрос);
Чтение = Новый ЧтениеJSON;
Чтение.УстановитьСтроку(Ответ.ПолучитьТелоКакСтроку("UTF-8"));
Данные = ПрочитатьJSON(Чтение);
Чтение.Закрыть();
Если Данные.success = 1 Тогда
Сообщить("Проверка выполнена");
Иначе
Сообщить(Данные.code + ": " + Данные.error);
КонецЕсли;Заказ и опрос готовности (Python)
import os, time, requests
URL = "https://api.avtovincod.ru/usa-history"
H = {"Authorization": "Bearer " + os.environ["AVC_TOKEN"]}
while True: # заказ; очередь проверки наличия данных занята (429 SERVICE_BUSY) - повторить через retryAfterSec
d = requests.get(URL, params={"vin": "3VWJ17AT9HM628325"}, headers=H, timeout=90).json()
if d.get("code") != "SERVICE_BUSY": break
time.sleep(d.get("retryAfterSec", 10))
while d.get("success") == 1 and d.get("status") == "processing":
time.sleep(max(10, d.get("pollAfterSec", 30)))
d = requests.get(URL, params={"task": d["taskId"]}, headers=H, timeout=90).json()
if d.get("success") == 1:
for f in d["report"]["files"]:
open(f["name"], "wb").write(requests.get(f["url"], timeout=120).content)
print("готово, списано", d.get("billing", {}).get("charged"))
else:
print(d["code"], d["error"])
Бесплатных тестовых периодов и долгих согласований нет: пополните баланс в личном кабинете и сразу проверяйте реальные машины. Токен выдаётся при регистрации, деньги списываются только по правилам метода (раздел "Тарификация"). Нужен доступ из ИИ-ассистента: MCP-сервер.
Примеры ответов: успешный, ошибка, нет данных
Успешный запрос
GET https://api.avtovincod.ru/usa-history?task=3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c
Authorization: Bearer ВАШ_ТОКЕН
HTTP 200, status: "done": отчёт готов, одно списание по цене метода, сумма и остаток в блоке billing (цифры в примере условные). Ответ на заказ и опросы до готовности блока billing не содержат: они бесплатны.
{
"success": 1,
"status": "done",
"found": 1,
"taskId": "3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c",
"query": {
"vin": "3VWJ17AT9HM628325"
},
"report": {
"code": "usa_history",
"title": "CARFAX: история авто из США и Канады",
"vin": "3VWJ17AT9HM628325",
"brand": "VW",
"created_at": "2026-11-01 12:14:05",
"files": [
{
"type": "pdf",
"name": "usa_history_3VWJ17AT9HM628325.pdf",
"size": 538112,
"url": "https://api.avtovincod.ru/vv-file/Qm9kZXJfdGVzdF90b2tlbl8xMjM0NTY3"
},
{
"type": "html",
"name": "usa_history_3VWJ17AT9HM628325_ru.html",
"size": 41870,
"url": "https://api.avtovincod.ru/vv-file/UnVfdGVzdF90b2tlbl83NjU0MzIxMDk4"
}
],
"web_url": null,
"text": null,
"files_until": "2027-01-30",
"data": {
"schema": "carfax",
"lang": "ru",
"vehicle": {
"title": "2017 Volkswagen Beetle SE",
"year": 2017,
"make": "Volkswagen",
"model": "Beetle SE",
"vin": "3VWJ17AT9HM628325",
"body": "Хэтчбек, 2 дв.",
"body_en": "Hatchback 2 DR",
"engine": "1.8 л, 4 цил.",
"engine_en": "1.8L I4 F DOHC 16V",
"fuel": "бензин",
"fuel_en": "Gasoline",
"drive": "Передний привод",
"drive_en": "Front wheel drive",
"odometer_last": {
"mi": 12925,
"km": 20801
}
},
"summary": {
"service_records": 5,
"open_recalls_min": 1,
"owners": 2,
"usage": "Личная машина",
"usage_en": "Personal Vehicle",
"last_state": "Калифорния",
"last_state_en": "California",
"branded_title": "Salvage (после тотальной гибели)",
"branded_title_en": "Salvage",
"total_loss": true,
"accidents": 4,
"damage": "severe",
"structural_damage": false,
"airbag_deployed": false,
"odometer_problem": false,
"title_problem": true,
"warranty": "Гарантия аннулирована",
"lien": true
},
"highlights": [
{
"text": "Записей об обслуживании: 5",
"text_en": "5 Service History Records"
},
{
"text": "Открытых отзывов: не меньше 1",
"text_en": "At Least 1 Open Recall"
},
{
"text": "Владельцев: 2",
"text_en": "2 Previous Owners"
}
],
"accidents": [
{
"date": "2020-06-19",
"title": "ДТП: тяжёлые повреждения, столкновение с другим автомобилем",
"title_en": "Accident reported: severe damage with another motor vehicle",
"details": [],
"details_en": [],
"severity_code": "severe"
},
{
"date": "2020-06-19",
"title": "Машина признана тотальной гибелью",
"title_en": "TOTAL LOSS VEHICLE",
"details": [
"Страховая компания признала машину тотальной гибелью",
"Повреждения от столкновения"
],
"details_en": [
"Vehicle declared a total loss by an insurance company",
"Collision damage reported"
],
"severity_code": null
}
],
"checks": [
{
"key": "total_loss",
"title": "Тотальная гибель",
"title_en": "Total Loss",
"note": "Тотальная гибель: 19.06.2020.",
"note_en": "Total Loss Reported: 06/19/2020.",
"values": [
{
"owner": 1,
"value": "Тотальная гибель",
"value_en": "Total Loss Reported",
"status_code": "problem"
},
{
"owner": 2,
"value": "Новых проблем нет",
"value_en": "No New Issues Reported",
"status_code": "ok"
}
]
},
{
"key": "accident",
"title": "ДТП и повреждения",
"title_en": "Accident / Damage",
"note": "В DMV есть отметки о проблемах с титулом. ДТП: 19.06.2020 и 08.07.2020. Повреждение: 16.07.2020.",
"note_en": "DMV title problems reported. Accidents reported: 06/19/2020 and 07/08/2020. Damage reported: 07/16/2020.",
"values": [
{
"owner": 1,
"value": "ДТП",
"value_en": "Accident Reported",
"status_code": "warning"
},
{
"owner": 2,
"value": "Тяжёлые повреждения",
"value_en": "Severe Damage",
"status_code": "problem"
}
]
}
],
"title_history": [
{
"key": "damage_brands",
"title": "Отметки о повреждениях в титуле",
"title_en": "Damage Brands",
"note": "Salvage | Junk | Rebuilt | Fire | Flood | Hail | Lemon (тотальная гибель, утиль, восстановлена, пожар, затопление, град, лимон)",
"note_en": "Salvage | Junk | Rebuilt | Fire | Flood | Hail | Lemon",
"values": [
{
"owner": 1,
"value": "Проблем нет",
"value_en": "No Problem",
"status_code": "ok"
},
{
"owner": 2,
"value": "Внимание! Есть проблема",
"value_en": "Alert! Problem Found",
"status_code": "problem"
}
]
}
],
"title_alert": "В DMV штата сообщили о серьёзных проблемах. Машина не подходит под гарантию выкупа CARFAX (Buyback Guarantee).",
"title_alert_en": "Severe problems were reported by a state Department of Motor Vehicles (DMV). This vehicle does not qualify for the CARFAX Buyback Guarantee.",
"ownership": [
{
"owner": 1,
"year_purchased": 2017,
"type": "Личное",
"type_en": "Personal",
"length": "2 г. 11 мес.",
"length_en": "2 yrs. 11 mo.",
"states": "Калифорния",
"states_en": "California",
"miles_per_year": 4737,
"km_per_year": 7623,
"odometer_mi": 12925,
"odometer_km": 20801
},
{
"owner": 2,
"year_purchased": 2020,
"type": "Личное",
"type_en": "Personal",
"length": "6 г. 1 мес.",
"length_en": "6 yrs. 1 mo.",
"states": "Калифорния, Иллинойс",
"states_en": "California, Illinois",
"miles_per_year": null,
"km_per_year": null,
"odometer_mi": 12925,
"odometer_km": 20801
}
],
"history": [
{
"owner": 1,
"title": "Владелец 1",
"purchased": 2017,
"usage": "Личная машина",
"usage_en": "Personal Vehicle",
"miles_per_year": 4737,
"km_per_year": 7623,
"events": [
{
"date": "2017-05-09",
"odometer_mi": 11,
"odometer_km": 18,
"source": "Kearny Mesa Volkswagen",
"source_en": "Kearny Mesa Volkswagen",
"location": "San Diego, CA",
"phone": "858-300-8160",
"web": "vwofkearnymesa.com",
"title_no": null,
"comments": [
"Обслуживание",
"Предпродажная подготовка выполнена",
"Мойка/детейлинг"
],
"comments_en": [
"Vehicle serviced",
"Pre-delivery inspection completed",
"Vehicle washed/detailed"
]
},
{
"date": "2017-09-28",
"odometer_mi": null,
"odometer_km": null,
"source": "Регистрирующий орган (DMV), Калифорния",
"source_en": "California Motor Vehicle Dept.",
"location": "San Diego, CA",
"phone": null,
"web": null,
"title_no": null,
"comments": [
"Выдан или обновлён титул",
"Первый владелец",
"Оформлена как личная машина"
],
"comments_en": [
"Title issued or updated",
"First owner reported",
"Titled or registered as personal vehicle"
]
}
]
},
{
"owner": 2,
"title": "Владелец 2",
"purchased": 2020,
"usage": "Личная машина",
"usage_en": "Personal Vehicle",
"miles_per_year": null,
"km_per_year": null,
"events": [
{
"date": "2020-09-08",
"odometer_mi": null,
"odometer_km": null,
"source": "Регистрирующий орган (DMV), Калифорния",
"source_en": "California Motor Vehicle Dept.",
"location": "Sacramento, CA",
"phone": null,
"web": null,
"title_no": null,
"comments": [
"Новый владелец",
"Выдан титул Salvage (после тотальной гибели)"
],
"comments_en": [
"New owner reported",
"SALVAGE TITLE/CERTIFICATE ISSUED"
]
}
]
}
],
"recalls": [
{
"date": "2024-10-30",
"nhtsa": "24V834",
"recall": "Отзыв № 69GQ: фронтальная подушка безопасности водителя",
"recall_en": "69GQ DRIVER FRONTAL AIRBAG",
"status": "Статус: есть способ устранения",
"status_en": "Remedy Available"
}
],
"extra": [],
"report_date": "2026-11-01 17:50:50 CST",
"translated": true
}
},
"billing": {
"charged": 389,
"currency": "RUB",
"billed": true,
"balance": 1611,
"requestId": 1234567
}
}
Бесплатная проба без списания: https://api.avtovincod.ru/usa-history?vin=X7TEST00000000001 сразу вернёт настоящий готовый отчёт по VIN 3VWJ17AT9HM628325 (он же в поле report.sample_vin): те же файлы и report.data, что клиент получает после заказа с полем testMode: true и charged: 0; опрос ?task=TEST-TASK-0001 - тоже образец.
Неуспешный запрос
GET https://api.avtovincod.ru/usa-history?vin=3VWJ17AT9HM62832
Authorization: Bearer ВАШ_ТОКЕН
Ошибка в параметрах: HTTP 400, текст ошибки можно показать пользователю. Бесплатно.
{
"success": 0,
"error": "VIN должен содержать 17 символов, у вас 16. Проверьте ввод.",
"code": "BAD_VIN"
}
Нет данных
GET https://api.avtovincod.ru/usa-history?task=3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c
Authorization: Bearer ВАШ_ТОКЕН
Источник ответил, что по этому VIN данных нет: HTTP 200, status: "error", NOT_AVAILABLE. Бесплатно, блока billing нет.
{
"success": 0,
"status": "error",
"taskId": "3f2b9c1e-7a4d-4e8b-9c21-5d6e7f8a9b0c",
"query": {
"vin": "3VWJ17AT9HM628325"
},
"error": "По этому VIN отчёт не сформирован: в источнике нет данных. Деньги не списаны.",
"code": "NOT_AVAILABLE"
}
Тарификация
Заказ и опросы бесплатны. Списание одно - когда отчёт готов; повторный опрос готовой задачи не списывает. Нет данных (NOT_AVAILABLE), ошибки, отчёт не получен за 6 часов (PROVIDER_TIMEOUT) - бесплатно.
При заказе проверяется баланс с учётом отчётов, которые уже готовятся (их цена зарезервирована). Если к моменту готовности на балансе не хватает денег, опрос отвечает 402 INSUFFICIENT_BALANCE со status: "unpaid": пополните баланс и повторите опрос - отчёт будет выдан (ждёт 7 дней).
В ответ добавляется блок billing: сколько списано за этот запрос (charged, в рублях), платный ли он (billed), остаток баланса после запроса (balance) и номер в истории запросов (requestId). Те же данные в заголовках X-Charged, X-Balance, X-Request-Id. Нет блока - запрос не списан. Подробнее о блоке billing.
MCP-сервер для ИИ-ассистентов
Подключите проверки к ИИ-ассистенту: Claude, Cursor, VS Code и другим клиентам с поддержкой MCP (Model Context Protocol). Ассистент сам вызывает нужный метод по вашему токену, и проверку можно запросить обычными словами: "проверь залог и ограничения по VIN", "есть ли штрафы по СТС". Удобно менеджерам автосалона, лизинга и страховой без программиста, а разработчику помогает быстро собрать прототип интеграции.
- Адрес сервера:
https://api.avtovincod.ru/mcp, авторизация тем же токеном (Authorization: Bearer ВАШ_ТОКЕН). - Этот метод в MCP - инструмент
carfax_report(vin - заказ, task - опрос); всего инструментов 43. - Цены и списания как у API, в результате тоже есть блок
billing. Тестовые значения работают бесплатно. - Инструкция по подключению: avtovincod.ru/docs/mcp/