Mises à jour de produit

Firma.dev API v1.9.0 : Vérification OTP, Remplacement de Modèle de Document et Mises à Jour de Schéma

Graphique thème sombre montrant "API v1.9.0" en blanc gras avec soulignement violet et icônes pour la sécurité, les mises à jour et le développement

v1.9.0 est une version ciblée, construite au-dessus de v1.8.0, sans changements incompatibles. Si vous êtes déjà intégré aujourd’hui, rien ne casse. Deux nouvelles fonctionnalités sont désormais disponibles quand vous en avez besoin : la vérification OTP par e-mail du signataire et le remplacement du document du modèle.

Qu'y a-t-il dans v1.9.0

Quoi

Type

Détails

OTP par e-mail du signataire

Nouvelle fonctionnalité + champ de schéma

require_otp_verification sur la demande de signature, l'espace de travail et les paramètres de l'entreprise

Remplacement du document du modèle

Nouvelle fonctionnalité + point de terminaison

POST /templates/{id}/replace-document

Les deux changements sont additifs. Aucun champ n'a été supprimé, aucun comportement de point de terminaison n'a été modifié, aucune migration n'est requise depuis v1.8.0.

Nouveau : vérification OTP par e-mail du signataire

Le paramètre require_otp_verification ajoute une étape de vérification d'identité avant qu'un signataire puisse accéder à un document. Lorsqu'il est activé, les signataires voient un écran de vérification à l'ouverture de leur lien de signature, reçoivent un code à 6 chiffres par e-mail et doivent le saisir avant le chargement du document.

Le paramètre est un champ à trois états : true, false ou null. null signifie hériter du niveau supérieur. La chaîne de remplacement s'exécute entreprise → espace de travail → modèle → demande de signature, la demande de signature ayant la priorité la plus élevée.

Niveau

Champ

Comportement

Entreprise

require_otp_verification

Valeur par défaut de base pour tous les espaces de travail

Paramètres de l'espace de travail

require_otp_verification

Remplace l'entreprise ; null hérite de l'entreprise

Modèle

require_otp_verification

Remplace l'espace de travail ; null hérite de l'espace de travail

Paramètres de la demande de signature

require_otp_verification

Priorité la plus élevée ; null hérite du modèle/de l'espace de travail

Activer l'OTP au niveau de l'espace de travail

PATCH /workspace-settings/{workspace_id}
{
  "settings": {
    "require_otp_verification": true
  }
}
PATCH /workspace-settings/{workspace_id}
{
  "settings": {
    "require_otp_verification": true
  }
}
PATCH /workspace-settings/{workspace_id}
{
  "settings": {
    "require_otp_verification": true
  }
}

Toutes les demandes de signature dans cet espace de travail requièrent désormais l'OTP par défaut.

Désactiver l'OTP pour une demande de signature spécifique

PATCH /signing-requests/{id}
{
  "settings": {
    "require_otp_verification": false
  }
}
PATCH /signing-requests/{id}
{
  "settings": {
    "require_otp_verification": false
  }
}
PATCH /signing-requests/{id}
{
  "settings": {
    "require_otp_verification": false
  }
}

Cette demande ignore l'OTP quelle que soit la configuration de l'espace de travail.

Modifications du schéma

Objet

Champ

Type

SigningRequestSettings

require_otp_verification

boolean | null

WorkspaceSettings

require_otp_verification

boolean | null

Nouveau : remplacement du document du modèle

Le nouveau POST /templates/{id}/replace-document point de terminaison vous permet de remplacer le PDF sous-jacent d'un modèle tout en conservant intactes toutes les positions des champs, les affectations des signataires et les paramètres.

Le document de remplacement doit satisfaire à deux exigences de validation : le même nombre de pages que l'original, et des dimensions de page dans une tolérance de 1 pt. Ces contraintes existent pour garantir que les positions des champs restent valides après l'échange. Si l'une ou l'autre vérification échoue, l'API renvoie une erreur 400 claire.

const fs = require("fs");

const base64PDF = fs.readFileSync("./updated-contract.pdf").toString("base64");

const response = await fetch(
  `https://api.firma.dev/v1/templates/${templateId}/replace-document`,
  {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${apiKey}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({ document: base64PDF })
  }
);

const updatedTemplate = await response.json();
const fs = require("fs");

const base64PDF = fs.readFileSync("./updated-contract.pdf").toString("base64");

const response = await fetch(
  `https://api.firma.dev/v1/templates/${templateId}/replace-document`,
  {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${apiKey}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({ document: base64PDF })
  }
);

const updatedTemplate = await response.json();
const fs = require("fs");

const base64PDF = fs.readFileSync("./updated-contract.pdf").toString("base64");

const response = await fetch(
  `https://api.firma.dev/v1/templates/${templateId}/replace-document`,
  {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${apiKey}`,
      "Content-Type": "application/json"
    },
    body: JSON.stringify({ document: base64PDF })
  }
);

const updatedTemplate = await response.json();

Cas d'erreur :

Statut

Cause

400

Nombre de pages non conforme

400

Dimensions de page non conformes (dépasse la tolérance de 1 pt)

400

PDF invalide ou corrompu

Nouveaux points de terminaison

Méthode

Chemin

Description

POST

/templates/{id}/replace-document

Remplacer le PDF du modèle tout en conservant toutes les positions des champs

Mise à niveau depuis v1.8.0

Aucune action requise. Liste de contrôle :

  • Aucun champ n'a été supprimé d'aucun objet existant

  • Aucun changement de comportement pour les points de terminaison existants

  • require_otp_verification est par défaut à null (hérite), donc les intégrations existantes ne sont pas affectées tant que vous ne le définissez pas explicitement

  • POST /templates/{id}/replace-document est un nouveau point de terminaison, pas un remplacement de quoi que ce soit

La documentation complète de l'API se trouve sur docs.firma.dev. Le journal complet des modifications de l'API se trouve sur docs.firma.dev/guides/api-changelog.

Obtenez votre clé API et commencez à développer gratuitement, aucune carte de crédit requise.

  1. Titre

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,029 € par enveloppe lorsque vous êtes prêt à passer en direct.

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,029 € par enveloppe lorsque vous êtes prêt à passer en direct.

Image de fond

Prêt à ajouter des signatures électroniques à votre application ?

Commencez gratuitement. Aucune carte de crédit requise. Payez seulement 0,029 € par enveloppe lorsque vous êtes prêt à passer en direct.