Fouten
Verwerk probleemantwoorden en koppel ze aan aanvragen.
Fouten volgen de JSON-probleemspecificatie van RFC 9457, met mediatype 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 is de vaste probleemidentificatie; title en detail beschrijven het probleem. status komt overeen met de HTTP-status. Optionele errors-items bevatten een JSON Pointer en validatiedetails; een lege pointer verwijst naar de hele body. Vermeld request_id (ook in X-Request-Id) wanneer je een probleem meldt.
Alle onderstaande typen beginnen met https://www.ninjabuy.com/api/v1/problems/.
| Typeachtervoegsel | HTTP | Betekenis / actie |
|---|---|---|
bad-json | 400 | De body is geen geldige JSON. Corrigeer de syntaxis. |
bad-body | 400 | Inhoud, queryparameters of cursor voldoen niet aan de validatie. Lees errors. |
bad-idempotency-key | 400 | Gebruik 1 tot 255 afdrukbare ASCII-tekens voor Idempotency-Key. |
unauthorized | 401 | Geef een geldig bearertoken mee; WWW-Authenticate levert de metadata. |
not-found | 404 | De resource is niet beschikbaar, onbekend of niet van dit account. |
method-not-allowed | 405 | Gebruik de methode in Allow. |
idempotency-key-in-progress | 409 | Het eerste verzoek met deze sleutel loopt nog. Wacht volgens Retry-After. |
upload-too-large | 413 | Geüploade bytes overschrijden de opgegeven grootte of 20 MiB. |
unsupported-media-type | 415 | Verstuur Content-Type: application/json. |
idempotency-key-reused | 422 | Deze sleutel is voor een ander verzoek gebruikt. Gebruik een nieuwe sleutel. |
invalid-workbook | 422 | De upload is geen leesbaar XLSX-/CSV-bestand binnen de limieten. Lees errors. |
upload-expired | 422 | De uploadreservering is verlopen. Upload het bestand opnieuw. |
rate-limited | 429 | Wacht het aantal seconden uit Retry-After voordat je opnieuw probeert. |
search-rate-limited | 429 | Het quotum voor zoekwoorden is vol. Wacht volgens Retry-After. |
service-unavailable | 503 | Probeer het binnenkort opnieuw; respecteer Retry-After als dit aanwezig is. |
internal-error | 500 | Probeer het later opnieuw; bewaar de aanvraag-ID als het probleem aanhoudt. |
Een geslaagd verzoek kan nog steeds fouten per invoer bevatten. Behandel linkstatussen apart van HTTP-fouten. Gebruik Idempotency-Key om een aanmaakverzoek opnieuw af te spelen; zonder sleutel maakt een herhaalde batch een extra taak aan.