Przewodnik

Synchronizacja całej oferty

/cars strumieniuje wszystkie aktywne samochody z Twoich źródeł, z pełnymi raportami, przez kursor po stronie serwera. Używaj go do utrzymywania lokalnej kopii; /search używaj tylko do zapytań od użytkowników.

GET /carslimit do 500, bez scroll_id
zapisz data[]upsert po id, pomiń, jeśli hash się nie zmienił
GET next_urlbez zmian, zanim kursor wygaśnie
scroll_id nullprzebieg zakończony
archiwizujsamochody niewidziane w tym przebiegu
  1. Rozpocznij przebiegWyślij żądanie /cars bez scroll_id. Filtry, takie jak domains[] czy is_leasing, ustawiaj tylko tutaj.
  2. Podążaj dokładnie za next_urlZachowaj ten sam klucz i filtry przez cały przebieg. Zmiana domains[] lub is_leasing w trakcie przewijania zwraca 422.
  3. Pobieraj, zanim kursor wygaśniescroll_time wynosi 1–15 minut (domyślnie 10), licząc od ostatniego żądania. Przy 403/404 z komunikatem "scroll id was expired" rozpocznij nowy przebieg.
  4. Zakończ, potem archiwizujPrzebieg kończy się, gdy scroll_id ma wartość null, a data jest puste. Dopiero wtedy oznacz niewidziane samochody jako sprzedane.

Wykonuj pełny przebieg 2–3 razy dziennie. Zarchiwizowane samochody od razu znikają z /search i /cars, ale przez około miesiąc pozostają dostępne przez /cars/{car_id} i /listing/{domain_id}/{listing_id} z archived: true.

Filtrowanie według typu i konfiguracji pojazdu

vehicle_type=automobile / 1 jest domyślne; motorcycle / 2 wybiera motocykle w /search, /search/count i /cars. Używaj tego samego typu w słownikach.

W /cars typ i cała hierarchia są stałe w ramach kursora. Podążaj za next_url bez zmian lub podawaj tylko scroll_id. Można zmienić kolejność równoważnych filtrów; nowe warunki lub jawne filtry bez zapisanego stanu zwracają 422. Zacznij nowy kursor. Stare kursory bez nowych parametrów zachowują swoje zapytanie.

Pętla pełnego eksportu
url="https://api.auctionsapi.com/cars?limit=500&api_key=$CARS_API_KEY"

while [ -n "$url" ]; do
  page=$(curl -sfg "$url" -H "Accept: application/json") || { echo "cursor expired, restart"; exit 1; }
  echo "$page" | jq -c '.data[]' >> cars.ndjson
  url=$(echo "$page" | jq -r '.next_url // empty')
done
Ostatnia stronaNa żywo
{
  "scroll_id": null,
  "data": [],
  "total": 3217391,
  "message": "No more data"
}

Uzyskaj dostęp do API

Podłącz klucz, aby uruchamiać każde zapytanie z tych stron na własnych danych. Nie masz jeszcze klucza? Poproś nas o klucz demo: ten sam JSON co w planach płatnych.

Mam już klucz