REST-API

Fehler

Behandle die Problemantworten und ordne Anfragen zu.

Fehler folgen dem JSON-Problemformat nach RFC 9457 mit dem Medientyp application/problem+json.

{
  "type": "https://www.ninjabuy.com/api/v1/problems/bad-body",
  "title": "Invalid request",
  "status": 400,
  "detail": "The request did not match the expected shape.",
  "request_id": "REQUEST_ID",
  "errors": [{"pointer": "/links", "detail": "Validation detail"}]
}

type ist die stabile Problemkennung; title und detail beschreiben das Problem. status entspricht dem HTTP-Status. Optionale errors-Einträge enthalten einen JSON Pointer und Validierungsdetails; ein leerer Pointer bezeichnet den gesamten Körper. Gib request_id (auch in X-Request-Id) an, wenn du ein Problem meldest.

Alle folgenden Typen beginnen mit https://www.ninjabuy.com/api/v1/problems/.

Typ-EndungHTTPBedeutung / Maßnahme
bad-json400Der Körper ist kein gültiges JSON. Korrigiere die Syntax.
bad-body400Körper, Abfrageparameter oder Cursor bestehen die Validierung nicht. Lies errors.
bad-idempotency-key400Verwende 1 bis 255 druckbare ASCII-Zeichen für Idempotency-Key.
unauthorized401Sende ein gültiges Bearer-Token; WWW-Authenticate liefert die Metadaten.
not-found404Ressource nicht verfügbar, unbekannt oder nicht im Besitz dieses Kontos.
method-not-allowed405Verwende die Methode aus Allow.
idempotency-key-in-progress409Die erste Anfrage mit diesem Schlüssel läuft. Warte gemäß Retry-After.
upload-too-large413Hochgeladene Bytes überschreiten die angegebene Größe oder 20 MiB.
unsupported-media-type415Sende Content-Type: application/json.
idempotency-key-reused422Dieser Schlüssel wurde mit einer anderen Anfrage verwendet. Verwende einen neuen Schlüssel.
invalid-workbook422Der Upload ist keine lesbare XLSX-/CSV-Datei innerhalb der Grenzen. Lies errors.
upload-expired422Die Uploadreservierung ist abgelaufen. Lade die Datei erneut hoch.
rate-limited429Warte vor einem erneuten Versuch die Sekunden aus Retry-After.
search-rate-limited429Das Stichwortsuchkontingent ist ausgeschöpft. Warte gemäß Retry-After.
service-unavailable503Versuche es bald erneut; beachte Retry-After, falls vorhanden.
internal-error500Versuche es später erneut; bewahre die Anfrage-ID auf, falls das Problem anhält.

Eine erfolgreiche Anfrage kann trotzdem Fehler einzelner Eingaben enthalten. Behandle Link-Statuswerte getrennt von HTTP-Fehlern. Verwende Idempotency-Key, um eine Erstellungsantwort erneut abzurufen; ohne Schlüssel erstellt eine erneut gesendete Stapelanfrage einen weiteren Auftrag.