Посібники
Синхронізація повного інвентарю
Два фіди підтримують локальний каталог актуальним: /cars для активного інвентарю та /archived-lots для лістингів, яких уже немає.
- 1
Побудуйте початковий каталог
Пройдіть сторінки
/cars, використовуючиsimple_paginate=1,коли загальні кількості не потрібні. Зберігайте ID авто, джерело, ідентифікатори лотів і часові позначки оновлень. - 2
Збирайте оновлення
Опитуйте
/cars?minutes=60 для одногодинного вікна або оберіть вікно, що відповідає вашому інтервалу опитування (1–4320 хвилин). Читайте кожну сторінку з тими самими фільтрами. - 3
Обробляйте архівні лістинги
Опитуйте
/archived-lots?minutes=60 за відповідне вікно й позначайте цей лот джерела як неактивний. Один архівний лот не означає, що всі лістинги цього авто неактивні. - 4
Застосовуйте зміни ідемпотентно
Виконуйте upsert за ідентифікаторами. Використовуйте вікна, що перекриваються, і збережені часові позначки, щоб витримувати повторні спроби та дублікати.
- 5
Періодично звіряйте дані
Ковзне вікно – не надійний курсор. Після перерви понад 72 години перебудуйте активний інвентар замість довіри до інкрементального фіду.
Архівуйте за lot_id: автомобіль може мати інші активні лоти. Старі відповіді архіву містять скалярні bid/sale_date, нові – {value, updated_at}. Старе поле bid не гарантує підтверджену ціну продажу.
Робочий серверний приклад Python: обходить сторінки обох потоків, зберігає автомобілі та лоти в SQLite, архівує лише потрібний лот. Ключ із середовища сервера, таймаути, обмежені повтори та час успішної синхронізації. Встановіть requests. Задайте AUCTIONS_API_KEY на сервері, один раз запустіть python sync_auction_cars.py --initial; далі запускайте за розкладом без --initial. Розмір сторінок: cars=50, архів=100. Для Unlimited: AUCTIONS_CARS_PER_PAGE=1000 і AUCTIONS_ARCHIVE_PER_PAGE=1000. Не допускайте паралельних завдань (блокування планувальника); адаптуйте SQLite і звіряйте прогалини понад 72 години. Потік не є фіксованим знімком.