Zum Inhalt springen

Fehler

Lesen Sie den Status und den stabilen Code eines Fehlers, finden Sie seine Ursache in seinen Details, bleiben Sie unter dem Anfragelimit, und wiederholen Sie nur, was sich gefahrlos wiederholen lässt.

Ein Fehler antwortet mit einem HTTP-Status und einem JSON-Objekt error: einem code, einer message und bei manchen Fehlern data. Der code ist stabil, sodass Ihre Software darauf reagieren kann; die message richtet sich an Menschen, und ihr Wortlaut kann sich ändern.

403 Forbidden
{
"error": {
  "code": "permission-denied",
  "message": "Missing required scope: invoices:read"
}
}

Statuscodes

Status Code Wann
400 invalid-argument Ein Parameter, der Body oder ein Cursor ist ungültig; data listet die Probleme eines Parameters oder des Bodys.
401 unauthenticated Der Schlüssel fehlt, ist unbekannt, widerrufen oder abgelaufen.
403 permission-denied Dem Schlüssel fehlt der Bereich, oder seinem Benutzer fehlt die Berechtigung im Arbeitsbereich.
404 not-found Die Ressource existiert nicht.
409 aborted oder already-exists Eine Regel von Sway hat den Vorgang abgelehnt, etwa ein gesperrter Arbeitsbereich; data.name nennt die Regel.
429 resource-exhausted, oder kein JSON-Body Zu viele Anfragen: siehe das Anfragelimit unten.
500 internal oder failed-precondition Ein unerwarteter Fehler, oder eine Ressource, die nicht im Zustand ist, den der Vorgang braucht. Die Produktion verbirgt die Meldung eines unerwarteten Fehlers.
503 unavailable Ein Dienst, den Sway braucht, ist kurz nicht verfügbar.

Die Details einer Ablehnung

Wenn eine Regel von Sway einen Vorgang ablehnt, trägt data den name dieser Regel, der gleich bleibt, wenn sich die Meldung ändert, und den trace der Anfrage, wenn es einen gibt. Geben Sie den Trace dem Support-Team, wenn Sie zu einem Fehler fragen.

409 Conflict
{
"error": {
  "code": "aborted",
  "message": "Workspace is suspended",
  "data": {"name": "business/workspace-suspended", "trace": "…"}
}
}

Ein Arbeitsbereich ist gesperrt, sobald sein Abonnement geendet hat. Jeder Aufruf auf seine Daten antwortet dann mit 409 und business/workspace-suspended, Lesezugriffe eingeschlossen, bis das Abonnement wieder aktiv ist.

Anfragelimit

Sway nimmt bis zu 600 Anfragen pro Minute von jeder IP-Adresse an. Darüber antwortet es mit 429, ohne JSON-Body, bis die Minute um ist. Alle Programme, die von derselben Adresse aus aufrufen, teilen sich dieses Limit.

Gefahrlos wiederholen

  • Wiederholen Sie ein 429 oder ein 503 nach einer Pause, und warten Sie nach jedem Versuch länger.
  • Wiederholen Sie ein 400, 401, 403 oder 404 nicht unverändert: Korrigieren Sie zuerst die Anfrage, den Schlüssel oder seine Bereiche.
  • Bevor Sie einen Schreibvorgang wiederholen, der in ein Timeout lief oder mit 500 antwortete, lesen Sie die Ressource erneut: Der erste Versuch hat sie vielleicht schon geändert.

Bauen Sie auf Ihren eigenen Daten.

Erstellen Sie ein Konto, öffnen Sie Profil › Entwickler und erstellen Sie einen Schlüssel, der auf die nötigen Ressourcen begrenzt ist. Fragen zu einer Integration? Das Team beantwortet sie in einem Gespräch.