Skip to main content
Firma vous permet d’ajouter des signatures électroniques juridiquement valables à toute application fonctionnant sur Cloudflare. Appelez l’API Firma depuis des Workers ou des Pages Functions pour créer des modèles, envoyer des demandes de signature et suivre les finalisations via des webhooks. Ce guide couvre deux approches d’intégration :
  1. Workers — Fonctions serverless autonomes qui appellent l’API REST Firma. Idéal pour les API, les microservices ou les applications qui n’utilisent pas Cloudflare Pages.
  2. Pages Functions — Fonctions serverless basées sur des fichiers, déployées avec votre site Cloudflare Pages. Idéal si vous avez déjà un projet Pages et souhaitez tout regrouper dans un seul dépôt.
Les deux approches utilisent les mêmes points de terminaison de l’API Firma. La différence réside dans la structuration et le déploiement de votre code.

Prérequis

  • Un compte Firma avec une clé API
  • Le Wrangler CLI installé (npm install -g wrangler)
  • Au moins un modèle Firma avec des champs de signature configurés
Firma utilise la clé API brute comme valeur de l’en-tête Authorization. Ne la préfixez pas avec Bearer. Cela diffère de nombreuses autres API.

Choisissez votre approche

Étape 1 : Créer un projet Worker

Si vous n’avez pas encore de projet Workers, créez-en un :
Sélectionnez “Hello World” Worker lorsque vous y êtes invité, puis choisissez JavaScript ou TypeScript. Une fois l’échafaudage terminé :

Étape 2 : Stocker votre clé API en tant que secret

Ajoutez votre clé API Firma en tant que secret chiffré. Wrangler vous invitera à coller la valeur :
Ne codez jamais en dur votre clé API dans les fichiers source. Les secrets sont chiffrés au repos et injectés dans la liaison env de votre Worker au moment de l’exécution.

Étape 3 : Créer un Worker pour envoyer des demandes de signature

Remplacez le contenu de src/index.js (ou src/index.ts si vous avez choisi TypeScript) par ce qui suit. Ce Worker accepte une requête POST avec les informations du signataire, appelle le point de terminaison Firma create-and-send, et renvoie l’identifiant de la demande de signature.
Le point de terminaison create-and-send crée la demande de signature et l’envoie aux destinataires en un seul appel. Si vous devez examiner ou modifier la demande avant l’envoi, utilisez POST /signing-requests pour créer un brouillon, puis POST /signing-requests/{id}/send séparément.

Étape 4 : Déployer

Wrangler affichera l’URL de votre Worker (quelque chose comme https://firma-signing.<your-subdomain>.workers.dev). Votre frontend peut désormais envoyer les informations du signataire à cette URL via POST.

Gestion des webhooks

Pour suivre le moment où les documents sont signés, créez un second Worker qui reçoit les événements webhook de Firma. Dans le tableau de bord Firma, sous Paramètres → Webhooks, enregistrez un webhook pointant vers l’URL de ce Worker.
Pour un usage en production, vérifiez toujours la signature du webhook à l’aide de votre secret de signature de webhook Firma. Consultez le guide des webhooks pour les détails d’implémentation.

Signature intégrée

Pour les applications où les signataires finalisent les documents directement dans votre interface, Firma propose une expérience de signature intégrable. La réponse create-and-send inclut un first_signer.id (le signing_request_user_id) et un first_signer.signing_link prêt à l’emploi. Chargez-le dans une iframe :
Consultez le guide de signature intégrée pour les instructions de configuration complètes, y compris les bonnes pratiques de sécurité.

Bonus : connexion MCP pour le développement assisté par IA

Firma propose un serveur MCP de documentation auquel les outils de codage IA peuvent se connecter. Si vous utilisez un assistant IA pendant la création de votre intégration Cloudflare, la connexion au serveur MCP lui permet de rechercher dans la documentation Firma et de générer des appels API précis. Ajoutez l’URL du serveur MCP à la configuration de votre outil :
Ceci concerne uniquement l’expérience de développement et n’affecte pas votre application déployée.

Étapes suivantes