En plus de l’utilisation des cachets dans le cadre d’une transaction, nous proposons un service de cachet autonome.
Avant de pouvoir demander un cachet sur un document, vous devez :
- Posséder un certificat de personne morale (CPM).
- Vous assurer que la fonctionnalité est activée sur votre compte.
Pour demander la création d’un CPM et/ou activer la fonctionnalité sur votre compte, contactez votre gestionnaire de compte chez Universign.
Notez que lorsque vous utilisez le service de cachet autonome, les documents cachetés ne sont pas stockés. Les documents ne sont stockés que lorsque vous cachetez un document dans le cadre d’une transaction.
Pour apposer un cachet sur un document, envoyez une requête multipart/form-data à POST /v1/seals et transmettez le document dans l’argument file ainsi que le seal_id du certificat.
Notez que nous n’acceptons que le format PDF pour les fichiers d’une taille maximale de 25 Mo.
curl
https://api.universign.com/v1/seals \
-F [email protected] \
-d seal_id=lpc_wa7ZVZGxzOq0 \
-d label="John DOE, CEO of the company"
Vous pouvez passer des paramètres facultatifs :
field_page: numéro de la page sur laquelle vous souhaitez positionner le cachet. La valeur par défaut est1.field_x: coordonnée horizontale du cachet sur la page du document (en pixels). La valeur par défaut est0.field_y: coordonnée verticale du cachet sur la page du document (en pixels). La valeur par défaut est0.height: la hauteur du cachet (exprimée dans les unités d’espace utilisateur par défaut du PDF). La valeur minimale est23et le ratio de hauteur doit être 4 x la largeur.width: la largeur du cachet (exprimée dans les unités d’espace utilisateur par défaut du PDF). La valeur minimale est92et le ratio de hauteur doit être 4 x la largeur.
Si vous ne transmettez que les paramètres obligatoires ou si vous ne transmettez pas les paramètres field_page, field_x, field_y, height et width, la requête renvoie une réponse 200 qui contient un cachet de document PAdES avec un cachet invisible.
-
language: la langue du texte dans la cartouche du cachet (« Scellé par [sealname], le [sealdate] »). Le format d’entrée attendu est ISO 639-1. Nous prenons actuellement en charge les langues suivantes : Français (fr), Allemand (de), Anglais (en), Bulgare (bg), Catalan (ca), Espagnol (es), Italien (it), Néerlandais (nl), Norvégien (no), Polonais (pl), Portugais (pt), Roumain (ro) et Suédois (sv). Le français (fr) est la langue par défaut. -
custom_logo: le logo du cachet qui s’affichera sur le document. Nous acceptons uniquement les formats JPEG et PNG d’une taille maximale de 2 Mo.
Remarque : Pour garantir une résolution de haute qualité, les dimensions de votre logo doivent être de 300px x 72px.
Notez que la taille du cachet est fixée à 200px x 50px et ne peut pas être modifiée. Assurez-vous que le cachet est bien positionné dans le document. Si l’un des bords du cachet dépasse les limites du document, l’API renvoie une erreur.
-
label: le libellé qui s’affichera sur le cartouche de signature. Notez que la valeurlabelsera toujours précédée de l’expression Sealed by (Scellé par) générée automatiquement par notre système. Cette fonctionnalité doit être activée dans votre espace de travail. -
compliance_policy: à définir surpdfapour forcer l’opération de cachet à respecter la norme PDF/A. Si ce paramètre n’est pas défini, si vous importez un document PDF/A, il sera scellé mais ne sera plus conforme à la norme PDF/A. signature_type: le type de signature pour un cachet autonome. transmettez-le surcertificationpour appliquer une signature de certification au document. Pour plus de détails, consultez Signatures de certification.certification_permission: définit les modifications autorisées après l’application d’une signature de certification. Les valeurs possibles sontread_only,fill,annotate. À définir uniquement sisignature_typeest défini surcertification.
Les autorisations de certificat
read_only: aucune modification du document n’est autorisée. Toute modification du document invalide la signature.

fill: les modifications autorisées sont le remplissage de formulaires, l’instauration de modèles de page et la signature. Toute autre modification invalidera la signature.

Notez que les formulaires et les champs de signature doivent déjà être présents dans le document à certifier.
Les champs de signature intégrés doivent avoir des dimensions égales ou supérieures à 200x50px. Si un champ de signature intégré est trop petit, le document n’est pas accepté.

annotate: les modifications autorisées sont les mêmes que pourfill, ainsi que la création, la suppression et la modification d’annotations. Toute autre modification invalidera la signature.

Sceller un document à l’aide d’un certificat QCP-l-qscd
Vous pouvez être amené à sceller un document à l’aide d’un certificat QCP-l-qscd de personne morale (CPM). Comme il s’agit d’un certificat de niveau supérieur, l’utilisation du cachet doit être autorisée en saisissant le code PIN - préalablement initialisé - pour ce certificat.
Pour ce faire, vous devez passer le code PIN du certificat dans l’argument auth_data[].value, comme dans l’exemple de requête ci-dessous :
Exemple de requête
curl
https://api.universign.com/v1/seals \
-F [email protected] \
-d seal_id=lpc_wa7ZVZGxzOq0 \
-d auth_data[atm_Bw3e].value=12345678
auth_data[ ].value: à définir uniquement pour autoriser l’utilisation d’un certificat QCP-l-qscd de personne morale (CPM) afin de sceller un document. Vous devez spécifier le code PIN associé au certificat. L’identifiant du moyen d’authentification doit être ajoutée à l’argumentauth_data[ ].valueentre crochets (par exempleauth_data[atm_Bw3e].value). Notez que vous pouvez récupérer l’identifiant du moyen d’authentification dans la section Certificats de votre espace de travail.
Sceller un document PDF/A
PDF/A est un format normalisé ISO (ISO 19005) soumis à des règles strictes visant à éliminer tout élément susceptible de se détériorer avec le temps.
PDF/A est généralement requis lorsque des documents doivent être archivés, échangés ou conservés à des fins juridiques.
Vous pouvez avoir besoin de sceller sur un document PDF/A et de garantir le même niveau de conformité une fois le cachet apposé. Pour ce faire, envoyez une requête multipart/form-data à POST /v1/seals et transmettez le document dans l’argument file, le seal_id du certificat, ainsi que l’argument compliance_policy.
curl
https://api.universign.com/v1/seals \
-F file=@MyPDF_A.pdf \
-d seal_id=lpc_wa7ZVZGxzOq0 \
-d compliance_policy=pdfa
L’API renvoie une réponse 200 contenant le document PDF/A scellé et présentant le même niveau de conformité.
Les illustrations ci-dessous montrent la vérification de la conformité du document PDF/A avant et après l’apposition du cachet.
Vérification de la conformité du document PDF/A

Vérification de la conformité du document PDF/A scellé

