Partager cette page
Tuto vidéo "Essentiel" : comment interfacer SELL&SIGN dans mon outil métier avec l'API signature électronique ?

L'API Signature Electronique SELL&SIGN permet de créer de nouveaux contrats type, de gérer la base client, de gérer les contrats en cours et validés. Cette API est accessible en Java, JavaScript et sous forme de service REST-like.
Avec la même API SELL&SIGN, vous pouvez créer des transactions de signature électronique dans les trois modes de signature SELL&SIGN :
API Signature électronique en ligne
Dans ces pages, vous trouverez les API pour faire signer en ligne dans votre site ou application web tout document PDF
API Signature électronique à distance
Avec la même API, vous pouvez aussi provoquer l'envoi par mail d'un document PDF à signer à distance
API Signature électronique sur tablette
Cette même API permet de synchroniser le document PDF avec votre tablette pour le faire signer en face à face
Cette documentation se focalise sur le cas où vous désirez faire signer un document PDF déjà prêt à la signature. L'API SELL&SIGN permet également de gérer d'autres situations, comme la création de parcours de signature personnalisés avec visuels marketing, prise de photos et génération automatique du contrat PDF à faire signer. Contactez-nous pour accéder à ces capacités uniques de SELL&SIGN !
Utilisation de l'API en HTTP GET
L'API REST-like est accessible via de simples appels HTTP GET sur des URL construites de la manière suivante :
https://[host]/calinda/hub/selling/model/[class]/[action type]?action=[method]&[parameters]
Exemple sur le CLOUD SELL&SIGN
Pour récupérer tous les modèles de contrat présents sur votre licence.
https://cloud.sellandsign.com/calinda/hub/selling/model/contractdefinition/list?action=getContractDefinitionList
Appel à faire en HTTP POST avec un header comportant le token d'authentification
Retour :
[{
"id":86, // ceci est l'identifiant du contrat PDF ADHOC dans cette licence
"name":"Faire signer un document PDF",
"documentName":"","documentToken":"",
"imageToken":"abc123",
"rank":1,
"onFlyComposable":false,
"syncTimer":1451488562978,
"lastModificationPlace":"SERVER",
"minContractor":1,
"maxContractor":100,
"signatureModePageRequired":true,
"conditionToken":"",
"autovalidationToken":"",
"contentToken":"",
"showOptions":false
},
{
"id":162,
"name":"Calinda Sellsign",
"documentName":"Calinda_sell_sign",
"documentToken":"abc123",
"imageToken":"abc123\u003d",
"rank":5,
"onFlyComposable":false,
"syncTimer":1475845922546,
"lastModificationPlace":"SERVER",
"minContractor":1,
"maxContractor":1,
"signatureModePageRequired":true,
"conditionToken":"",
"autovalidationToken":"",
"contentToken":"abc123",
"showOptions":false
},
{
"id":344,
"name":"mandat SEPA",
"documentName":"SEPA",
"documentToken":"abc123",
"imageToken":"abc123",
"rank":6,
"onFlyComposable":false,
"syncTimer":1464001096006,
"lastModificationPlace":"SERVER",
"minContractor":1,
"maxContractor":1,
"signatureModePageRequired":true,
"conditionToken":"",
"autovalidationToken":"",
"contentToken":"",
"showOptions":false,
"reportGeneratorToken":""
}]
Exemple sur le CLOUD SELL&SIGN
Pour récupérer les modes de signature autorisés pour le modèle de contrat numéro 86.
https://cloud.sellandsign.com/calinda/hub/selling/model/signaturemode/list?action=getSignatureModesFor&contract_definition_id=86
Retour :
{"newElementAdded":true,"elements":[{"id":101,"contractDefinitionId":86,"mode":"INSTANT_OTP","status":1,"lastModificationDate":1451488562992,"lastModificationPlace":1},{"id":102,"contractDefinitionId":86,"mode":"INSTANT_PAD","status":1,"lastModificationDate":1451488562997,"lastModificationPlace":1},{"id":103,"contractDefinitionId":86,"mode":"MAIL_OTP","status":1,"lastModificationDate":1451488563000,"lastModificationPlace":1}],"totalSize":3}
Cependant, afin de ne pas subir certaines limitations liées par exemple à la taille limite des URL, il est recommandé de préférer l'utilisation de l'API en HTTP POST.
Utilisation de l'API en HTTP POST
L'API en HTTP POST fonctionne avec les mêmes interfaces qu'en HTTP GET, la différence résident dans la manière de passer les paramètres au serveur. En effet, au lieu d'être intégrées comme paramètres d'URL, ces derniers sont transmis au serveur dans le corps de la requête, sous la forme d'une structure JSON.
Par exemple, un HTTP POST sur l'URL suivante :
https://[host]/calinda/hub/selling/model/[class]/[action type]?action=[method]
aura pour effet d'appeler la méthode "method", et les paramètres seront simplement passés dans le corps de la requête HTTP, comme dans l'exemple suivant :
Exemple sur le CLOUD SELL&SIGN
Pour récupérer les modes de signature autorisés pour le modèle de contrat numéro 1.
POST https://cloud.sellandsign.com/calinda/hub/selling/model/signaturemode/list?action=getSignatureModesFor
{
"contract_definition_id" : "1"
}
Retour : identique à l'appel GET :
{"newElementAdded":true,"elements":[{"id":101,"contractDefinitionId":86,"mode":"INSTANT_OTP","status":1,"lastModificationDate":1451488562992,"lastModificationPlace":1},{"id":102,"contractDefinitionId":86,"mode":"INSTANT_PAD","status":1,"lastModificationDate":1451488562997,"lastModificationPlace":1},{"id":103,"contractDefinitionId":86,"mode":"MAIL_OTP","status":1,"lastModificationDate":1451488563000,"lastModificationPlace":1}],"totalSize":3}
En cas d'erreur HTTP
Une erreur HTTP 400 peut indiquer l'absence d'un paramètre requis, ou une valeur inappropriée. Le message joint à l'erreur vous permettra de trouver sa cause.
En cas d'erreur HTTP 500, vous pouvez contacter le support sur notre portail support en envoyant votre requête pour que nous vous assistions.