Passer au contenu

Validation

Formerie valide les valeurs soumises sur le serveur. Les vérifications du SDK ou du navigateur peuvent améliorer l’expérience utilisateur, mais la soumission finale demeure celle qui fait foi.

Chemins des champs

Les champs imbriqués utilisent des chemins avec des points et des crochets :

Text
contact.email
guests[0].email
guests[1].name

Les réponses de validation utilisent ces chemins dans error.fields et dans error.issues.

Plusieurs problèmes par champ

Un même champ peut retourner plusieurs problèmes. Le code d’interface devrait tous les conserver et choisir d’afficher le premier ou la liste complète.

JSON
{
  "path": "contact.email",
  "code": "FIELD_EMAIL_INVALID",
  "message": "Invalid email address.",
  "rule": "email",
  "params": {}
}

Capacités courantes des champs

Formerie prend en charge des modèles courants et déterministes de validation et de normalisation :

  • champs obligatoires
  • longueur minimale, maximale et exacte des chaînes
  • vérifications de courriel, d’URL, de téléphone, d’UUID, de date, d’heure et de date et heure
  • valeurs permises
  • bornes numériques et exigences de nombres entiers
  • vérifications de minimum, de maximum et d’unicité des tableaux
  • champs d’objets imbriqués
  • règles de formulaire contextuelles définies côté serveur
  • règles de visibilité conditionnelle définies côté serveur
  • retrait des espaces, normalisation des courriels, transformations de casse et assainisseurs sûrs

L’API ignore les champs masqués et ne les inclut pas dans les valeurs assainies. Utilisez les règles de visibilité pour l’affichage de l’interface seulement; la livraison, les destinataires, les gabarits et les identifiants des fournisseurs restent gérés côté serveur.

Validation partielle et par étape

Utilisez POST https://forms.formerie.com/{workspaceHandle}/{formHandle}/validate ou la fonction validate() du SDK pour les formulaires progressifs. Si vous ciblez explicitement les routes de l’API, la route équivalente est POST /v1/{workspaceHandle}/{formHandle}/validate sur https://api.formerie.com.

  • partial : valide seulement les champs fournis.
  • step : valide les champs configurés pour l’étape publique nommée.
  • soumission finale : valide le formulaire au complet et demeure celle qui fait foi.

La validation partielle n’enregistre pas de soumissions, ne vérifie pas de jetons CAPTCHA, ne réserve pas de quota et n’envoie pas de courriel.