Zum Inhalt springen

Guides

Bestand synchronisieren

Zwei Feeds halten einen lokalen Katalog aktuell: /cars für den aktiven Bestand und /archived-lots für Inserate, die weg sind.

  1. 1

    Erstkatalog aufbauen

    Blättere durch /cars, mit simple_paginate=1, wenn du keine Gesamtzahlen brauchst. Speichere Fahrzeug-ID, Quelle, Loskennungen und Zeitstempel der Updates.

  2. 2

    Updates sammeln

    Frage /cars?minutes=60 für ein Fenster von einer Stunde ab oder wähle ein Fenster passend zu deinem Abfrageintervall (1–4320 Minuten). Lies jede Seite mit denselben Filtern.

  3. 3

    Archivierte Inserate verarbeiten

    Frage /archived-lots?minutes=60 über ein passendes Fenster ab und markiere dieses Los der Quelle als inaktiv. Ein archiviertes Los heißt nicht, dass alle Inserate des Fahrzeugs inaktiv sind.

  4. 4

    Änderungen idempotent anwenden

    Upsert nach Kennungen. Nutze überlappende Fenster und gespeicherte Zeitstempel, damit Wiederholungen und Duplikate kein Problem sind.

  5. 5

    Regelmäßig abgleichen

    Ein rollendes Fenster ist kein dauerhafter Cursor. Nach einer Lücke von mehr als 72 Stunden baust du den aktiven Bestand neu auf, statt dem inkrementellen Feed zu vertrauen.

Archiviere auf Los-Ebene über lot_id. Ein Fahrzeug kann weitere aktive Lose haben. Ältere Archivantworten enthalten skalare bid/sale_date, neuere nutzen {value, updated_at}. Nimm nicht an, dass ein altes bid ein bestätigter Verkaufspreis ist.

Ein lauffähiges serverseitiges Python-Beispiel: blättert durch beide Feeds, schreibt Fahrzeuge und Lose per Upsert in SQLite und archiviert nur das betroffene Los. Nutzt einen Key aus der Server-Umgebung, Timeouts, begrenzte Wiederholungen und einen Checkpoint des letzten Erfolgs. Installiere requests. Setze AUCTIONS_API_KEY auf dem Server und führe einmal python sync_auction_cars.py --initial aus; plane weitere Läufe ohne --initial. Standard-Seitengrößen: cars=50, Archiv=100. Mit Unlimited kannst du AUCTIONS_CARS_PER_PAGE=1000 und AUCTIONS_ARCHIVE_PER_PAGE=1000 setzen. Lass immer nur einen Worker laufen (Scheduler-Sperre); passe die SQLite-Speicherung an und gleiche Lücken über 72 Stunden ab. Das Beispiel macht aus dem laufenden Feed keinen festen Snapshot.

© 2025. AuctionsAPI operates independently and is not affiliated with Copart, IAAI or Encar.