Signature Helios

Afficher en Markdown

Exemples de requête provisionnée

Helios

L’application demandeuse initie une demande de signature :

POST /api/requests HTTP/1.1
Authorization: ApiKey 5xVpCQPEYdncwHXwCDf5sqyfN9GPrio5
Content-Type: application/json
Content-Length: 269
{
"profiles" : {
"default" : {
"signatureType" : "helios",
"signatureLevel" : "b",
"signerLocationCity" : "Troyes",
"signerLocationPostalCode" : "10000",
"signerLocationCountry" : "France",
"signerRoles" : "Finance"
}
}
}

Un objet demande est renvoyé :

{
"clientId" : "01",
"created" : 1787667778991,
"id" : "req_01_Pc7iJXX1HuADdDN8ZSkEnSkm",
"params" : {
"bypassViewer" : "false"
},
"profiles" : {
"default" : {
"forceScrollDocument" : "false",
"signatureLevel" : "b",
"signatureType" : "helios",
"signerLocationCity" : "Troyes",
"signerLocationCountry" : "France",
"signerLocationPostalCode" : "10000",
"signerRoles" : "Finance"
}
},
"status" : "created",
"updated" : 1787667778991
}

L’application demandeuse téléverse le contenu du document (un fichier PES Helios au format XML, incluant une pièce jointe PDF encodée en base64) :

POST /api/requests/req_01_Pc7iJXX1HuADdDN8ZSkEnSkm/profiles/default/documents HTTP/1.1
Authorization: ApiKey 5xVpCQPEYdncwHXwCDf5sqyfN9GPrio5
Content-Type: text/xml
<?xml version="1.0" encoding="UTF-8"?><n:PES_Aller xmlns:n="http://www.minefi.gouv.fr/cp/helios/pes_v2/Rev0/aller" ...>
<Enveloppe>
<Parametres>
<Version V="2"/>
<TypFic V="PESALR2"/>
<NomFic V="PESALR2M14_EMET_REC20090318102027.xml"/>
</Parametres>
...
</Enveloppe>
...
<PES_PJ>
<PJ>
<Contenu>
<Fichier MIMEType="pdf">[contenu du PDF encodé en base64, tronqué]</Fichier>
</Contenu>
<IdUnique V="PJDEP200002009MX3501N20090318102443"/>
<NomPJ V="MX-3501N_20090318_102443.pdf"/>
<TypePJ V="003"/>
<Description V="P.J. au mandat n 220 : MISSION SPS"/>
</PJ>
</PES_PJ>
</n:PES_Aller>

Un objet document est renvoyé :

{
"created" : 1787667779009,
"displayedParts" : [ {
"contentType" : "text/xml",
"filename" : "Document",
"hash" : "mn/7ykoyW2byuPsOPJH97JL9hG8pIf7f8f9z/ZZXy1A=",
"name" : "data",
"policyUri" : "https://www.collectivites-locales.gouv.fr/files/files/2.%20G%C3%A9rer%20les%20finances%20publiques%20locales/6.%20La%20d%C3%A9mat%C3%A9rialisation%20des%20comptes%20locaux%20et%20l%27open%20data/D%C3%A9mat%20comptable/Le%20PES/ps_helios_dgfip.pdf",
"profileId" : "default",
"size" : 22376
} ],
"id" : "doc_8xTuaXy8LZ6tMjv1hVgC5frs",
"parts" : [ { "...": "identique à displayedParts" } ],
"profileId" : "default",
"requestId" : "req_01_Pc7iJXX1HuADdDN8ZSkEnSkm",
"workflowIdx" : 0
}

L’application demandeuse passe le statut de la demande de signature à started :

POST /api/requests/req_01_Pc7iJXX1HuADdDN8ZSkEnSkm/start HTTP/1.1
Authorization: ApiKey 5xVpCQPEYdncwHXwCDf5sqyfN9GPrio5

L’URL de la page de consentement est renvoyée :

{
"consentPageUrl" : "https://evidence-manager.lex-persona.com/?requestToken=eyJhbGciOiJIUzI1NiJ9...#requestId=req_01_Pc7iJXX1HuADdDN8ZSkEnSkm"
}

L’application demandeuse liste les documents signés :

GET /api/requests/req_01_Pc7iJXX1HuADdDN8ZSkEnSkm/signedDocuments HTTP/1.1
Authorization: ApiKey 5xVpCQPEYdncwHXwCDf5sqyfN9GPrio5

Une liste d’objets document est renvoyée (le document signé, lié au document d’origine par linkedDocumentId) :

[ {
"created" : 1787667779468,
"displayedParts" : [ {
"contentType" : "text/xml",
"filename" : "Document",
"hash" : "O9o2CSbzJR1UKiActnF+nJIhxC/fPO3QY2MqL5z0B5Q=",
"isOriginal" : false,
"name" : "data",
"policyUri" : "https://www.collectivites-locales.gouv.fr/files/files/2.%20G%C3%A9rer%20les%20finances%20publiques%20locales/6.%20La%20d%C3%A9mat%C3%A9rialisation%20des%20comptes%20locaux%20et%20l%27open%20data/D%C3%A9mat%20comptable/Le%20PES/ps_helios_dgfip.pdf",
"profileId" : "default",
"size" : 32843
} ],
"id" : "doc_DSmSHwZh2wY8xf7M6EyL7xDn",
"linkedDocumentId" : "doc_8xTuaXy8LZ6tMjv1hVgC5frs",
"profileId" : "default",
"requestId" : "req_01_Pc7iJXX1HuADdDN8ZSkEnSkm",
"workflowIdx" : 0
} ]

L’application demandeuse télécharge le document signé, qui contient le PES original ainsi qu’une signature XAdES scellant le document (élément ds:Signature, avec sa politique de signature Helios, sa chaîne de certificats et son horodatage) :

GET /api/requests/req_01_Pc7iJXX1HuADdDN8ZSkEnSkm/signedDocuments/doc_DSmSHwZh2wY8xf7M6EyL7xDn HTTP/1.1
Authorization: ApiKey 5xVpCQPEYdncwHXwCDf5sqyfN9GPrio5