Forespørsler
Feilsøke forespørsler
Hvor du skal se etter når en forespørsel ble avvist, en invitasjon aldri kom frem, eller en arbeidsflyt fortsatt venter på en callback som allerede skjedde.
Lese en feil
Hver avvisning bærer to ting: en code for typen feil, og en details.reason for den spesifikke årsaken. Grener på
koden; les årsaken for å vite hva du skal fikse. Der det hjelper, navngir details også det aktuelle field,
nøklene som ville blitt godtatt, eller alternativnøklene et valgspørsmål tar.
Forespørselsmetodene bruker fire koder: VALIDATION_ERROR (kallet var feil), CONFLICT (forespørselen er i feil
tilstand, eller en idempotensnøkkel ble gjenbrukt), NOT_FOUND, og UPGRADE_REQUIRED (en plansperre eller den
månedlige kvoten). Å kalle for fort returnerer RATE_LIMITED i stedet, med retryAfterMs — se
hastighetsbegrensningen.
{
"ok": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "No field with key \"company\".",
"details": { "reason": "UNKNOWN_FIELD_KEY", "field": "prefill.company", "validKeys": ["company_name", "company_size"] }
}
}Årsaker du kan se
Få kallet riktig
| Årsak | Hva du skal gjøre |
|---|---|
| FORM_NOT_PUBLISHED | Publiser skjemaet. En forespørsel fester en publisert versjon, så det må finnes en. |
| UNKNOWN_FIELD_KEY | Ingen felt med den nøkkelen, eller den hører hjemme i den andre bøtten. Hver context-nøkkel må være et skjult felt på det publiserte skjemaet; send fritekst-nøkler i metadata. Sjekk fields.list; validKeys lister de godtatte. |
| CONTEXT_KEY_NOT_HIDDEN_FIELD | Du sendte et synlig spørsmål — eller et beregnet felt — i context. Synlige spørsmål går i prefill; beregnede felt kan ikke settes i det hele tatt. |
| INVALID_PREFILL_VALUE | Feil form for den spørsmålstypen. expectedType sier hva som var ønsket; for valgspørsmål, send alternativnøkkelen, ikke etiketten; en matrise tar { "row_key": "column_key" }. expectedType «not_prefillable» betyr at feltet ikke tar noen kallerverdi — en fil, signatur, betaling, avtale, eller et beregnet felt. |
| READONLY_REQUIRES_PREFILL | En låst nøkkel har ingen verdi. Hver nøkkel i readonly må også være i prefill. |
| READONLY_REQUIRED_EMPTY | Et påkrevd felt er låst med en tom verdi — mottakeren kunne aldri sende inn. Oppgi en verdi eller slutt å låse det. |
| LANGUAGE_NOT_PUBLISHED | Det språket er ikke publisert på gjeldende versjon. validKeys lister de som er det. |
| INVALID_REMINDER_SCHEDULE | Et offset kunne ikke leses, det samme offsetet dukker opp to ganger, eller det er flere enn fem steg. Bruk positive hele dager, timer eller minutter: 2d, 12h, 30m. |
| EXPIRY_OUT_OF_RANGE | expiresAt er i fortiden eller mer enn 365 dager frem. |
| CALLBACK_URL_NOT_ALLOWED | URL-en er ikke HTTPS, bærer legitimasjon, eller løser til en privat adresse. Localhost vil ikke fungere — bruk en tunnel. |
| DOMAIN_NOT_ALLOWED | Det egendefinerte domenet er ikke aktivt, eller tilhører en annen arbeidsområde. |
| INVALID_DOCUMENT_TARGET | Skjemaet har ingen dokumentblokk, eller det har mer enn én og du navnga ikke hvilken med field. validKeys lister blokknøklene. |
| DOCUMENT_NOT_UPLOADED | Opplastingen ble reservert, men bytene ankom aldri. PUT filen til uploadUrl-en først. |
| DOCUMENT_INVALID | De opplastede bytene stemmer ikke med størrelsen, typen eller sha256-en documents.create oppga, eller typen er ikke en PDF eller et bilde. |
| DOCUMENTS_TOO_MANY | Blokken ville vist mer enn 20 dokumenter, medregnet de faste. |
| DOCUMENTS_TOO_LARGE | Én forespørsel kan bære 100 MB dokumenter totalt, og 25 MB per dokument. |
| SCOPE_REQUIRED | Å liste forespørsler trenger en arbeidsområde eller et skjema å avgrense listen til. |
| RECIPIENT_EMAIL_REQUIRED | E-postlevering eller påminnelser trenger recipient.email. |
| UPGRADE_REQUIRED | Planen inkluderer ikke funksjonen — påminnelser er Pro eller Business, og en gjestekonto kan ikke sende invitasjoner på e-post. |
| FREE_INVITATIONS_USED | Denne Gratis-kontoen har brukt opp sine 10 gratis invitasjoner, for godt. Opprett forespørselen med "delivery": "none" og send lenken selv, eller oppgrader til Pro. |
| MONTHLY_ALLOWANCE_REACHED | Arbeidsområdet har brukt opp denne månedens kvote av innsendinger og forespørsler. Hver forespørsel koster én enhet når den opprettes, besvart eller ikke. Forespørsler du allerede har opprettet kan fortsatt besvares; nye venter til den 1. eller en oppgradering. |
Handle på en eksisterende forespørsel
| Årsak | Hva du skal gjøre |
|---|---|
| REQUEST_NOT_FOUND | Ingen forespørsel med den id-en i en arbeidsområde dette tokenet kan nå. |
| REQUEST_NOT_PENDING | Allerede fullført, utløpt, eller kansellert. Du kan ikke purre eller kansellere en avsluttet forespørsel. |
| REMINDER_TOO_SOON | En manuell påminnelse ble sendt for mindre enn ti minutter siden. details.retryAfterMs sier hvor lenge du må vente. |
| REMINDER_CAP_REACHED | Denne forespørselen har fått alle de åtte påminnelsene den noensinne får, manuelle og planlagte sammen. |
| TEST_REQUEST | Du ba formbase om å sende en testforespørsel på e-post. Det sendes aldri noe på e-post for én — åpne lenken dens selv i stedet. |
| REQUEST_NOT_TERMINAL | Du ba om å spille av en callback for en forespørsel som fortsatt venter. Det er ingenting å spille av ennå. |
| NO_CALLBACK_TO_REPLAY | Forespørselen ble opprettet uten en callbackUrl. |
| IDEMPOTENCY_CONFLICT | Den nøkkelen ble brukt for en annen body. Bruk en ny nøkkel, eller send den opprinnelige bodyen uendret på nytt. |
Invitasjonen kom aldri frem
Åpne forespørselen på Forespørsler-siden og les tidslinjen. Den første invitasjonslinjen forteller deg hvilket tilfelle du er i.
| Tidslinjen sier | Hva det betyr | Hva du skal gjøre |
|---|---|---|
| Invitasjon i kø | Godtatt, ikke sendt ennå. | Gi det et minutt. Hvis den blir stående i kø, sjekk at forespørselen har en mottaker-e-post. |
| Invitasjon levert | Overlevert til e-postleverandøren. | Be dem sjekke søppelpost. Å sende fra ditt eget domene hjelper — se egendefinerte e-postdomener. |
| Invitasjon feilet | formbase kunne ikke sende den — eller leverandøren avviste den, eller mottakeren merket den som spam. | Les deliveryStatus på requests.get: «failed» er som regel et plan- eller adresseproblem, så fiks det og send en påminnelse, som bærer samme lenke (på Gratis kopierer du lenken og sender den selv). «bounced» betyr at adressen er feil eller død — opprett en ny forespørsel for riktig adresse; å purre vil ikke hjelpe. |
Ingen tidslinjeoppføring i det hele tatt
Da ble det aldri bedt om noen e-post. Forespørselen ble opprettet med delivery: “none” — lever lenken selv, eller opprett
en ny forespørsel med delivery: “email”.
Invitasjoner og påminnelser deler et budsjett på ti e-poster per dag per skjema og mottakeradresse, og en forespørsel sender aldri mer enn ni e-poster til mottakeren i løpet av sitt liv — én invitasjon og opptil åtte påminnelser.
Callbacken landet aldri
Forespørselsskuffens Callback-seksjon viser URL-en og utfallet. Callback feilet etter N forsøk betyr at formbase prøvde og ga opp — åtte forsøk over om lag fire timer.
Sjekk URL-en. Den vises i skuffen. Et arbeidsflytverktøys gjenopptakelses-URL tilhører én kjøring, og en kjøring som ble slettet eller gjenopprettet svarer ikke lenger på den.
Sjekk hva endepunktet ditt returnerte. Alt utenfor 2xx er en feil. En 4xx annet enn 408 eller 429 stopper de nye forsøkene umiddelbart — formbase leser det som «endepunktet ditt avviste dette», og å resende identiske byte kan ikke endre det.
Fiks mottakeren, trykk deretter Kjør på nytt. Den samme nyttelasten sendes ut igjen med samme hendelses-id, så en mottaker som avdupliserer er trygg.
Signatursjekk feiler?
Nesten alltid den rå bodyen. Hvis du parser JSON-en og re-serialiserer den før hashing, er bytene forskjellige og signaturen vil aldri stemme. Hash bodyen akkurat slik den ankom. Den andre vanlige årsaken er en regenerert signeringshemmelighet som mottakeren ikke har plukket opp — det finnes ingen overgangsperiode.
Andre ting folk treffer på
Mottakeren sier at lenken viser en melding, ikke skjemaet. Forespørselen er endelig — fullført, utløpt, eller kansellert. Det er resultatsiden. Opprett en ny forespørsel hvis de trenger et nytt forsøk.
En automatisering sluttet å matche etter en redigering — et svar forsvant fra callbacken, eller
requests.createbegynte å avvise en nøkkel medUNKNOWN_FIELD_KEY. En publisert feltnøkkel forsvant: noen skrev inn en annen nøkkel, eller slettet spørsmålet og la til et nytt i stedet. Å endre tittelen er trygt; begge disse er det ikke. Skriv inn den gamle nøkkelen på feltet (nøkkel-ikonet i verktøylinjen → Nøkler) og publiser på nytt. Publisering advarer før dette skjer — se Når en publisert nøkkel er i ferd med å forsvinne.Forhåndsutfylling av en filopplasting eller en signatur avvises. De kan ikke oppgis av en kaller —
fields.listmerker demprefillable: false.To forespørsler dukket opp for én arbeidsflyt-kjøring. Kjøringen ble forsøkt på nytt uten en
idempotencyKey. Send kjørings-id-en som nøkkelen.