ID du formulaire

Depuis un serveur

Créez des soumissions depuis un backend, un script ou une intégration avec une clé API secrète.

Les backends, tâches cron et intégrations peuvent envoyer vers le même endpoint que les navigateurs. Ajoutez une clé API secrète pour qu'Ikiform sache que l'envoi vient de vous.

Créez une clé secrète

  1. Dans le tableau de bord, ouvrez API keys et créez une clé secret.
  2. Donnez-lui la portée submissions:write. Ajoutez submissions:read et forms:read seulement si la même clé lit aussi des données via l'API REST.
  3. Copiez la clé. Elle commence par ik_sk_ et n'est affichée qu'une fois ; Ikiform n'en stocke que le hachage.

Envoyez une soumission

const response = await fetch("https://ikiform.com/f/frm_xxxxxxxxxxxxxxxx", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    Authorization: `Bearer ${process.env.IKIFORM_SECRET_KEY}`,
    "Idempotency-Key": order.id,
  },
  body: JSON.stringify({ email: order.email, plan: order.plan }),
});

const result = await response.json();
if (!result.ok) throw new Error(`${result.error.code}: ${result.error.message} (${result.request_id})`);

Ce que change une clé secrète

ContrôleSans cléAvec une clé secrète
Domaines autorisésComparés à Origin ou RefererIgnoré
Vérification humaine IkiformObligatoire si activéeIgnoré
Vos propres clés TurnstileToken obligatoireToken toujours obligatoire
Limites de débitPar IP de visiteur et par formulaireToujours appliquées, par IP de votre serveur
Validation des champs et score de spamExécutésExécutés

Une clé d'un autre espace de travail, une clé révoquée ou une clé secrète sans submissions:write reçoit 403 forbidden. Un en-tête Authorization mal formé est lui aussi refusé plutôt qu'ignoré, pour qu'une faute de frappe ne transforme jamais l'envoi en envoi anonyme sans que vous le sachiez.

Les envois depuis votre serveur viennent tous de l'adresse IP de votre serveur, donc les limites de débit par visiteur d'Ikiform comptent tous les visiteurs ensemble. Le préréglage Standard autorise 5 envois par minute par IP et par formulaire, ce qu'un site fréquenté peut atteindre. Envoyez depuis le navigateur quand c'est possible, ou choisissez la limite de débit Relaxed ou Custom pour les formulaires que vous faites passer par un serveur.

Clés publiables

Les clés publiables (ik_pub_) sont destinées aux navigateurs. Elles peuvent seulement soumettre, et uniquement depuis les domaines listés sur la clé. Un envoi avec une clé publiable depuis un autre site reçoit 403 origin_not_allowed. Elles ne contournent ni la vérification humaine ni les domaines autorisés du formulaire.

Ne mettez jamais une clé secrète dans du code navigateur, une app mobile ou un dépôt public. Révoquez-la dans le tableau de bord en cas de fuite.

Nouvelles tentatives

Les serveurs réessaient. Envoyez une Idempotency-Key stable pour ce que vous soumettez, comme un id de commande, et une nouvelle tentative rejouera la première réponse au lieu de créer un doublon. Voir Idempotence.