Feil
Alle sidene
Kom i gang
Referanse
Formen
Alt er JSON, også feilene. error er koden du skiller på i koden din, og den eneste du bør bygge logikk rundt. message forklarer på norsk hva som er galt, field peker på feltet når feilen gjelder ett bestemt, og docs lenker rett til avsnittet her som svarer på det.
{
"error": "bad-carrier",
"message": "Ukjent fraktselskap. Gyldige verdier er posten, postnord og helthjem.",
"field": "carrier",
"docs": "https://skribb.no/utviklere/referanse/bestillinger"
}Noen svar har et felt til som sier hva tilstanden faktisk er, så du kan avstemme i stedet for å prøve igjen på noe som aldri kan gå.
Koder som følger et mønster
Noen koder lages av et feltnavn i stedet for å være skrevet én for én. Regelen under lar deg kjenne igjen en kode du aldri har sett før.
missing-scope:<scope>403- Nøkkelen mangler tilgangen ruta krever, og koden navngir den. missing-scope:orders:read betyr at du må huke av for orders:read på en ny nøkkel.
bad-<felt>422- Feltet gikk ikke an å bruke slik det ble sendt. field i svaret navngir det, så du slipper å lete. De feltene som trenger en mer presis forklaring enn dette, står oppført hver for seg over.
shipping_rates-<hva>422- En fraktrad går ikke an å bruke, og resten av koden sier hvorfor: shipping_rates-service-required, shipping_rates-amount_ore-too-large og så videre. Hele kallet avvises, så tabellen står urørt.
shipping_countries-<hva>422- Landlista går ikke an å bruke. Landene må være ISO-3166 alfa-2, og lista kan ikke være tom.
download_ttl_hours-out-of-range422- Nedlastingsgrensene er utenfor det som er lov: 1 til 8760 timer, og 1 til 1000 nedlastinger. download_max_count-out-of-range er den samme feilen for det andre feltet.
Alle kodene
Kodene står gruppert etter statusen de kommer tilbake med, og hver gruppe sier hva du bør gjøre med den. Verdien i error er den eksakte strengen rutene svarer med, så du kan sammenligne på den direkte. Hver kode har sin egen lenke, og det er den docs i feilsvaret peker på.
400Bad Request
Vi klarte ikke å lese bodyen du sendte i det hele tatt. Ingenting ble lagret. Sjekk at du faktisk sender det du tror, og at Content-Type stemmer.
Bodyen er ikke gyldig JSON. Vi kom aldri så langt som til å se på feltene.
Skjemaet gikk ikke an å lese. Content-Type sa multipart/form-data, men innholdet var ikke et skjema vi kunne pakke ut.
401Unauthorized
Ikke prøv igjen med den samme nøkkelen. Den er enten borte, ukjent eller trukket tilbake, og et nytt forsøk gir det samme svaret.
Det var ingen Authorization: Bearer på forespørselen i det hele tatt.
Nøkkelen finnes ikke. Som regel er den avkortet under kopiering: en hel nøkkel er skribb_sk_ og 43 tegn til.
Nøkkelen er trukket tilbake. Lag en ny under Innstillinger, fanen API.
Tokenet var gyldig, men levetiden er ute. Dette gjelder tokens en klient har fått godkjent av eieren; en nøkkel du har laget selv utløper ikke.
403Forbidden
Nøkkelen er gyldig, men rekker ikke hit. Lag en ny med riktig avhuking, eller godta avtalen ruta ber om. Å prøve igjen uendret hjelper ikke.
Kontoen som eier publikasjonen er stengt eller midlertidig sperret. Dette henger på kontoen, ikke på nøkkelen, så en ny nøkkel løser det ikke.
Eieren av publikasjonen må godta Tillegg E i databehandleravtalen før abonnentlista kan leses. Dette henger på personen, ikke på nøkkelen, så en ny nøkkel løser det ikke.
404Not Found
Det finnes ingenting med den id-en i din publikasjon. En id som hører til en annen publikasjon svarer også 404, ikke 403, fordi svaret ellers ville røpet at den finnes.
Ingenting med den id-en i din publikasjon.
409Conflict
Forespørselen er forståelig, men går ikke an akkurat nå. Å prøve igjen uendret hjelper ikke. Noen av disse svarer med hva tilstanden faktisk er, så du kan avstemme i stedet for å gjette.
Du har allerede en rabattkode med dette navnet. To regler kan ikke dele kode i samme butikk, siden kunden bare skriver inn den ene strengen.
Nettbutikken er ikke slått på for denne publikasjonen. /me forteller deg det uten å måtte prøve.
Sider og meny finnes bare på en publikasjon av typen nettsted. En blogg har ingen.
Nettstedet har ikke noe abonnement. Da vises verken kontaktskjemaet eller chat-vinduet for besøkende, så det finnes ingen meldinger å hente. Enkel holder, tross navnet på koden: den er fra da skjemaet fulgte Komplett, og står fordi noen kan ha bygget mot den.
font eller heading_font ble satt til custom, som er skriftfilen publikasjonen har lastet opp selv, og det ligger ingen der. Nøkkelen står i vokabularet fordi en publikasjon som allerede bruker den, skal beholde skriften sin om filen en dag blir borte. Feltet det gjelder står i field.
Planlegging er en betalt fordel på publikasjonen, og eieren har ingen aktiv pakke. Enhver av dem holder: Pro, Enkel eller Komplett. /me forteller deg hvilken publikasjonen har.
Du kan ikke sette et publisert innlegg i kø. Det er kladder som venter på et tidspunkt, og et innlegg som er ute, har ingenting å vente på.
Bare et publisert innlegg kan sendes som nyhetsbrev. En kladd har ingen side å lenke til, så et brev om den ville sendt hver abonnent til en adresse som ikke finnes. Publiser først, send etterpå.
Innlegget har gått ut som nyhetsbrev én gang, og svaret sier når. Det finnes ingen force her: en ny utsending ville lagt det samme brevet i de samme innboksene, og det kan ikke gjøres om. Publiserte du med send_newsletter: false, teller sperren som en utsending, og innlegget kan ikke sendes senere over API-et.
Utsendingen ville gått forbi taket for e-post denne måneden, så vi stanser den før noe er sendt. Svaret bærer recipient_count og quota_remaining, så du ser hvor mye som mangler. Taket vokser med abonnentene og kan utvides med et tillegg i oversikten, og det nullstilles ved månedsskiftet.
Innlegget står allerede i kø, og svaret sier når. Ett innlegg kan bare stå i kø én gang: skal du flytte tidspunktet, avlys først og legg det inn på nytt.
Det finnes allerede et innlegg på den adressen. Sender du slug ved opprettelse, er det nettopp dette svaret som gjør kallet trygt å gjenta: den andre gangen lager vi ikke en tvilling, vi sier fra. Skal du endre innlegget som ligger der, hent det og bruk PATCH.
Bare fysiske produkter har lager. Et digitalt produkt har ingen beholdning å justere.
Produktet har ingen beholdning å endre på. Sett et tall med set før du begynner å justere med delta.
Trekket ville gjort beholdningen negativ. Svaret bærer inventory med beholdningen slik den faktisk er, så du kan avstemme mot ditt eget tall i stedet for å prøve igjen på noe som ikke kan gå.
Bestillingen kan ikke merkes som sendt fra statusen den har nå. Svaret bærer status, så du ser hvorfor. Som regel er den alt merket, og da er dette det som hindrer at kjøperen får to beskjeder.
Bare betalte og sendte bestillinger kan refunderes.
Publikasjonen har alt så mange egne sider som den får ha. Slett en før du lager en til.
En forespørsel med den samme Idempotency-Key kjører allerede. Vent et øyeblikk og spør på nytt: da får du svaret den første ga.
413Content Too Large
Filen er større enn vi tar imot. Komprimer eller skaler den ned.
Filen er større enn 5 MB.
Bildet er større enn 5 MB.
415Unsupported Media Type
Innpakningen er ikke den ruta venter. Dette er om formatet, ikke om innholdet.
Filtypen støttes ikke. Bruk PNG, JPG, WebP, SVG eller GIF.
/media tar imot en fil, ikke JSON. Send multipart/form-data med feltene purpose og file.
422Unprocessable Content
Vi leste bodyen, men kan ikke bruke den. Koden navngir hva som er galt, og feltet står i field når feilen gjelder ett bestemt. Ingenting ble lagret, heller ikke delvis.
Tidspunktet har vært. Et innlegg lagt inn bakover i tid ville blitt publisert på første kryss, som aldri er det noen mente med å planlegge det.
Du sendte ingen felt å endre. Kommer den når du trodde du sendte noe, mangler som regel Content-Type: application/json, og da ble bodyen aldri lest.
need-exactly-one-of-delta-or-set
Lagerjustering tar enten delta eller set. Begge, eller ingen, og vi måtte gjettet hva du mente.
Brødteksten kom både som content og som markdown. Vi velger ikke for deg hvilken som gjelder. Send én av dem.
Et digitalt produkt må levere noe når det blir kjøpt. Sett delivery_file_key, delivery_reveal_text eller begge.
Den adressen eier skribb selv. Sida ville blitt lagret og så aldri vist, fordi den faste ruta vinner over din.
Filen er tom.
Skjemaet hadde ikke noe file-felt.
purpose må være image, delivery eller post. from-url tar bare image og post.
from-url trenger en url.
Adressen lot seg ikke lese som en adresse.
Adressen er lengre enn 2000 tegn.
Vi henter bare over https.
Adressen har brukernavn eller passord i seg, og det sender vi ikke videre.
Adressen peker inn i et privat nett, på maskinen selv eller på et internt navn. Den kan vi ikke hente fra. Gjelder også en adresse som sender oss videre dit.
Adressen peker på skribb selv.
Adressen sendte oss videre mer enn tre ganger.
Det som kom tilbake, var ikke et bilde vi tar. Vi tar PNG, JPG, WebP og GIF, og det er innholdstypen som avgjør, ikke hva adressen slutter på.
SVG er et dokument som kan kjøre kode, og det ville blitt servert fra vårt eget mediedomene. Send det som PNG i stedet.
Ukjent fraktselskap. Gyldige verdier er posten, postnord og helthjem.
Ukjent status å filtrere på. Bestillinger tar paid, fulfilled, canceled og refunded; abonnenter tar venter, bekreftet og avmeldt.
Gyldig verdi er markdown.
kind må være kontakt eller chat.
limit må være et heltall innenfor det ruta tillater. Grensa står på hver rute.
Cursoren er ikke lesbar, eller den hører til en annen liste. En cursor fra produkter virker ikke på bestillinger.
updated_since må være et tidspunkt på ISO 8601-form.
Adressen kan bare inneholde små bokstaver, tall og bindestrek.
Notatet trenger en tittel, og en eventuell link_url må begynne med http:// eller https://.
Hver kategori må ha en slug av små bokstaver, tall og bindestrek, og et navn. Vi lagrer ikke bare de gyldige.
Flere kategorier enn en publikasjon får ha.
Flere menylenker enn det er plass til. max i svaret sier hvor mange det er.
En menylenke peker på en side nettstedet ikke har. slug i svaret er den vi ikke fant, index er lenka det gjelder, og pages lister sidene som finnes. Lenker med flere ledd (/posts/min-artikkel) og adresser ut av nettstedet blir ikke vurdert.
Ukjent kategoritype. Innlegg tar categories og tags, og ikke noe annet.
Idempotency-Key er for lang. Hold deg under 255 tegn.
Send en Idempotency-Key du finner på selv, så er det trygt å prøve igjen. Andre steder er hodet valgfritt, fordi et svar som går tapt der, koster en dublett du kan slette. Her koster det det samme brevet én gang til i alle innbokser, og det er bare du som vet at de to forespørslene var den samme.
Den Idempotency-Key er brukt før, med en annen body. Velg en ny per forespørsel, ikke per forsøk.
429Too Many Requests
Retry-After sier hvor lenge du bør vente. Et minutt holder alltid.
For mange forespørsler på kort tid. Retry-After sier hvor lenge du bør vente.
502Bad Gateway
Feilen er på vår side eller hos noen vi snakker med. Dette er verdt å prøve igjen, gjerne med litt venting mellom forsøkene.
Vi nådde ikke fram til adressen.
Vi nådde ikke fram til publikasjonen din.
Publikasjonen svarte ikke. Som regel forbigående.
Publikasjonen svarte uten å oppgi en id for det som ble laget.
Publikasjonen svarte med noe vi ikke kjente igjen. Det er en feil på vår side.
Publikasjonen mangler nøkkelen vi bruker for å skrive innhold til den. Dette må vi rette. Si fra, så ordner vi det.
Publikasjonen ga oss ingen skrivenøkkel da vi spurte. Som regel forbigående, så det er verdt et forsøk til.
Stripe tok ikke imot refusjonen. Bestillingen står som før, så ingen penger er på vei noe sted.
503Service Unavailable
Noe i oppsettet mangler. Å prøve igjen hjelper ikke før det er gjort ferdig i oversikten.
Utbetalinger er ikke satt opp for denne publikasjonen.
Stripe-oppsettet er påbegynt, men ikke fullført. Gjør det ferdig i oversikten.