Avito API: поиск объявлений и карточка объявления в JSON
Официальная программа Avito для разработчиков рассчитана на продавцов и отдаёт ваш собственный кабинет. Если нужны данные по рынку целиком — чужие объявления, цены, параметры авто и недвижимости — этот API делает именно это: аккаунт продавца не нужен, ответ приходит готовым JSON.
Эндпоинты
| endpoint | Что возвращает | Обязательные |
|---|---|---|
| search | Поиск по Avito.ru: по ключевому слову и/или категории, по всей России или в одном городе. В строке — id, заголовок, цена, город, дата и ссылка. | все необязательные |
| cars/search | Авито Авто: подержанные и новые автомобили, цена (включая дилерское «от»), марка, модель, год, пробег, тип кузова и коробка. | все необязательные |
| real_estate/search | Недвижимость: квартиры, комнаты, дома, участки, гаражи и коммерция. Аренда и продажа разделены параметром transaction. | transaction |
| listing | Полная карточка объявления по id или URL в любой категории: заголовок, статус, цена (от/диапазон/бесплатно/не опубликована), параметры, фотографии и продавец. | ad_id |
| categories | Дерево категорий Avito: 591 узел — транспорт, недвижимость, работа, услуги, электроника, дом. | все необязательные |
| locations | Поиск slug'ов городов, посёлков и регионов для параметра location. | query |
| suggest | Подсказки поисковой строки Avito с категорией и фильтрами. | query |
Каждый вызов тарифицируется в кредитах. Неудачные и заблокированные вызовы бесплатны.
Рабочий пример
Сначала найдите slug города через locations, затем ищите внутри него. Без slug поиск идёт по всей России, и для городского мониторинга это обычно не то, что нужно.
curl -X POST https://api.reefapi.com/avito/v1/search \
-H "x-api-key: ВАШ_КЛЮЧ" \
-H "content-type: application/json" \
-d '{"query": "iphone 15", "location": "moskva"}'{
"ok": true,
"data": {
"results": [
{
"ad_id": "...",
"title": "...",
"price": 65000,
"location": "Москва",
"url": "https://www.avito.ru/..."
}
]
},
"meta": { "record_count": 50, "cache_hit": false, "mode": "live" }
}Вместо собственного парсера Avito
Парсер Avito с GitHub — обычный первый шаг, и он действительно работает. Проблема приходит не в первый запуск, а на второй месяц: когда сайт меняет разметку, ваш парсер молча возвращает пустоту, а когда срабатывает защита от ботов — блокирует IP.
Здесь те же данные, но обслуживание на нашей стороне: при смене схемы движок чиним мы, а при блокировке возвращается код ошибки и такой вызов не тарифицируется. В своём парсере оба случая молчаливы.
Честно: для разовой небольшой задачи свой скрипт дешевле. Если вы строите то, что должно работать регулярно, стоимость поломок превысит стоимость кода.
Ограничения и честные замечания
- Это не официальный API Avito, и партнёрства с Avito у нас нет.
- Цена может быть не опубликована или указана как «от» — в этом случае поле приходит null, а не выдуманное число.
- Оплата из России сейчас недоступна у наших платёжных провайдеров; ключ и бесплатные кредиты при этом работают.
- Каждый вызов живой: кэшированных ответов нет, вы видите состояние на момент запроса.