eSignature

Solutions de signature avec validité européenne, disponibles dans une seule API

eSignature est l'API pour automatiser la signature numérique de documents, conforme au règlement eIDAS et sans frais fixes : vous ne payez que pour les utilisations effectives.

Toutes les connaissances dont vous avez besoin

Vous trouverez ici quelques conseils à prendre en compte pour aborder cette API. Si vous préférez, nous fournissons des exemples de code, la documentation OAS3, la possibilité d'essayer l'API en direct via Swagger UI ou d'importer l'intégralité de la collection dans Postman. Nous proposons également un environnement Sandbox où vous pouvez expérimenter toutes sortes de requêtes de manière totalement gratuite.

Conseils utiles pour commencer eSignature

Obtenir le Token dans la section appropriée avant de commencer.

Utilisez l'outil en ligne ou générez-le via l'API. Définissez la date d'expiration, un nom utile et ajoutez maintenant un ensemble d'étendues pour limiter les actions possibles que votre jeton peut effectuer.

Obtenez votre Certificat

Utilisez les points de terminaison suivants pour obtenir un certificat de signature afin de signer numériquement vos fichiers :

Obtenez votre premier certificat

POST /certificates/namirial-automatic
Ce point de terminaison vous permet d'obtenir un nouveau certificat.
La réponse contiendra un lien de l'autorité d'enregistrement pour vérifier l'identité et générer le certificat.
Une fois la procédure terminée, l'utilisateur recevra les identifiants pour signer en utilisant le certificat.
Comme il peut s'agir d'une opération unique, vous préférerez peut-être contacter notre équipe pour obtenir plus d'informations ou pour obtenir le certificat manuellement.

Obtenez une liste des certificats possédés
GET /certificates
Ce point de terminaison renvoie une liste de certificats. La liste peut être filtrée par état et type de certificat.

Obtenez les détails du certificat
GET /certificates/{id}
Ce point de terminaison renvoie les détails d'un certificat.

Faites votre première Signature Électronique

Utilisez les points de terminaison suivants pour gérer les signatures électroniques :

Créez votre première Signature QES

POST /EU-QES_automatic
Ce point de terminaison vous permet de créer une Signature QES en utilisant un Certificat Automatique Massif.
Entrez votre document et les identifiants du certificat pour signer le document.
La réponse contiendra les détails de la signature. Prenez l'{id} et...

Téléchargez le document signé
GET /signatures/{id}/signedDocument
La sortie sera le document signé.

Obtenez une liste des signatures
GET /signatures
Ce point de terminaison renvoie une liste de signatures. La liste peut être filtrée par état, type de certificat et type de signature.

Obtenez les détails de la signature
GET /signatures/{id}/{actionType}
Ce point de terminaison renvoie les détails, l'audit, le document signé (signedDocument) ou le document validé (validatedDocument) d'une signature.

E-Signature API (1.0.16)

Cette API est conçue pour fournir un ensemble complet d'outils permettant d'intégrer les processus de signature électronique dans n'importe quelle application.

Ce que vous pouvez faire avec cette API

  • acheter et renouveler des certificats de signature physique, à distance, otp ou automatique
  • signer électroniquement des documents selon les principaux standards eIDAS
    • QES (CAdES, PAdES, XAdES, PKCS#1, QTimestamp)
      • OTP à distance
      • Automatique massif
      • Massif Automatique Sceau électronique
  • vérifier la validité d'un document signé

Certificates

Achat ou renouvellement de certificats de signature

Obtenir une liste de certificats

Obtenir une liste de certificats. La liste peut être filtrée par type de certificat et par état. Les types disponibles sont les suivants : EU-QES_automaticm EU-QES_otp. Les états disponibles sont les suivants : NEW, EXPIRED et SUSPENDED : NEW, EXPIRED et SUSPENDED.

Authorizations:
bearerAuth
query Parameters
certificateType
string
Enum: "EU-QES_automatic" "EU-QES_otp" "EU-QES_eseal"
Example: certificateType=EU-QES_automatic

Type de certificat

state
string
Enum: "NEW" "EXPIRED" "SUSPENDED"
Example: state=NEW

État du certificat

skip
integer >= 0
Default: 0

Nombre d'éléments à ignorer

limit
integer [ 1 .. 100 ]
Default: 100
Example: limit=100

Nombre maximum d'éléments à renvoyer (min 1 max 100)

Responses

Response Schema: application/json
Array
id
string

ID du certificat

certificateOwner
string

Nom du propriétaire du certificat

customReference
string

Référence personnalisée pour le certificat

certificateType
string
Enum: "EU-QES_automatic" "EU-QES_otp"

Type de certificat

createdAt
string

Date et heure de création

expireAt
string

Date et heure d'expiration du certificat

state
string
Enum: "NEW" "EXPIRED" "SUSPENDED"

État du certificat

certificateLink
string <uri>

URL pour lancer la procédure d'attribution du certificat

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://esignature.openapi.com/certificates?certificateType=SOME_STRING_VALUE&state=SOME_STRING_VALUE&skip=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
[
  • {
    }
]

Obtenir un certificat

Obtenir un certificat par ID. L'ID du certificat est nécessaire pour accéder au service.

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: 67af24c5af9b55291406e946

ID du certificat

Responses

Response Schema: application/json
id
string

ID du certificat

certificateOwner
string

Nom du propriétaire du certificat

customReference
string

Référence personnalisée pour le certificat

certificateType
string
Enum: "EU-QES_automatic" "EU-QES_otp"

Type de certificat

createdAt
string

Date et heure de création

expireAt
string

Date et heure d'expiration du certificat

state
string
Enum: "NEW" "EXPIRED" "SUSPENDED"

État du certificat

certificateLink
string <uri>

URL pour lancer la procédure d'attribution du certificat

object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://esignature.openapi.com/certificates/67af24c5af9b55291406e946");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "id": "67af24c5af9b55291406e946",
  • "certificateOwner": "John Doe",
  • "customReference": "MyCustomReference#123",
  • "certificateType": "EU-QES_automatic",
  • "createdAt": "2025-02-14 11:11:01.892+00:00",
  • "expireAt": "2025-02-14 11:11:01.892+00:00",
  • "state": "NEW",
  • "callback": {
    }
}

Acheter un certificat automatique Namirial

Acheter un certificat automatique Namirial. Le certificat est valable un an et peut être utilisé pour signer des documents aux formats CAdES, PAdES, XAdES et PKCS#1. La procédure renvoie un certificateLink. Il s'agit d'une procédure unique de l'autorité de certification pour qualifier le propriétaire du certificat. Une fois la procédure terminée, le signataire reçoit

Authorizations:
bearerAuth
Request Body schema: application/json

Créez une nouvelle demande de certificat automatique Namirial en spécifiant les détails du certificat.

certificateOwner
string

Nom du propriétaire du certificat

customReference
string

Référence personnalisée pour le certificat, utile pour le suivi interne

object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Responses

Response Schema: application/json
object
success
boolean

Succès de l'opération

message
string

Message

error
string or null

Code d'erreur

Request samples

Content type
application/json
{
  • "certificateOwner": "John Doe",
  • "customReference": "MyCustomReference#123",
  • "callback": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "Certificate purchased successfully",
  • "error": ""
}

Acheter un certificat Namirial OTP

Acheter un certificat Namirial OTP. Le certificat est valable un an et peut être utilisé pour signer des documents aux formats CAdES, PAdES, XAdES et PKCS#1.

Authorizations:
bearerAuth
Request Body schema: application/json

Créez une nouvelle demande de certificat automatique Namirial en spécifiant les détails du certificat.

certificateOwner
string

Nom du propriétaire du certificat

customReference
string

Référence personnalisée pour le certificat, utile pour le suivi interne

object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Responses

Response Schema: application/json
object
success
boolean

Succès de l'opération

message
string

Message

error
string or null

Code d'erreur

Request samples

Content type
application/json
{
  • "certificateOwner": "John Doe",
  • "customReference": "MyCustomReference#123",
  • "callback": {
    }
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "success": true,
  • "message": "Certificate purchased successfully",
  • "error": ""
}

Signatures

Apposer une signature électronique sur un fichier

Obtenir une liste de signatures

Obtenir une liste de signatures. La liste peut être filtrée par état, par type de certificat et par type de signature. Les états disponibles sont les suivants : WAIT_VALIDATION, WAIT_SIGN, DONE et ERROR : WAIT_VALIDATION, WAIT_SIGN, DONE et ERROR. Les types de certificats disponibles sont les suivants : EU-QES_automatic, EU-QES_remote_otp, EU-QES_remote_eseal, EU-QES_disposable_recognition, EU-QES_disposable_spid, EU-QES_mail_otp, et EU-QES_sms_otp. Les types de signature disponibles sont : cades, pades, xades et pkcs1.

Authorizations:
bearerAuth
query Parameters
state
string
Enum: "WAIT_VALIDATION" "WAIT_SIGN" "DONE" "ERROR"
Example: state=DONE

État de la signature

certificateType
string
Enum: "EU-QES_automatic" "EU-QES_otp"
Example: certificateType=EU-QES_automatic

Type de certificat

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"
Example: signatureType=pades

Type de signature

skip
integer >= 0
Default: 0

Nombre d'éléments à ignorer

limit
integer [ 1 .. 100 ]
Default: 100
Example: limit=100

Nombre maximum d'éléments à renvoyer (min 1 max 100)

Responses

Response Schema: application/json
Array
id
string

ID de la signature

updatedAt
string

Date et heure de la dernière mise à jour

createdAt
string

Date et heure de création

documentTitle
string

Titre du document

certificateType
string
Enum: "EU-QES_automatic" "EU-QES_remote_otp"

Type de certificat

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature

state
string
Enum: "WAIT_VALIDATION" "WAIT_SIGN" "DONE" "ERROR"

État de la signature

errorNumber
integer or null

Numéro d'erreur

errorMessage
string or null

Message d'erreur

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://esignature.openapi.com/signatures?state=SOME_STRING_VALUE&certificateType=SOME_STRING_VALUE&signatureType=SOME_STRING_VALUE&skip=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "success": true,
  • "message": "",
  • "error": null
}

Télécharger le document signé, obtenir les détails, la piste d'audit ou le document validé d'une signature

Obtenir le détail, l'audit, le document signé ou le document validé d'une signature.
L'identifiant de la signature est nécessaire pour accéder au service.
Le paramètre actionType peut être utilisé pour spécifier le type d'information à récupérer.
Les options disponibles sont : signedDocument, validatedDocument, audit et detail.les options disponibles sont : signedDocument, validatedDocument, audit et detail.
Le signedDocument et le validatedDocument renvoient le contenu binaire du fichier prêt à être téléchargé.
La piste d'audit est disponible dans plusieurs formats en fonction de la valeur Accept de l'en-tête de la demande.
Les formats disponibles sont : application/json, text/plain, text/html, application/pdf.

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: 67af24c5af9b55291406e946

ID de la signature

actionType
required
string
Default: ""
Enum: "detail" "audit" "signedDocument" "validatedDocument" ""
Example: detail

Type d'action à effectuer, "detail" ou laisser vide pour l'info sur le document signé, "signedDocument", "audit" pour la piste d'audit ou "validatedDocument"

Responses

Response Schema:
string <binary>

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "GET");
curl_easy_setopt(hnd, CURLOPT_URL, "https://esignature.openapi.com/signatures/67af24c5af9b55291406e946/detail");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);

Response samples

Content type
Example
Loading...

Créer une signature QES à l'aide d'un certificat automatique massif

Créer une procédure de signature à partir d'un ou plusieurs fichiers.

Obtention du certificat :

Pour accéder au service, vous avez besoin d'un certificat automatique qui peut être acheté via le point de terminaison approprié "/certificates/namirial-automatic".

Formats disponibles :

Le système peut signer dans les formats CAdES, PAdES, XAdES et PKCS#1.

S'il n'est pas spécifié, le système recherchera le format le plus approprié en fonction du mimeType du fichier téléchargé téléchargé.

Fichiers d'entrée :

Il est possible de télécharger un ou plusieurs fichiers d'entrée à la fois au format base64 et en spécifiant l'URL de la ressource et toute autre information au format base64 et en spécifiant l'URL de la ressource et les paramètres d'authentification paramètres d'authentification.

  • Dans le cas du téléchargement de plusieurs fichiers avec signature PAdES, ils seront fusionnés en un seul document pdf signé signé.

  • Dans le cas de la signature de plusieurs fichiers au format CAdES, un fichier zip sera généré et signé sera généré et signé.

Mode asynchrone, traitement par lots, callback et signature détachée :

Pour la signature massive de grandes quantités de fichiers, il est possible de télécharger et de signer en mode asynchrone asynchrone. Un système de rappel authentifié est disponible pour recevoir les mises à jour.

Il est également possible de signer directement le hachage du fichier original et de n'obtenir que le fichier de signature "détaché" directement et d'obtenir uniquement le fichier de signature "detached".

Conservation des documents et des données dans le système :

Les données structurées de la signature et la piste d'audit seront stockées dans le système pendant un maximum de 1 an. les documents signés, les documents téléchargés et les documents validés resteront dans le système pendant un maximum de 30 jours pour permettre leur téléchargement. Après cette période, les documents seront automatiquement supprimés.

Horodatage qualifié disponible :

Une option d'horodatage qualifié est disponible. Il est également possible d'utiliser des références d'horodatage qualifiées que vous possédez déjà. Dans ce cas, le système vous permet de spécifier l'URL d'authentification de l'autorité de certification concernée.

Sandbox :

À des fins de test, vous pouvez utiliser les informations d'identification suivantes :

  • certificateUsername : "openapiSandboxUsername"
  • certificatePassword : "openapiSandboxPassword"
Authorizations:
bearerAuth
Request Body schema: application/json

Créer une nouvelle demande de signature automatique massive en spécifiant les fichiers d'entrée et les informations d'identification du certificat.

Le système peut signer dans les formats CAdES, PAdES, XAdES et PKCS#1. S'il n'est pas spécifié, le système recherchera le format le plus approprié en fonction du mimeType du fichier téléchargé.

Any of
required
string or string or InputDocumentObject (object) or (Array of strings or strings or InputDocumentObject (object)) (InputDocuments)

Les documents d'entrée à signer peuvent être spécifiés :

  • un document sous forme d'URL (le système téléchargera le document et déterminera le type de signature)
  • une chaîne base64 d'un fichier (le système devinera le mimetype)
  • une chaîne base64 du hachage (SHA256) d'un fichier (le système devinera le type de document en se basant sur la longueur du hachage, qui est de 32)
  • un objet InputDocumentObject avec des détails supplémentaires tels que le "sourceType" du document, l'"url" du document, les "headers" pour la demande de document à distance, la "méthode" HTTP pour la demande de document à distance, les "postData" pour la demande de document à distance, le "payload" encodé en Base64 du document (dans le cas de sourceType base64) ou le hachage du document (dans le cas de sourceType base64Hash)".
  • un tableau de certaines des options précédentes

Notes sur le hachage du fichier :

Cet exemple montre comment créer le hachage du fichier et l'encoder en base64 :

``bash openssl dgst -sha256 -binary FILE_TO_BE_SIGN | openssl enc -a````

La sortie sera quelque chose comme ceci : "msj3f4hJCSELbMkWjkFwNrf0XhkebTnAKaKhx4686DY="

Le système devine si la chaîne base64 est un hachage ou un fichier. Si la chaîne est un hachage (SHA256==CHAR(32)), le système signe le hachage du fichier d'origine.

Pour remplacer ce comportement, vous pouvez utiliser le champ sourceType dans le schéma InputDocumentObject.

certificateUsername
required
string

Nom d'utilisateur pour le certificat, doit être utilisé le nom de l'appareil que vous avez reçu. Il commence par : RHI (/EU-QES_otp), SHI (/EU-QES_eseal) ou AHI (/EU-QES_automatic)

certificatePassword
required
string

Mot de passe pour le certificat, doit être utilisé le code PIN associé au nom de l'appareil (peut être défini par le client ou lu dans l'enveloppe aveugle)

certificateOtp
string

VALIDE UNIQUEMENT POUR LE point final /EU-QES_otp, est OBLIGATOIRE et peut être obtenu à l'aide de l'application otp relative de l'autorité de certification

certificateIdOtp
integer

VALIDE UNIQUEMENT POUR LE POINT FINAL /EU-QES_otp, est facultatif et est utilisé dans le cas où plus d'un otp est défini dans l'application de l'autorité de certification. Il se trouve en haut à droite de l'application otp

title
string

Titre de la signature

description
string

Description de la signature

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature. Peut être cades, pades, xades, pkcs1

object

Options supplémentaires pour la signature. Les options disponibles dépendent du signatureType :

  • Options communes :
    • asyncDocumentsValidation (boolean) : Indique si les documents doivent être validés de manière asynchrone. Défaut : false.
    • asyncSignature (booléen) : Indique s'il faut signer les documents de manière asynchrone. Par défaut : false.
  • PAdES Options :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • encryptInAnyCase (booléen) : Encrypte dans tous les cas. Valeur par défaut : false.
    • page (entier) : Numéro de page à signer. Par défaut : 1.
    • encryptionPassword (string) : Mot de passe pour l'encryptage du PDF. Par défaut : null.
    • signerImage (string) : Image du signataire. Valeur par défaut : null.
    • lockFields (string) : Champs à verrouiller. Valeur par défaut : null.
    • withSignatureField (booléen) : Inclut le champ de signature. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options CAdES :
    • detached (booléen) : Signature détachée. Par défaut : false.
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • counterSignature (booléen) : Signature du compteur. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options XAdES :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • detached (booléen) : Signature détachée. Valeur par défaut : false.
    • withoutSignatureExclusion (booléen) : Sans exclusion de signature. Valeur par défaut : false.
    • XPathQuery (string) : Requête XPath. Valeur par défaut : null.
    • signElement (chaîne) : Élément de signe. Valeur par défaut : null.
    • signatureId (string) : ID de la signature. Valeur par défaut : null.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • PKCS1 Options :
    • hashAlgorithm (string) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Responses

Response Schema: application/json
Any of
required
string or string or InputDocumentObject (object) or (Array of strings or strings or InputDocumentObject (object)) (InputDocuments)

Les documents d'entrée à signer peuvent être spécifiés :

  • un document sous forme d'URL (le système téléchargera le document et déterminera le type de signature)
  • une chaîne base64 d'un fichier (le système devinera le mimetype)
  • une chaîne base64 du hachage (SHA256) d'un fichier (le système devinera le type de document en se basant sur la longueur du hachage, qui est de 32)
  • un objet InputDocumentObject avec des détails supplémentaires tels que le "sourceType" du document, l'"url" du document, les "headers" pour la demande de document à distance, la "méthode" HTTP pour la demande de document à distance, les "postData" pour la demande de document à distance, le "payload" encodé en Base64 du document (dans le cas de sourceType base64) ou le hachage du document (dans le cas de sourceType base64Hash)".
  • un tableau de certaines des options précédentes

Notes sur le hachage du fichier :

Cet exemple montre comment créer le hachage du fichier et l'encoder en base64 :

``bash openssl dgst -sha256 -binary FILE_TO_BE_SIGN | openssl enc -a````

La sortie sera quelque chose comme ceci : "msj3f4hJCSELbMkWjkFwNrf0XhkebTnAKaKhx4686DY="

Le système devine si la chaîne base64 est un hachage ou un fichier. Si la chaîne est un hachage (SHA256==CHAR(32)), le système signe le hachage du fichier d'origine.

Pour remplacer ce comportement, vous pouvez utiliser le champ sourceType dans le schéma InputDocumentObject.

certificateUsername
required
string

Nom d'utilisateur pour le certificat, doit être utilisé le nom de l'appareil que vous avez reçu. Il commence par : RHI (/EU-QES_otp), SHI (/EU-QES_eseal) ou AHI (/EU-QES_automatic)

certificatePassword
required
string

Mot de passe pour le certificat, doit être utilisé le code PIN associé au nom de l'appareil (peut être défini par le client ou lu dans l'enveloppe aveugle)

certificateOtp
string

VALIDE UNIQUEMENT POUR LE point final /EU-QES_otp, est OBLIGATOIRE et peut être obtenu à l'aide de l'application otp relative de l'autorité de certification

certificateIdOtp
integer

VALIDE UNIQUEMENT POUR LE POINT FINAL /EU-QES_otp, est facultatif et est utilisé dans le cas où plus d'un otp est défini dans l'application de l'autorité de certification. Il se trouve en haut à droite de l'application otp

title
string

Titre de la signature

description
string

Description de la signature

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature. Peut être cades, pades, xades, pkcs1

object

Options supplémentaires pour la signature. Les options disponibles dépendent du signatureType :

  • Options communes :
    • asyncDocumentsValidation (boolean) : Indique si les documents doivent être validés de manière asynchrone. Défaut : false.
    • asyncSignature (booléen) : Indique s'il faut signer les documents de manière asynchrone. Par défaut : false.
  • PAdES Options :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • encryptInAnyCase (booléen) : Encrypte dans tous les cas. Valeur par défaut : false.
    • page (entier) : Numéro de page à signer. Par défaut : 1.
    • encryptionPassword (string) : Mot de passe pour l'encryptage du PDF. Par défaut : null.
    • signerImage (string) : Image du signataire. Valeur par défaut : null.
    • lockFields (string) : Champs à verrouiller. Valeur par défaut : null.
    • withSignatureField (booléen) : Inclut le champ de signature. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options CAdES :
    • detached (booléen) : Signature détachée. Par défaut : false.
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • counterSignature (booléen) : Signature du compteur. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options XAdES :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • detached (booléen) : Signature détachée. Valeur par défaut : false.
    • withoutSignatureExclusion (booléen) : Sans exclusion de signature. Valeur par défaut : false.
    • XPathQuery (string) : Requête XPath. Valeur par défaut : null.
    • signElement (chaîne) : Élément de signe. Valeur par défaut : null.
    • signatureId (string) : ID de la signature. Valeur par défaut : null.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • PKCS1 Options :
    • hashAlgorithm (string) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Callbacks

Request samples

Content type
application/json
Example
{
  • "inputDocuments": [
    ],
  • "certificateUsername": "openapiSandboxUsername",
  • "certificatePassword": "openapiSandboxPassword",
  • "title": "CAdES Signature",
  • "description": "Signature CAdES d'un fichier base64",
  • "signatureType": "cades"
}

Response samples

Content type
application/json
Example
{
  • "data": {
    },
  • "message": "Created",
  • "success": true,
  • "error": null
}

Callback payload samples

Callback
POST: {$request.body#/callback/url}
Content type
{
  • "data": {
    },
  • "custom": {
    }
}

Créer une signature QES à l'aide d'un certificat OTP à distance

Créer une procédure de signature à partir d'un ou plusieurs fichiers.

Obtention du certificat :

Pour accéder au service, vous avez besoin d'un certificat automatique qui peut être acheté via le point de terminaison approprié /certificates/namirial-otp.

Formats disponibles :

Le système peut signer dans les formats CAdES, PAdES, XAdES et PKCS#1.

S'il n'est pas spécifié, le système recherchera le format le plus approprié en fonction du mimeType du fichier téléchargé téléchargé.

Fichiers d'entrée :

Il est possible de télécharger un ou plusieurs fichiers d'entrée à la fois au format base64 et en spécifiant l'URL de la ressource et toute autre information au format base64 et en spécifiant l'URL de la ressource et les paramètres d'authentification paramètres d'authentification.

  • Dans le cas du téléchargement de plusieurs fichiers avec signature PAdES, ils seront fusionnés en un seul document pdf signé signé.

  • Dans le cas de la signature de plusieurs fichiers au format CAdES, un fichier zip sera généré et signé sera généré et signé.

Mode asynchrone, traitement par lots, callback et signature détachée :

Pour la signature massive de grandes quantités de fichiers, il est possible de télécharger et de signer en mode asynchrone asynchrone. Un système de rappel authentifié est disponible pour recevoir les mises à jour.

Il est également possible de signer directement le hachage du fichier original et de n'obtenir que le fichier de signature "détaché" directement et d'obtenir uniquement le fichier de signature "detached".

Conservation des documents et des données dans le système :

Les données structurées de la signature et la piste d'audit seront stockées dans le système pendant un maximum de 1 an. les documents signés, les documents téléchargés et les documents validés resteront dans le système pendant un maximum de 30 jours pour permettre leur téléchargement. Après cette période, les documents seront automatiquement supprimés.

Horodatage qualifié disponible :

Une option d'horodatage qualifié est disponible. Il est également possible d'utiliser des références d'horodatage qualifiées que vous possédez déjà. Dans ce cas, le système vous permet de spécifier l'URL d'authentification de l'autorité de certification concernée.

Sandbox :

À des fins de test, vous pouvez utiliser les informations d'identification suivantes :

  • certificateUsername : "openapiSandboxUsername"
  • certificatePassword : "openapiSandboxPassword"
Authorizations:
bearerAuth
Request Body schema: application/json

Créer une nouvelle demande de signature automatique massive en spécifiant les fichiers d'entrée et les informations d'identification du certificat.

Le système peut signer dans les formats CAdES, PAdES, XAdES et PKCS#1. S'il n'est pas spécifié, le système recherchera le format le plus approprié en fonction du mimeType du fichier téléchargé.

Any of
required
string or string or InputDocumentObject (object) or (Array of strings or strings or InputDocumentObject (object)) (InputDocuments)

Les documents d'entrée à signer peuvent être spécifiés :

  • un document sous forme d'URL (le système téléchargera le document et déterminera le type de signature)
  • une chaîne base64 d'un fichier (le système devinera le mimetype)
  • une chaîne base64 du hachage (SHA256) d'un fichier (le système devinera le type de document en se basant sur la longueur du hachage, qui est de 32)
  • un objet InputDocumentObject avec des détails supplémentaires tels que le "sourceType" du document, l'"url" du document, les "headers" pour la demande de document à distance, la "méthode" HTTP pour la demande de document à distance, les "postData" pour la demande de document à distance, le "payload" encodé en Base64 du document (dans le cas de sourceType base64) ou le hachage du document (dans le cas de sourceType base64Hash)".
  • un tableau de certaines des options précédentes

Notes sur le hachage du fichier :

Cet exemple montre comment créer le hachage du fichier et l'encoder en base64 :

``bash openssl dgst -sha256 -binary FILE_TO_BE_SIGN | openssl enc -a````

La sortie sera quelque chose comme ceci : "msj3f4hJCSELbMkWjkFwNrf0XhkebTnAKaKhx4686DY="

Le système devine si la chaîne base64 est un hachage ou un fichier. Si la chaîne est un hachage (SHA256==CHAR(32)), le système signe le hachage du fichier d'origine.

Pour remplacer ce comportement, vous pouvez utiliser le champ sourceType dans le schéma InputDocumentObject.

certificateUsername
required
string

Nom d'utilisateur pour le certificat, doit être utilisé le nom de l'appareil que vous avez reçu. Il commence par : RHI (/EU-QES_otp), SHI (/EU-QES_eseal) ou AHI (/EU-QES_automatic)

certificatePassword
required
string

Mot de passe pour le certificat, doit être utilisé le code PIN associé au nom de l'appareil (peut être défini par le client ou lu dans l'enveloppe aveugle)

certificateOtp
string

VALIDE UNIQUEMENT POUR LE point final /EU-QES_otp, est OBLIGATOIRE et peut être obtenu à l'aide de l'application otp relative de l'autorité de certification

certificateIdOtp
integer

VALIDE UNIQUEMENT POUR LE POINT FINAL /EU-QES_otp, est facultatif et est utilisé dans le cas où plus d'un otp est défini dans l'application de l'autorité de certification. Il se trouve en haut à droite de l'application otp

title
string

Titre de la signature

description
string

Description de la signature

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature. Peut être cades, pades, xades, pkcs1

object

Options supplémentaires pour la signature. Les options disponibles dépendent du signatureType :

  • Options communes :
    • asyncDocumentsValidation (boolean) : Indique si les documents doivent être validés de manière asynchrone. Défaut : false.
    • asyncSignature (booléen) : Indique s'il faut signer les documents de manière asynchrone. Par défaut : false.
  • PAdES Options :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • encryptInAnyCase (booléen) : Encrypte dans tous les cas. Valeur par défaut : false.
    • page (entier) : Numéro de page à signer. Par défaut : 1.
    • encryptionPassword (string) : Mot de passe pour l'encryptage du PDF. Par défaut : null.
    • signerImage (string) : Image du signataire. Valeur par défaut : null.
    • lockFields (string) : Champs à verrouiller. Valeur par défaut : null.
    • withSignatureField (booléen) : Inclut le champ de signature. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options CAdES :
    • detached (booléen) : Signature détachée. Par défaut : false.
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • counterSignature (booléen) : Signature du compteur. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options XAdES :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • detached (booléen) : Signature détachée. Valeur par défaut : false.
    • withoutSignatureExclusion (booléen) : Sans exclusion de signature. Valeur par défaut : false.
    • XPathQuery (string) : Requête XPath. Valeur par défaut : null.
    • signElement (chaîne) : Élément de signe. Valeur par défaut : null.
    • signatureId (string) : ID de la signature. Valeur par défaut : null.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • PKCS1 Options :
    • hashAlgorithm (string) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Responses

Response Schema: application/json
Any of
required
string or string or InputDocumentObject (object) or (Array of strings or strings or InputDocumentObject (object)) (InputDocuments)

Les documents d'entrée à signer peuvent être spécifiés :

  • un document sous forme d'URL (le système téléchargera le document et déterminera le type de signature)
  • une chaîne base64 d'un fichier (le système devinera le mimetype)
  • une chaîne base64 du hachage (SHA256) d'un fichier (le système devinera le type de document en se basant sur la longueur du hachage, qui est de 32)
  • un objet InputDocumentObject avec des détails supplémentaires tels que le "sourceType" du document, l'"url" du document, les "headers" pour la demande de document à distance, la "méthode" HTTP pour la demande de document à distance, les "postData" pour la demande de document à distance, le "payload" encodé en Base64 du document (dans le cas de sourceType base64) ou le hachage du document (dans le cas de sourceType base64Hash)".
  • un tableau de certaines des options précédentes

Notes sur le hachage du fichier :

Cet exemple montre comment créer le hachage du fichier et l'encoder en base64 :

``bash openssl dgst -sha256 -binary FILE_TO_BE_SIGN | openssl enc -a````

La sortie sera quelque chose comme ceci : "msj3f4hJCSELbMkWjkFwNrf0XhkebTnAKaKhx4686DY="

Le système devine si la chaîne base64 est un hachage ou un fichier. Si la chaîne est un hachage (SHA256==CHAR(32)), le système signe le hachage du fichier d'origine.

Pour remplacer ce comportement, vous pouvez utiliser le champ sourceType dans le schéma InputDocumentObject.

certificateUsername
required
string

Nom d'utilisateur pour le certificat, doit être utilisé le nom de l'appareil que vous avez reçu. Il commence par : RHI (/EU-QES_otp), SHI (/EU-QES_eseal) ou AHI (/EU-QES_automatic)

certificatePassword
required
string

Mot de passe pour le certificat, doit être utilisé le code PIN associé au nom de l'appareil (peut être défini par le client ou lu dans l'enveloppe aveugle)

certificateOtp
string

VALIDE UNIQUEMENT POUR LE point final /EU-QES_otp, est OBLIGATOIRE et peut être obtenu à l'aide de l'application otp relative de l'autorité de certification

certificateIdOtp
integer

VALIDE UNIQUEMENT POUR LE POINT FINAL /EU-QES_otp, est facultatif et est utilisé dans le cas où plus d'un otp est défini dans l'application de l'autorité de certification. Il se trouve en haut à droite de l'application otp

title
string

Titre de la signature

description
string

Description de la signature

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature. Peut être cades, pades, xades, pkcs1

object

Options supplémentaires pour la signature. Les options disponibles dépendent du signatureType :

  • Options communes :
    • asyncDocumentsValidation (boolean) : Indique si les documents doivent être validés de manière asynchrone. Défaut : false.
    • asyncSignature (booléen) : Indique s'il faut signer les documents de manière asynchrone. Par défaut : false.
  • PAdES Options :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • encryptInAnyCase (booléen) : Encrypte dans tous les cas. Valeur par défaut : false.
    • page (entier) : Numéro de page à signer. Par défaut : 1.
    • encryptionPassword (string) : Mot de passe pour l'encryptage du PDF. Par défaut : null.
    • signerImage (string) : Image du signataire. Valeur par défaut : null.
    • lockFields (string) : Champs à verrouiller. Valeur par défaut : null.
    • withSignatureField (booléen) : Inclut le champ de signature. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options CAdES :
    • detached (booléen) : Signature détachée. Par défaut : false.
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • counterSignature (booléen) : Signature du compteur. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options XAdES :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • detached (booléen) : Signature détachée. Valeur par défaut : false.
    • withoutSignatureExclusion (booléen) : Sans exclusion de signature. Valeur par défaut : false.
    • XPathQuery (string) : Requête XPath. Valeur par défaut : null.
    • signElement (chaîne) : Élément de signe. Valeur par défaut : null.
    • signatureId (string) : ID de la signature. Valeur par défaut : null.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • PKCS1 Options :
    • hashAlgorithm (string) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Callbacks

Request samples

Content type
application/json
Example
{
  • "inputDocuments": [
    ],
  • "certificateUsername": "openapiSandboxUsername",
  • "certificatePassword": "openapiSandboxPassword",
  • "certificateOtp": "123456",
  • "certificateIdOtp": -1,
  • "title": "CAdES Signature",
  • "description": "Signature CAdES d'un fichier base64",
  • "signatureType": "cades"
}

Response samples

Content type
application/json
Example
{
  • "data": {
    },
  • "message": "Created",
  • "success": true,
  • "error": null
}

Callback payload samples

Callback
POST: {$request.body#/callback/url}
Content type
{
  • "data": {
    },
  • "custom": {
    }
}

Créer une signature QES à l'aide d'un certificat E-seal à distance

Créer une procédure de signature à partir d'un ou plusieurs fichiers.

Obtention du certificat :

Pour accéder au service, vous avez besoin d'un certificat automatique qui peut être acheté auprès de Notre service clientèle.

Formats disponibles :

Le système peut signer dans les formats CAdES, PAdES, XAdES et PKCS#1.

S'il n'est pas spécifié, le système recherchera le format le plus approprié en fonction du mimeType du fichier téléchargé téléchargé.

Fichiers d'entrée :

Il est possible de télécharger un ou plusieurs fichiers d'entrée à la fois au format base64 et en spécifiant l'URL de la ressource et toute autre information au format base64 et en spécifiant l'URL de la ressource et les paramètres d'authentification paramètres d'authentification.

  • Dans le cas du téléchargement de plusieurs fichiers avec signature PAdES, ils seront fusionnés en un seul document pdf signé signé.

  • Dans le cas de la signature de plusieurs fichiers au format CAdES, un fichier zip sera généré et signé sera généré et signé.

Mode asynchrone, traitement par lots, callback et signature détachée :

Pour la signature massive de grandes quantités de fichiers, il est possible de télécharger et de signer en mode asynchrone asynchrone. Un système de rappel authentifié est disponible pour recevoir les mises à jour.

Il est également possible de signer directement le hachage du fichier original et de n'obtenir que le fichier de signature "détaché" directement et d'obtenir uniquement le fichier de signature "detached".

Conservation des documents et des données dans le système :

Les données structurées de la signature et la piste d'audit seront stockées dans le système pendant un maximum de 1 an. les documents signés, les documents téléchargés et les documents validés resteront dans le système pendant un maximum de 30 jours pour permettre leur téléchargement. Après cette période, les documents seront automatiquement supprimés.

Horodatage qualifié disponible :

Une option d'horodatage qualifié est disponible. Il est également possible d'utiliser des références d'horodatage qualifiées que vous possédez déjà. Dans ce cas, le système vous permet de spécifier l'URL d'authentification de l'autorité de certification concernée.

Sandbox :

À des fins de test, vous pouvez utiliser les informations d'identification suivantes :

  • certificateUsername : "openapiSandboxUsername"
  • certificatePassword : "openapiSandboxPassword"
Authorizations:
bearerAuth
Request Body schema: application/json

Créer une nouvelle demande de signature automatique massive en spécifiant les fichiers d'entrée et les informations d'identification du certificat.

Le système peut signer dans les formats CAdES, PAdES, XAdES et PKCS#1. S'il n'est pas spécifié, le système recherchera le format le plus approprié en fonction du mimeType du fichier téléchargé.

Any of
required
string or string or InputDocumentObject (object) or (Array of strings or strings or InputDocumentObject (object)) (InputDocuments)

Les documents d'entrée à signer peuvent être spécifiés :

  • un document sous forme d'URL (le système téléchargera le document et déterminera le type de signature)
  • une chaîne base64 d'un fichier (le système devinera le mimetype)
  • une chaîne base64 du hachage (SHA256) d'un fichier (le système devinera le type de document en se basant sur la longueur du hachage, qui est de 32)
  • un objet InputDocumentObject avec des détails supplémentaires tels que le "sourceType" du document, l'"url" du document, les "headers" pour la demande de document à distance, la "méthode" HTTP pour la demande de document à distance, les "postData" pour la demande de document à distance, le "payload" encodé en Base64 du document (dans le cas de sourceType base64) ou le hachage du document (dans le cas de sourceType base64Hash)".
  • un tableau de certaines des options précédentes

Notes sur le hachage du fichier :

Cet exemple montre comment créer le hachage du fichier et l'encoder en base64 :

``bash openssl dgst -sha256 -binary FILE_TO_BE_SIGN | openssl enc -a````

La sortie sera quelque chose comme ceci : "msj3f4hJCSELbMkWjkFwNrf0XhkebTnAKaKhx4686DY="

Le système devine si la chaîne base64 est un hachage ou un fichier. Si la chaîne est un hachage (SHA256==CHAR(32)), le système signe le hachage du fichier d'origine.

Pour remplacer ce comportement, vous pouvez utiliser le champ sourceType dans le schéma InputDocumentObject.

certificateUsername
required
string

Nom d'utilisateur pour le certificat, doit être utilisé le nom de l'appareil que vous avez reçu. Il commence par : RHI (/EU-QES_otp), SHI (/EU-QES_eseal) ou AHI (/EU-QES_automatic)

certificatePassword
required
string

Mot de passe pour le certificat, doit être utilisé le code PIN associé au nom de l'appareil (peut être défini par le client ou lu dans l'enveloppe aveugle)

certificateOtp
string

VALIDE UNIQUEMENT POUR LE point final /EU-QES_otp, est OBLIGATOIRE et peut être obtenu à l'aide de l'application otp relative de l'autorité de certification

certificateIdOtp
integer

VALIDE UNIQUEMENT POUR LE POINT FINAL /EU-QES_otp, est facultatif et est utilisé dans le cas où plus d'un otp est défini dans l'application de l'autorité de certification. Il se trouve en haut à droite de l'application otp

title
string

Titre de la signature

description
string

Description de la signature

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature. Peut être cades, pades, xades, pkcs1

object

Options supplémentaires pour la signature. Les options disponibles dépendent du signatureType :

  • Options communes :
    • asyncDocumentsValidation (boolean) : Indique si les documents doivent être validés de manière asynchrone. Défaut : false.
    • asyncSignature (booléen) : Indique s'il faut signer les documents de manière asynchrone. Par défaut : false.
  • PAdES Options :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • encryptInAnyCase (booléen) : Encrypte dans tous les cas. Valeur par défaut : false.
    • page (entier) : Numéro de page à signer. Par défaut : 1.
    • encryptionPassword (string) : Mot de passe pour l'encryptage du PDF. Par défaut : null.
    • signerImage (string) : Image du signataire. Valeur par défaut : null.
    • lockFields (string) : Champs à verrouiller. Valeur par défaut : null.
    • withSignatureField (booléen) : Inclut le champ de signature. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options CAdES :
    • detached (booléen) : Signature détachée. Par défaut : false.
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • counterSignature (booléen) : Signature du compteur. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options XAdES :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • detached (booléen) : Signature détachée. Valeur par défaut : false.
    • withoutSignatureExclusion (booléen) : Sans exclusion de signature. Valeur par défaut : false.
    • XPathQuery (string) : Requête XPath. Valeur par défaut : null.
    • signElement (chaîne) : Élément de signe. Valeur par défaut : null.
    • signatureId (string) : ID de la signature. Valeur par défaut : null.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • PKCS1 Options :
    • hashAlgorithm (string) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Responses

Response Schema: application/json
Any of
required
string or string or InputDocumentObject (object) or (Array of strings or strings or InputDocumentObject (object)) (InputDocuments)

Les documents d'entrée à signer peuvent être spécifiés :

  • un document sous forme d'URL (le système téléchargera le document et déterminera le type de signature)
  • une chaîne base64 d'un fichier (le système devinera le mimetype)
  • une chaîne base64 du hachage (SHA256) d'un fichier (le système devinera le type de document en se basant sur la longueur du hachage, qui est de 32)
  • un objet InputDocumentObject avec des détails supplémentaires tels que le "sourceType" du document, l'"url" du document, les "headers" pour la demande de document à distance, la "méthode" HTTP pour la demande de document à distance, les "postData" pour la demande de document à distance, le "payload" encodé en Base64 du document (dans le cas de sourceType base64) ou le hachage du document (dans le cas de sourceType base64Hash)".
  • un tableau de certaines des options précédentes

Notes sur le hachage du fichier :

Cet exemple montre comment créer le hachage du fichier et l'encoder en base64 :

``bash openssl dgst -sha256 -binary FILE_TO_BE_SIGN | openssl enc -a````

La sortie sera quelque chose comme ceci : "msj3f4hJCSELbMkWjkFwNrf0XhkebTnAKaKhx4686DY="

Le système devine si la chaîne base64 est un hachage ou un fichier. Si la chaîne est un hachage (SHA256==CHAR(32)), le système signe le hachage du fichier d'origine.

Pour remplacer ce comportement, vous pouvez utiliser le champ sourceType dans le schéma InputDocumentObject.

certificateUsername
required
string

Nom d'utilisateur pour le certificat, doit être utilisé le nom de l'appareil que vous avez reçu. Il commence par : RHI (/EU-QES_otp), SHI (/EU-QES_eseal) ou AHI (/EU-QES_automatic)

certificatePassword
required
string

Mot de passe pour le certificat, doit être utilisé le code PIN associé au nom de l'appareil (peut être défini par le client ou lu dans l'enveloppe aveugle)

certificateOtp
string

VALIDE UNIQUEMENT POUR LE point final /EU-QES_otp, est OBLIGATOIRE et peut être obtenu à l'aide de l'application otp relative de l'autorité de certification

certificateIdOtp
integer

VALIDE UNIQUEMENT POUR LE POINT FINAL /EU-QES_otp, est facultatif et est utilisé dans le cas où plus d'un otp est défini dans l'application de l'autorité de certification. Il se trouve en haut à droite de l'application otp

title
string

Titre de la signature

description
string

Description de la signature

signatureType
string
Enum: "cades" "pades" "xades" "pkcs1"

Type de signature. Peut être cades, pades, xades, pkcs1

object

Options supplémentaires pour la signature. Les options disponibles dépendent du signatureType :

  • Options communes :
    • asyncDocumentsValidation (boolean) : Indique si les documents doivent être validés de manière asynchrone. Défaut : false.
    • asyncSignature (booléen) : Indique s'il faut signer les documents de manière asynchrone. Par défaut : false.
  • PAdES Options :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • encryptInAnyCase (booléen) : Encrypte dans tous les cas. Valeur par défaut : false.
    • page (entier) : Numéro de page à signer. Par défaut : 1.
    • encryptionPassword (string) : Mot de passe pour l'encryptage du PDF. Par défaut : null.
    • signerImage (string) : Image du signataire. Valeur par défaut : null.
    • lockFields (string) : Champs à verrouiller. Valeur par défaut : null.
    • withSignatureField (booléen) : Inclut le champ de signature. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options CAdES :
    • detached (booléen) : Signature détachée. Par défaut : false.
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • counterSignature (booléen) : Signature du compteur. Valeur par défaut : false.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • Options XAdES :
    • level (string) : Niveau de signature. Valeurs : B, T, LT, LTA, LTV. Valeur par défaut : B.
    • hashAlgorithm (chaîne) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
    • detached (booléen) : Signature détachée. Valeur par défaut : false.
    • withoutSignatureExclusion (booléen) : Sans exclusion de signature. Valeur par défaut : false.
    • XPathQuery (string) : Requête XPath. Valeur par défaut : null.
    • signElement (chaîne) : Élément de signe. Valeur par défaut : null.
    • signatureId (string) : ID de la signature. Valeur par défaut : null.
    • withTimestamp (booléen) : Inclut l'horodatage. Valeur par défaut : false.
    • timestampUrl (string) : URL du service d'horodatage. Valeur par défaut : null.
    • timestampUsername (string) : Nom d'utilisateur du service d'horodatage. Valeur par défaut : null.
    • timestampPassword (string) : Mot de passe pour le service d'horodatage. Valeur par défaut : null.
    • timestampHashAlgo (string) : Algorithme de hachage pour le service d'horodatage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
  • PKCS1 Options :
    • hashAlgorithm (string) : Algorithme de hachage. Valeurs : SHA1, SHA256, SHA384, SHA512. Valeur par défaut : SHA256.
object (Callback)

Il s'agit de notre système de rappel OpenAPI standardisé. Il permet de configurer les paramètres pour recevoir des notifications sur les mises à jour de l'état des demandes asynchrones adressées à ce point de terminaison.

Callbacks

Request samples

Content type
application/json
Example
{
  • "inputDocuments": [
    ],
  • "certificateUsername": "openapiSandboxUsername",
  • "certificatePassword": "openapiSandboxPassword",
  • "title": "CAdES Signature",
  • "description": "Signature CAdES d'un fichier base64",
  • "signatureType": "cades"
}

Response samples

Content type
application/json
Example
{
  • "data": {
    },
  • "message": "Created",
  • "success": true,
  • "error": null
}

Callback payload samples

Callback
POST: {$request.body#/callback/url}
Content type
{
  • "data": {
    },
  • "custom": {
    }
}

Vérifier une signature

Vérifier une signature en téléchargeant le document signé. Le système renvoie le résultat de la vérification.

Authorizations:
bearerAuth
Request Body schema: application/json

Vérifier une signature en téléchargeant le document signé.

inputDocument
required
string <base64>

Document signé

detachedContent
string <base64>

Detached content

pdfEncryptionPassword
string

Mot de passe pour le cryptage des pdf

recursive
boolean

Vérification récursive

verifyOnDate
string <date>

Date de vérification de la signature

Responses

Response Schema: application/json
object

Résultat de la vérification

message
string

Message

error
string or null

Code d'erreur

success
boolean

Succès de l'opération

Request samples

Content type
application/json
{
  • "inputDocument": "BASE64string",
  • "detachedContent": "BASE64string",
  • "pdfEncryptionPassword": "password123",
  • "recursive": true,
  • "verifyOnDate": "2025-02-14"
}

Response samples

Content type
application/json
{
  • "data": {
    },
  • "message": "Signature is valid",
  • "error": "",
  • "success": true
}

Supprimer le document signé, les détails, la piste d'audit et le document validé d'une signature

Authorizations:
bearerAuth
path Parameters
id
required
string
Example: 67af24c5af9b55291406e946

ID de la signature

Responses

Request samples

CURL *hnd = curl_easy_init();

curl_easy_setopt(hnd, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_easy_setopt(hnd, CURLOPT_URL, "https://esignature.openapi.com/signatures/67af24c5af9b55291406e946");

struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Authorization: Bearer REPLACE_BEARER_TOKEN");
curl_easy_setopt(hnd, CURLOPT_HTTPHEADER, headers);

CURLcode ret = curl_easy_perform(hnd);