Підключити ключ
Посібник

Синтаксис фільтрів пошуку

Фільтри — це параметри запиту у форматі PHP з квадратними дужками. Ті самі фільтри працюють у /search і /search/count; /cars приймає domains[] і is_leasing.

ТипСинтаксис
Список IDfuels[]=2&fuels[]=3 — повторюйте ключ; значення через кому не розділяються
Марка + моделіbrands[0][id]=88&brands[0][models][]=573
Кілька марокbrands[0][id]=88&brands[1][id]=13
Діапазонyear_from=2018&year_to=2022 — обидві межі включно
Прапорецьhas_inspections=1 — надсилайте 1 або 0; true повертає 422
Лізингis_leasing=0 — також відповідає оголошенням без прапорця
Цінаprice_from=10000&currency=eur — фільтрує в цій валюті
Локаціяcountries[0][id]=208&countries[0][regions][]=1841610
  • Категорійні фільтри приймають числові ID. Усі ID див. у розділі Значення enum.
  • currency впливає лише на фільтрацію та сортування за ціною. Ціни оголошень завжди повертаються в початковій валюті.
  • Для точного VIN використовуйте /cars/vin/{vin}. Фільтр vin у /search шукає часткові збіги.
  • Не передавайте фільтри, які не використовуєте. Порожні значення проходять валідацію і можуть повернути 422.

is_auction приймає true, false, 1 або 0 на /search, /search/count та /cars. False включає false, null і відсутні поля. Без параметра фільтр вимкнено; порожнє або неправильне значення повертає 422. is_auction та is_leasing мають збігатися в одному активному оголошенні доступного/вибраного джерела. Інші оголошення можуть залишатися в listings[]. Для /cars задайте фільтр у першому запиті та дотримуйтеся next_url без змін. Додавання або зміна під час scroll чи явне значення за відсутності стану кешу повертає 422. sort=auction_nearest вимагає auction_at >= now; передавайте той самий sort у /search/count.

Фільтр за типом транспорту й конфігурацією

vehicle_type=automobile / 1 — типово; motorcycle / 2 вибирає мотоцикли в /search, /search/count і /cars. У довідниках використовуйте той самий тип.

Повна вкладеність: brands[] → models[] → generations[] → variants[] / trims[]. У кожного об’єкта бренду, моделі й покоління обов’язковий id. Між сусідами та значеннями variants/trims — АБО; між умовами однієї гілки — І. Відсутній або порожній дочірній список означає будь-яких нащадків. До 100 елементів у масиві. Невідомі або несумісні ID дають порожній результат; неправильний формат — 422.

Попередній brands[0][models][]=573 працює. Для нащадків використовуйте brands[0][models][0][id]=573. Приберіть попереднє поле додавання ID перед об’єктами моделей цього бренду, інакше PHP перезапише індекс 0.

vehicle_type=motorcycle&brands[0][id]=101&brands[0][models][0][id]=201&brands[0][models][0][generations][0][id]=301&brands[0][models][0][generations][0][variants][]=501&brands[0][models][0][generations][0][trims][]=401

ID вигадані: замініть значеннями з довідників. Для конкретних пар variant/trim використовуйте окремі гілки поколінь.

Відповіді містять vehicle_type, generation_id, variant_id і trim_id; відсутні необов’язкові ID дорівнюють null. Поля беруть участь у hash. Використовуються лише збережені ID машини: без нормалізованого ID відповідного збігу немає.

У /cars тип і вся ієрархія фіксуються на час прокрутки. Дотримуйтеся next_url без змін або передавайте лише scroll_id. Порядок еквівалентних фільтрів можна змінити; нові умови або явні фільтри без збереженого стану дають 422. Почніть нову прокрутку. Старі курсори без нових параметрів зберігають попередній запит.

Додаткові поля оголошень

Завантажте /listing-fields після перевірки ключа. Визначення, обмеження, оператори й пояснення джерел стосуються лише цього ключа та вибраних доменів.

Рядки: eq, in, exists. Числа й дати також gt, gte, lt, lte. Boolean: eq або exists. Використовуйте eq, in, exists чи діапазон; exists окремо. До 20 полів і 100 значень у in.

Усі умови, вибрані домени й активність мають збігтися в одному оголошенні. Нуль і false є значеннями. Масив збігається за відповідним елементом. Невідомі або недоступні поля/оператори повертають 422.

Фільтрація лише для filterable. Індексовані значення: listings[].custom_fields; решта: listings[].source_data. Публікація вмикає фільтри, наступні звичайні імпорти заповнюють значення. Старі документи окремо не оновлюються.

У /cars умови зберігаються на весь scroll. Несумісне визначення чи втрачене збережене налаштування потребують нового scroll. Сортування й агрегації не підтримуються.

Замініть FIELD_KEY ключем доступного каталогу. Для грошових порівнянь також задайте валюту оголошення; конвертація Buy Now тут не застосовується.

Історичні ринкові оцінки джерела — довідкові неіндексовані значення. Вони описують порівнювані продажі, а не ціну, ставку або резерв цього оголошення. Перевіряйте опис поля, критерії порівняння та дату розрахунку; валюту оголошення підставляти не можна. Зареєстровані числові поля можуть бути null, якщо оцінки немає.

custom_fields[FIELD_KEY][gte]=2
custom_fields[FIELD_KEY][in][]=a&custom_fields[FIELD_KEY][in][]=b
custom_fields[FIELD_KEY][eq]=false
custom_fields[FIELD_KEY][lte]=15000&custom_fields[FIELD_KEY][currency]=cad

Додаткові поля оголошень

Підключіть ключ, щоб побачити поля доступних доменів.

Пошук із фільтрами
curl -g "https://api.auctionsapi.com/search?brands[0][id]=88&brands[0][models][]=573&year_from=2018&fuels[]=1&fuels[]=3&price_to=30000&currency=eur&has_inspections=1&sort=newest&perPage=20&api_key=$CARS_API_KEY" \
  -H "Accept: application/json"

Отримайте доступ до API

Підключіть ключ, щоб виконувати будь-який запит із цих сторінок на своїх даних. Ключа ще немає? Попросіть у нас демо-ключ: той самий JSON, що й у платних планах.

У мене є ключ