REST-API

Aufträge

Frage Hintergrundaufträge ab und rufe alle Ergebnisseiten ab.

GET https://www.ninjabuy.com/api/v1/jobs/{id} erfordert das Bearer-Token desselben Kontos. Fehlende, unbekannte und fremde Aufträge ergeben 404.

Lebenszyklus

job.statusBedeutung
queuedWartet auf den Start.
runningVerarbeitung läuft; weitere Ergebnisse können eintreffen.
doneVerarbeitung abgeschlossen. Prüfe den Status jedes Ergebnisses.
failedDer Auftrag ist fehlgeschlagen. Lies job.error, falls vorhanden.

job enthält id, kind, status und startedAt sowie optional progress (done, total), finishedAt, result und error. Zeitstempel sind Millisekunden seit der Unix-Epoche. Bei queued oder running geben poll_after_seconds und der Header Retry-After die Wartezeit an; die anfängliche Empfehlung beträgt 5 Sekunden.

Link-Stapel haben kind: "link_mints". Ihr abschließendes result nennt total, converted, failed und optional campaign und label. Hier zählt failed Eingaben, die ohne Umwandlung beantwortet wurden; es bedeutet nicht, dass der gesamte Auftrag den Status failed hat. Tabellenumwandlungen haben kind: "sheet_conversion"; ihr abschließendes job.result enthält Zähler und eine signierte XLSX-Download-URL. Das Auftragsschema umfasst auch sheet_read, picture_copy und resolution_run.

Seitenweise Abrufe per Cursor

Die Antwort enthält job, results, cursor, has_more und request_id. Jede Seite enthält bis zu 50 Ergebnisse in Eingabereihenfolge.

  1. Lass cursor bei der ersten Seite weg (Offset 0).
  2. Verarbeite results und speichere einen zurückgegebenen cursor, sofern er nicht null ist.
  3. Wenn has_more true ist, fordere die nächste Seite mit ?cursor=RETURNED_CURSOR an.
  4. Wenn has_more false ist und der Auftrag queued oder running ist, warte poll_after_seconds und frage dann mit dem gespeicherten Cursor erneut ab. Später können weitere Ergebnisse eintreffen.
  5. Beende die Abfragen erst, wenn der Auftrag done oder failed ist und alle Ergebnisseiten gelesen wurden (cursor ist null).

Ein Cursor muss ein einzelner Abfrageparameter mit 1 bis 6 Ziffern sein (0 bis 999999). Ungültige oder wiederholte Cursor-Parameter ergeben 400. Betrachte has_more: false allein nicht als Abschluss. Siehe die curl-Beispiele.