Skip to main content
Die API von Olostep ist objektorientiert gestaltet. Dieses Design zu verstehen, hilft dir, effektivere Integrationen zu entwickeln.

Alles ist ein Objekt

Jede Ressource in Olostep ist ein Objekt mit einer eindeutigen Kennung. Egal, ob du es über die API, das SDK oder das Dashboard erstellst – du erhältst ein Objekt, auf das du verweisen, das du aktualisieren und abfragen kannst.

Objekte können Lebenszyklen haben

Einige Olostep-Objekte verfolgen den Status über ein status-Feld. Dieses Zustandsmaschinenmuster ermöglicht es dir, genau zu wissen, wo sich jede Ressource in ihrem Lebenszyklus befindet.

Batches

Batches haben zwei Status-Ebenen: den Batch selbst und die einzelnen Items. Batch-Status:
Batch-Fehler sind extrem selten. Batches werden fast immer abgeschlossen – selbst wenn einige URLs fehlschlagen, erreicht der Batch selbst den Status completed. Im seltenen Fall eines katastrophalen Infrastrukturfehlers (z.B. LLM-Dienstunterbrechung während der Anreicherung) kann der Batch fehlschlagen. Dies betrifft weniger als 0,01% der Batches.
Item-Status: Jede URL in einem Batch wird als einzelnes Item mit eigenem Status verfolgt: Items können aus folgenden Gründen fehlschlagen:
  • URL ist blockiert oder gibt einen Fehler zurück
  • Parser-Ausgabe fehlt
  • Netzwerk-/Abruffehler
Fehlgeschlagene Items enthalten ein error-Objekt mit code und message, die den Fehler erklären. Der Batch wird trotzdem abgeschlossen – überprüfe den Status jedes Items bei der Verarbeitung der Ergebnisse.

Crawls

Crawls werden immer abgeschlossen. Selbst wenn ein Crawl 0 URLs findet (aufgrund von robots.txt-Blockierung oder ungültiger Start-URL), wird der Crawl-Status completed sein. Überprüfe das pages_count-Feld, um die Ergebnisse zu verifizieren.

Monitore

Monitore sind langlebige Objekte mit einem reicheren Lebenszyklus als einmalige Ressourcen:
Das Erstellen eines Monitors gibt HTTP 202 mit status: provisioning zurück. Der Monitor wird active, sobald die Planung seine verfolgten Ziele löst – poll GET /v1/monitors/:monitor_id oder streame Bereitstellungsereignisse mit ?stream=1. Nur active Monitore können pausiert werden, und nur paused Monitore können fortgesetzt werden. Updates geben 409 zurück, während der Monitor noch provisioning ist.

Retrieve-Muster

Viele Objekte erzeugen Inhalte, die später abgerufen werden können. Das retrieve_id-Muster ermöglicht es dir, Inhalte abzurufen, ohne sie erneut zu verarbeiten.
Dieses Muster wird verwendet von:
  • Batch-Items — Jede verarbeitete URL erhält eine retrieve_id
  • Crawl-Seiten — Jede gecrawlte Seite erhält eine retrieve_id
Der /v1/retrieve-Endpunkt akzeptiert den formats-Parameter, um anzugeben, welche Inhaltstypen zurückgegeben werden sollen (html, markdown, json, text).

Webhooks: Ereignisgesteuerte Aktualisierungen

Anstatt auf Statusänderungen zu warten, konfiguriere Webhooks, um Ereignisse zu erhalten, wenn Objekte ihren Zustand ändern.

Metadaten: Deine Daten neben unseren

Füge benutzerdefinierte Schlüssel-Wert-Paare zu Objekten hinzu, indem du Metadaten verwendest. Dies ermöglicht es dir, Olostep-Ressourcen mit deinen internen Systemen zu verknüpfen.

Zusammenfassung