code ist stabil und für Verzweigungen geeignet. message ist für Menschen gedacht und kann sich ändern. details
ist vorhanden, wenn wir das fehlerhafte Feld benennen können.
Codes
400 steht für eine Anfrage, die wir nicht parsen oder verstehen können. 422 ist Anfragen vorbehalten, die
einwandfrei geformt sind, aber für die angefragte Region nicht bedient werden können. Eine Verzweigung nach
error.code ist beständiger als nach dem Status.Ablehnungen wegen der Region
Beide Regionscodes werden vor dem Einreihen entschieden. Sie erfahren es sofort, statt zuzusehen, wie ein Task alle Wiederholungen aufbraucht und mit einem Fehler scheitert, der nur das Symptom zeigt.REGION_UNSUPPORTED ist dauerhaft: Diese Engine kann das angefragte Land nicht bedienen.
REGION_UNAVAILABLE ist vorübergehend: Die Route existiert, aber gerade kann nichts sie bedienen. Fragen Sie
GET /capacity ab, um zu sehen, was jede Region derzeit bedienen kann.
Batch-Fehler gelten pro Eintrag
Ein wohlgeformter Batch liefert immer200, auch wenn jeder Task darin fehlschlägt. Der HTTP-Status beschreibt die
Anfrage, results[].success jeden einzelnen Task.
Ein Batch-Eintrag kann mit
REGION_UNAVAILABLE oder ENQUEUE_ERROR fehlschlagen. Keiner der beiden steht im Enum
der Fehler pro Eintrag des asynchronen Task-Vertrags, den diese API umsetzt. Beide sind Ergänzungen, kein Ersatz:
VALIDATION_ERROR und RESOURCE_ALREADY_EXISTS bleiben unverändert.Fehler auf Task-Ebene
Ein Task, der nach dem Einreihen fehlschlägt, erzeugt überhaupt keinen HTTP-Fehler. Sie erfahren davon über den Endstatus:error auf oberster Ebene ist ein String, nicht das Objekt
{code, message, timestamp} der Fehler auf Anfrageebene. Es beginnt mit einem Code, gefolgt von einem festen Satz
für diesen Code; verzweigen Sie also anhand des Codes: ENGINE_TIMEOUT, ENGINE_NO_RESULT, ENGINE_FAILED oder
NO_IP_AVAILABLE und NO_ACCOUNT_AVAILABLE, wenn nicht rechtzeitig Kapazität frei wurde (ein späterer neuer Versuch
funktioniert meist). BAD_PAYLOAD und PAGE_UNAVAILABLE (eine Naver-Seite, die sich nicht anonym lesen lässt)
behalten eine Meldung, die sagt, was zu ändern ist. Derselbe Task stellt einen Webhook mit task.status === "FAILED" zu.