Virheviite
Virheviite
Kaikki qr3.app API-virheet noudattavat RFC 7807 Problem Details -standardia otsikolla Content-Type: application/problem+json.
{ "type": "https://docs.qr3.app/errors/not-found", "title": "Not Found", "status": 404, "detail": "QR code qr_xxx not found"}errors/validation
HTTP 422 Unprocessable Entity
Syötetiedot eivät läpäisseet skeeman validointia. Vastaus sisältää errors-taulukon kenttäkohtaisilla tiedoilla.
{ "type": "https://docs.qr3.app/errors/validation", "title": "Validation Error", "status": 422, "detail": "Request body validation failed", "errors": [ { "field": "url", "message": "Invalid URL format" } ]}Syyt: Puuttuvat pakolliset kentät, väärät tietotyypit, sallitun alueen ulkopuolella olevat arvot, virheellinen URL-muoto.
errors/bad-request
HTTP 400 Bad Request
Runko ei ole kelvollista JSON-muotoa, vaikka Content-Type: application/json on asetettu (esim. pilkku viimeisen elementin jälkeen, katkennut tai tyhjä runko).
errors/authentication
HTTP 401 Unauthorized
API-avain puuttuu, on virheellisessä muodossa, vanhentunut tai mitätöity.
Korjaus: Tarkista, onko Authorization: Bearer qr3_sk_... -otsikko mukana ja onko avain aktiivinen.
errors/unauthorized
HTTP 401 Unauthorized
Sisääntulevaa webhookia (POST /v1/webhooks/clerk, POST /v1/webhooks/eu-registry) kutsuttiin ilman voimassa olevaa allekirjoitusta tai salaisuutta. Puuttuva tai virheellinen API-avain palauttaa sen sijaan virheen errors/authentication.
errors/authorization
HTTP 403 Forbidden
API-avain on voimassa, mutta sillä ei ole vaadittavaa scopea tai tarvittavia oikeuksia.
errors/forbidden
HTTP 403 Forbidden
Resurssi on olemassa, mutta se kuuluu toiselle työtilalle (Workspace) tai organisaatiolle.
errors/document-immutable
HTTP 403 Forbidden
Asetuksella is_immutable ladattua DPP-dokumenttia ei voi poistaa.
errors/not-found
HTTP 404 Not Found
Pyydettyä resurssia ei ole olemassa tai se on poistettu.
errors/conflict
HTTP 409 Conflict
Resurssi samalla yksilöllisellä tunnisteella on jo olemassa (esim. kaksoiskappale slug-kentästä tai Idempotency-Key-törmäys).
errors/subscription-exists
HTTP 409 Conflict
Kutsuttiin POST /v1/billing/checkout, vaikka organisaatiolla on jo tilaus. Vaihda palvelupaketti sen sijaan laskutusportaalissa.
errors/rate-limited
HTTP 429 Too Many Requests
API-avaimen minuuttikohtainen pyyntöraja (Rate-Limit) on ylittynyt. Vastaus sisältää otsikot Retry-After, X-RateLimit-Limit, X-RateLimit-Remaining ja X-RateLimit-Reset.
errors/rate-limit
HTTP 429 Too Many Requests
Resurssikohtainen pyyntöraja (Rate-Limit) on ylittynyt (esim. 200 QR-koodia päivässä työtilaa kohden).
errors/plan-limit
HTTP 422 Unprocessable Entity
Nykyinen tilauksesi ei salli tätä toimintoa (esim. DPP- tai dynaamisten koodien kiintiö käytetty loppuun, eräkoko liian suuri, liikaa työtiloja tai tiimin jäseniä). Päivitys vaaditaan.
errors/invalid-file-type
HTTP 400 Bad Request
Ladatun tiedoston tyyppi ei ole päätepisteen hyväksymä, tai sen sisältö ei vastaa ilmoitettua Content-Type-arvoa.
errors/file-too-large
HTTP 413 Payload Too Large
Ladattu tiedosto ylittää palvelupaketin tai päätepisteen kokorajoituksen.
errors/storage-limit-exceeded
HTTP 422 Unprocessable Entity
Lataus ylittäisi työtilan tai DPP:n kokonaistallennustilan.
errors/not-configured
HTTP 503 Service Unavailable
Vaadittu palvelu tai konfiguraatio puuttuu (esim. Stripe-palvelua ei ole konfiguroitu, Web Risk API-avainta ei ole asetettu).
errors/unsafe-url
HTTP 422 Unprocessable Entity
URL hylättiin, koska Google Web Risk on luokitellut sen turvattomaksi (haittaohjelmat, tietojenkalastelu, sosiaalinen manipulointi).
errors/url-flagged
HTTP 422 Unprocessable Entity
Varattu URL-osoitteille, jotka on luokiteltu turvattomiksi jälkikäteen suoritetussa määräaikaisessa uudelleenskannauksessa (Re-Scanning).
errors/already-submitted
HTTP 409 Conflict
Kaksinkertainen lähetys — esim. NPS-tulos on jo lähetetty tälle työtilalle tässä kuussa.
errors/unprocessable-entity
HTTP 422 Unprocessable Entity
Ylläpitäjän toiminto ei ole sallittu (esim. toisen superadminin impersonointi). Vain superadmin-päätepisteet palauttavat tämän tyypin.
errors/request-error
HTTP 4xx Client Error
Varatyyppi asiakaspuolen virheille, joille ei ole tarkempaa tyyppiä; tila on vastauksessa. API:lla ei ole tällä hetkellä tiedossa olevaa polkua, joka palauttaisi sen.
errors/internal
HTTP 500 Internal Server Error
Odottamaton virhe palvelimella. Yritä pyyntöä uudelleen. Jos ongelma toistuu: [email protected].