Formulaires publics et collecte
Distinguer les formulaires configurables des intégrations authentifiées.
Choisir le parcours#
Cercla propose un canal de collecte web et des formulaires configurables liés au marketing. Ces surfaces publiques ne s'utilisent pas comme un CRUD avec jeton d'app. Leur objectif est de recevoir une saisie autorisée, pas d'exposer les fiches du CRM.
Utilisez l'URL et le code d'intégration produits par les réglages de votre instance. Ne copiez pas un secret d'app connectée dans une page de formulaire publique.
Préparer une intégration#
- Configurez les champs dans le formulaire et relevez son identifiant public.
- Vérifiez les textes d'information, les cases de choix et la confirmation attendue.
- Utilisez le rendu ou le contrat JSON correspondant au formulaire publié.
- Testez les champs obligatoires, les données invalides et les soumissions répétées.
- Contrôlez le rattachement, les événements et la suite du parcours dans le CRM.
Consentements et validation#
Transmettez les choix effectivement faits par la personne. Ne transformez pas l'envoi d'un formulaire en consentement implicite à toutes les communications ou à la mesure nominative.
Le serveur applique les schémas, les règles de dédoublonnage et les protections du canal. Une réponse neutre peut volontairement éviter de révéler l'existence d'un contact. Votre interface doit présenter le résultat prévu, sans tenter d'en déduire le contenu du CRM.
Erreurs et évolutions#
Quand un administrateur modifie les champs requis, refaites le test de soumission et de confirmation. Limitez les doubles envois côté interface et respectez les refus de validation et de débit. Les champs réellement publiés font référence pour cette version du formulaire.
URL et modes d'intégration#
| Canal | URL sur l'hôte de l'organisation |
|---|---|
| Page publiée | /f/{slug} |
| Affichage embarqué | /f/{slug}?embed=1 |
| Script d'intégration | /f/{slug}/embed.js |
| Ticket pour le client JSON | /api/public/forms/{slug}/ticket |
| Soumission | /api/public/forms/{slug} |
Le script cible un élément portant data-cercla-form avec le slug. Le formulaire embarqué annonce sa hauteur ; une intégration qui reçoit ce message doit vérifier l'origine et la fenêtre émettrice avant de modifier son affichage.
Soumettre depuis votre propre interface#
L'administrateur configure une origine autorisée pour le formulaire. Le client JSON utilise cette origine et X-Cercla-Form avec le jeton public du formulaire. Ce jeton n'est pas un secret d'app connectée.
- Demandez un ticket par GET sur la route dédiée avec les en-têtes du formulaire.
- Respectez
minDelayMsavant de soumettre ; le ticket possède aussi une expiration. - Postez du JSON avec les champs publiés,
ticket, le choixconsentet, si la personne l'a choisi,measure. - Gardez le champ piège
websitevide : ce n'est pas le champ site web d'une société. - Traitez la confirmation
201 { "ok": true }et les refus sans révéler des données du CRM.
Le POST natif en formulaire URL-encodé utilise un parcours avec redirection 303. Ne supposez pas que tous les modes rendent le même corps JSON. Les erreurs possibles comprennent une origine refusée, un formulaire non publié, un corps trop volumineux et une limite de soumissions atteinte.