Java SDK.NET SDK Java REST .NET REST APEX SDK
Java SDK
Pour télécharger l'exemple de code complet, consultez notre site Code Share .
Une transaction est l'expérience d'un utilisateur de OneSpan Sign lorsqu'il examine, accepte, signe et télécharge éventuellement des documents.
Cette rubrique vous guidera tout au long du processus de création et d'envoi d'une transaction à l'aide du SDK Java OneSpan Sign.
Conditions préalables
Pour effectuer ces procédures, vous aurez besoin des éléments suivants :
IDE Eclipse pour les développeurs Java EE : Vous pouvez le télécharger ici.
SDK Java de OneSpan Sign : Vous pouvez le télécharger à partir de notre Community Portal. Vous pouvez également les importer à partir de notre référentiel Maven à l'aide des commandes suivantes :
<dependency> <groupId>com.silanis.esl</groupId> <artifactId>sdk</artifactId> <version>11.21</version> </dependency>
Comment créer et configurer un projet Java
Pour créer et configurer un projet Java
Ouvrez Eclipse en exécutant eclipse.exe à partir de
Une fois que la perspective Java est ouverte, la vue Explorateur de packages doit s'afficher sur le côté gauche de l'écran. Faites un clic droit dans cette fenêtre et accédez à Nouveau projet Java >. La fenêtre suivante s'affiche :
Nommez votre projet comme vous le souhaitez. Par exemple, CreateAndSendPackage. Cliquez ensuite sur Suivant.
Dans l'onglet Bibliothèques , cliquez sur Ajouter un fichier JAR externe. Accédez à l'emplacement où vous avez enregistré votre SDK, puis sélectionnez le sdk jar-with-dependencies jar.
Sélectionnez Ouvrir. Vous verrez que le fichier jar du SDK a été ajouté à votre chemin de génération.
Cliquez sur Terminer. Votre nouveau projet a maintenant été ajouté à votre vue Explorateur de packages .
Développez le paquet en cliquant sur la flèche à gauche, faites un clic droit sur le dossier src et allez dans Nouveau paquet >. Entrez un nom de package (par exemple, com.esignlive.example). Cliquez sur Terminer.
Créez un nouveau fichier java :
Faites un clic droit sur votre nouveau paquet dans l' explorateur de paquets et accédez à Nouveau fichier >.
Entrez un nom pour le fichier (par exemple, SimpleCreateAndSendPackage.java).
Cliquez sur Terminer.
Ajoutez un exemple de fichier PDF que vous souhaitez faire signer à votre projet. Vous pouvez utiliser un simple copier-coller de votre système de fichiers vers votre projet dans l'explorateur de packages.
Votre projet doit maintenant ressembler à ceci :
Le Code
Dans cette section, le code sera décomposé section par section. Vous pouvez télécharger l'exemple de code complet à partir du partage de code de la communauté des développeurs, ici.
Comment se connecter
Les lignes de code suivantes définissent vos informations de connexion pour OneSpan Sign.
public static final String API_KEY = "your_api_key";
public static final String API_URL = "https://sandbox.esignlive.com/api"; // Use https://apps.esignlive.com/api For Production
//Alternatively
public static final String CLIENT_APP_ID = "your_client_id";
public static final String CLIENT_APP_SECRET = "your_client_secret";
public static final String BASE_API_URL = "https://sandbox.esignlive.com"; // Use https://apps.esignlive.com For Production
public static final String API_URL = BASE_API_URL + "/api";
Clés API
Bien que les clés API puissent être utilisées avec OneSpan Sign, nous vous recommandons de les utiliser Client Apps à la place. Les applications clientes sont plus flexibles et permettent de réduire le nombre de vulnérabilités de sécurité potentielles.
Les applications clientes offrent les avantages suivants par rapport aux clés API :
Avec les applications clientes, l'accès peut être créé, pivoté ou révoqué selon les besoins. Les clés API sont fixes, et donc si vous souhaitez apporter des modifications d'accès, vous devrez contacter notre équipe d'assistance.
Plusieurs applications clientes peuvent être utilisées si vous avez configuré plusieurs intégrations. Cela permet de limiter la portée de toute attaque frauduleuse sur votre système. À l'inverse, une seule clé API est fournie pour toutes les intégrations.
Les applications clientes utilisent des jetons temporaires pour autoriser l'accès à l'API, qui ne sont disponibles que pendant une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe d'assistance.
La clé API peut ne pas être visible, en fonction de votre environnement et des privilèges de votre compte. Seul le propriétaire d'un compte peut afficher une clé API.
Pour afficher votre clé API
Dans la section Clé API de la page Clé API et applications clientes, cliquez sur l'icône Afficher .
Par défaut, votre clé API est masquée.
Applications clientes
Avant que les intégrateurs puissent effectuer des requêtes via les API REST ou les fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent une application cliente ou fournissent une clé API sécurisée pour authentifier les appels d'API. OneSpan vous recommande d'utiliser des applications clientes.
Pour enregistrer une application cliente
Vous pouvez authentifier les appels d'API REST à partir du système d'un utilisateur en lui fournissant un jeton d'API sécurisé mais de courte durée (par exemple, 30 minutes) qui peut être utilisé pour l'authentification. Cette fonctionnalité est appelée Applications clientes. Pour l'activer, vous devez contacter notre équipe d'assistance. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign à l'aide de ces jetons d'API.
Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .
Pour créer une application cliente
Cliquez sur Admin > l'accès à l'API.
Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner Clé API et Applications clientes.
Cliquez sur Ajouter. Une barre latérale Créer une application cliente s' affiche.
Entrez un nom pour l'application cliente.
Cliquez sur Créer.
Copiez l 'ID client et les codes secrets qui s'affichent.
Stockez l'ID client et les codes secrets dans un emplacement sécurisé.
Cliquez sur OK.
Le secret n' apparaîtra plus une fois que vous aurez cliqué sur Terminé. Pour vos dossiers. veuillez copier ce secret dans un emplacement sécurisé. L' ID client et la clé secrète sont utilisés pour récupérer le jeton d'API temporaire.
Vient ensuite le API_URL. Si vous utilisez un compte Sandbox, l'URL correcte est déjà en place. Si vous utilisez un compte de production, recherchez l'URL correspondante dans ce guide.
Comment créer un package
La ligne de code suivante crée un client OneSpan Sign à l'aide des informations d'identification ou de la clé API des applications clientes du compte OneSpan Sign et de l'URL d'API appropriée que vous avez définie ci-dessus.
EslClient eslClient = new EslClient(API_KEY, API_URL);
//Alternatively
EslClient eslClient = new EslClient(ApiTokenConfig.newBuilder()
.clientAppId(CLIENT_APP_ID)
.clientAppSecret(CLIENT_APP_SECRET)
.baseUrl(BASE_API_URL)
.tokenType(TokenType.OWNER)
.build(),
BASE_API_URL + "/api", false, null, new Dictionary<string,string>());
Le bloc de code suivant est l'endroit où vous créez le package de documents. Dans ce bloc, vous donnez un nom à votre package.
DocumentPackage documentPackage = newPackageNamed("Test Package Java SDK")
Ensuite, vous allez ajouter deux signataires au package. L'un étant vous-même et l'autre étant la personne à qui vous enverrez le colis. Dans ce bloc, remplacez les adresses e-mail et les noms (et éventuellement l'entreprise et les titres) par vos informations de test. Définissez l' ID personnalisé dans le SDK pour mieux identifier votre signataire.
Notez que cet exemple de code inclut SMS notifications également la méthode de notification principale. Les méthodes de notification suivantes sont disponibles :
[EMAIL, SMS] - les notifications par e-mail et par SMS sont envoyées au signataire (le numéro de téléphone est obligatoire)
[EMAIL] - seules les notifications par e-mail sont envoyées au signataire (le numéro de téléphone est facultatif)
.withSigner(newSignerWithEmail("signers.email@example.com")
.withCustomId("Signer") //optional
.withFirstName("SignerFirstName")
.withLastName("SignerLastName")
.withCompany("ABC Company") //optional
.withTitle("Applicant")) //optional
.withNotificationMethods(NotificationMethodsBuilder.newNotificationMethods()
.withPrimaryMethods(NotificationMethod.EMAIL, NotificationMethod.SMS)
.withPhoneNumber("+15141234567"))) // in E.164 international format
.withSigner(newSignerWithEmail("your.email@example.com")
.withFirstName("YourFirstName")
.withLastName("YourLastName"))
Maintenant, vous ajoutez le document que vous souhaitez faire signer et placez les blocs de signature pour vos signataires. Encore une fois, n'oubliez pas de remplacer les valeurs d'échantillon dans ce bloc par vos informations de test. Si vous le souhaitez, la définition des ID de document et de signature vous aidera à mieux localiser vos signatures.
.withDocument(newDocumentWithName("sampleAgreement")
.withId("document1") //optional
.fromFile("your_file_path")
.withSignature(signatureFor("signers.email@example.com")
.withId(new SignatureId("signature1")) //optional
.onPage(0)
.atPosition(175, 165))
.withSignature(signatureFor("your.email@example.com")
.onPage(0)
.atPosition(550, 165)))
Enfin, vous générez votre package à l'aide du code suivant :
.build();
Maintenant que la trousse de documents est prête, accédez à votre client OneSpan Sign, créez votre trousse et envoyez-la aux signataires. Pour ce faire, utilisez le code suivant :
// Issue the request to the OneSpan Sign server to create the DocumentPackage
PackageId packageId = eslClient.createPackageOneStep(documentPackage);
// Send the package to be signed by the participants
eslClient.sendPackage(packageId);
Résultats
Une fois votre classe Java terminée, vous pouvez continuer et exécuter votre application simple. Il y a plusieurs façons de le faire à partir d' Eclipse :
Dans la barre d'outils, sélectionnez le bouton Exécuter
Dans la barre de menus, sélectionnez Exécuter > Exécuter
Dans l' explorateur de packages , cliquez avec le bouton droit de la souris sur votre classe Java et sélectionnez Exécuter en tant qu>application Java.
Si vous vérifiez la boîte de réception de votre compte OneSpan Sign Sandbox, vous verrez que le forfait a été créé et qu'il attend les signatures.
Kit de développement logiciel (SDK) .NET
Pour télécharger l'exemple de code complet, consultez notre site Code Share .
Cette rubrique vous guidera tout au long du processus de création d'un package à l'aide du SDK .NET OneSpan Sign. Dans cette rubrique, vous allez apprendre à :
Télécharger le SDK .NET et Microsoft Visual Studio
Créer et configurer un projet C#
Créer et envoyer un paquet de documents
Conditions préalables
Pour continuer, vous devez disposer des éléments suivants :
SDK .NET de OneSpan Sign : Pour télécharger la version la plus récente du SDK .NET de OneSpan Sign, reportez-vous à la section Getting Started with SDKs.
Microsoft Visual Studio : cette rubrique utilise Microsoft Visual Studio. Vous pouvez utiliser autre chose, mais tout ce qui figure dans ce guide sera décrit à l'aide de Visual Studio. Pour télécharger Microsoft Visual Studio, consultez la communauté Visual Studio. Assurez-vous de sélectionner . Développement de bureau NET lors de l'installation.
Comment faire pour créer un projet C# dans Visual Studio
Avant de créer et d'envoyer un package, vous devez créer un projet Microsoft Visual Studio .
Pour créer et configurer votre projet C#
Lancez Microsoft Visual Studio.
Cliquez sur Créer un nouveau projet.
Sélectionnez Projet vierge et nommez-le comme vous le souhaitez. Une fois terminé, votre projet s'affiche dans l' Explorateur de solutions.
Cliquez sur Outils > Gestionnaire de package NuGet > Console du gestionnaire de package.
Entrez la commande suivante, où <version_number> est le numéro de version du SDK .NET de OneSpan Sign que vous avez téléchargé précédemment.
Install-Package OneSpanSign.Sdk -Version <version_number>
Vous verrez maintenant ce fichier dans votre projet dans l' Explorateur de solutions.
Le Code
Dans cette section, le code sera décomposé section par section. Vous pouvez télécharger l'exemple de code complet à partir du partage de code de la communauté des développeurs, ici.
Comment se connecter
Les premières lignes de code définissent les bibliothèques que vous allez utiliser.
using OneSpanSign.Sdk;
using OneSpanSign.Sdk.Builder;
using System;
using System.IO;
Les lignes de code suivantes définissent vos informations de connexion pour OneSpan Sign.
private static String API_URL = "https://sandbox.esignlive.com/api"; // Use https://apps.esignlive.com/api For Production
private static String API_KEY = "YOUR_API_KEY";
//Alternatively
private static String CLIENT_APP_ID = "your_client_id";
private static String CLIENT_APP_SECRET = "your_client_secret";
private static String BASE_API_URL = "https://sandbox.esignlive.com"; // Use https://apps.esignlive.com For Production
private static String API_URL = BASE_API_URL + "/api";
Clés API
Bien que les clés API puissent être utilisées avec OneSpan Sign, nous vous recommandons de les utiliser Client Apps à la place. Les applications clientes sont plus flexibles et permettent de réduire le nombre de vulnérabilités de sécurité potentielles.
Les applications clientes offrent les avantages suivants par rapport aux clés API :
Avec les applications clientes, l'accès peut être créé, pivoté ou révoqué selon les besoins. Les clés API sont fixes, et donc si vous souhaitez apporter des modifications d'accès, vous devrez contacter notre équipe d'assistance.
Plusieurs applications clientes peuvent être utilisées si vous avez configuré plusieurs intégrations. Cela permet de limiter la portée de toute attaque frauduleuse sur votre système. À l'inverse, une seule clé API est fournie pour toutes les intégrations.
Les applications clientes utilisent des jetons temporaires pour autoriser l'accès à l'API, qui ne sont disponibles que pendant une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe d'assistance.
La clé API peut ne pas être visible, en fonction de votre environnement et des privilèges de votre compte. Seul le propriétaire d'un compte peut afficher une clé API.
Pour afficher votre clé API
Dans la section Clé API de la page Clé API et applications clientes, cliquez sur l'icône Afficher .
Par défaut, votre clé API est masquée.
Applications clientes
Avant que les intégrateurs puissent effectuer des requêtes via les API REST ou les fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent une application cliente ou fournissent une clé API sécurisée pour authentifier les appels d'API. OneSpan vous recommande d'utiliser des applications clientes.
Pour enregistrer une application cliente
Vous pouvez authentifier les appels d'API REST à partir du système d'un utilisateur en lui fournissant un jeton d'API sécurisé mais de courte durée (par exemple, 30 minutes) qui peut être utilisé pour l'authentification. Cette fonctionnalité est appelée Applications clientes. Pour l'activer, vous devez contacter notre équipe d'assistance. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign à l'aide de ces jetons d'API.
Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .
Pour créer une application cliente
Cliquez sur Admin > l'accès à l'API.
Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner Clé API et Applications clientes.
Cliquez sur Ajouter. Une barre latérale Créer une application cliente s' affiche.
Entrez un nom pour l'application cliente.
Cliquez sur Créer.
Copiez l 'ID client et les codes secrets qui s'affichent.
Stockez l'ID client et les codes secrets dans un emplacement sécurisé.
Cliquez sur OK.
Le secret n' apparaîtra plus une fois que vous aurez cliqué sur Terminé. Pour vos dossiers. veuillez copier ce secret dans un emplacement sécurisé. L' ID client et la clé secrète sont utilisés pour récupérer le jeton d'API temporaire.
Vient ensuite le API_URL. Si vous utilisez un compte Sandbox , l'URL correcte est déjà en place. Si vous utilisez un compte de production , vous devez utiliser l'URL commentée.
OssClient ossClient = new OssClient(API_KEY, API_URL);
//Alternatively
OssClient ossClient = new OssClient(new ApiTokenConfig {
ClientAppId = CLIENT_APP_ID,
ClientAppSecret = CLIENT_APP_SECRET,
BaseUrl = BASE_API_URL,
TokenType = ApiTokenType.OWNER
},
BASE_API_URL + "/api", false, null, new Dictionary<string, string>());
Sur la ligne suivante, vous créez un FileStream et lisez le fichier que vous souhaitez télécharger avec votre package. Assurez-vous de remplacer l'espace réservé PATH_TO_YOUR_PDF texte par l'emplacement de votre fichier PDF.
FileStream fs = File.OpenRead("PATH_TO_YOUR_PDF");
Le bloc de code suivant est l'endroit où vous créez le package de documents. Dans ce bloc, vous donnez un nom à votre package.
DocumentPackage superDuperPackage = PackageBuilder
.NewPackageNamed("Test Package .NET")
.WithSettings(DocumentPackageSettingsBuilder.NewDocumentPackageSettings())
Ensuite, les signataires sont ajoutés au package.
Notez que cet exemple de code inclut SMS notifications également la méthode de notification principale. Les méthodes de notification suivantes sont disponibles :
[EMAIL, SMS] - les notifications par e-mail et par SMS sont envoyées au signataire (le numéro de téléphone est obligatoire)
[EMAIL] - seules les notifications par e-mail sont envoyées au signataire (le numéro de téléphone est facultatif)
.WithSigner(SignerBuilder.NewSignerWithEmail("signer.email@example.com")
.WithFirstName("Signer First Name")
.WithLastName("Signer Last Name")
.WithCustomId("Signer"))
.WithNotificationMethods(NotificationMethodsBuilder.NewNotificationMethods()
.WithPrimaryMethods(NotificationMethod.EMAIL, NotificationMethod.SMS)
.WithPhoneNumber("+15141234567") // in E.164 international format
.WithSigner(SignerBuilder.NewSignerWithEmail("your.email@example.com")
.WithFirstName("Your First Name")
.WithLastName("Your Last Name"))
Ensuite, le document est ajouté, y compris les zones de signature pour vos signataires.
.WithDocument(DocumentBuilder.NewDocumentNamed("sampleAgreement")
.FromStream(fs, DocumentType.PDF)
.WithSignature(SignatureBuilder
.SignatureFor("signer.email@example.com")
.OnPage(0)
.AtPosition(175, 165))
.WithSignature(SignatureBuilder
.SignatureFor("your.email@example.com")
.OnPage(0)
.AtPosition(550, 165))
)
Une fois le package entièrement défini, vous pouvez maintenant le construire et l'envoyer.
.Build();
PackageId packageId = ossClient.CreatePackageOneStep(superDuperPackage);
ossClient.SendPackage(packageId);
Résultats
Exécutez ce code en sélectionnant Démarrer dans la barre d'outils. Après cela, vous devriez être en mesure de vous connecter à votre compte OneSpan Sign et de consulter le forfait que vous venez de créer.
Java REST
Pour télécharger l'exemple de code complet, consultez notre site Code Share .
Cette rubrique vous guidera tout au long du processus de création et d'envoi d'une transaction à l'aide de l'API REST Java OneSpan Sign.
Dans cet exemple, une charge utile minimale est utilisée, c'est-à-dire que deux signataires, un document et une signature par signataire sont ajoutés au package.
Pour obtenir une description complète de chaque champ et d'autres attributs facultatifs, reportez-vous à la section Request Payload Table. Vous pouvez également vous référer à l' API interactive pour plus d'informations.
Requête HTTP
POST /api/packages
En-têtes HTTP
Authorization: Basic api_key / Bearer access_token
Accept: application/json
Content-Type: multipart/form-data
Charge utile de la demande
------WebKitFormBoundary1bNO60n7FqP5WO4t
Content-Disposition: form-data; name="file"; filename="testDocumentExtraction.pdf"
Content-Type: application/pdf
%PDF-1.5
%µµµµ
1 0 obj
<>>>
endobj....
------WebKitFormBoundary1bNO60n7FqP5WO4t
Content-Disposition: form-data; name="payload"
{
"roles":[
{
"id":"Role1",
"signers":[
{
"email":"signer1@example.com",
"firstName":"1.firstname",
"lastName":"1.lastname",
"company":"OneSpan Sign"
}
]
},
{
"id":"Role2",
"signers":[
{
"email":"signer2@example.com",
"firstName":"2.firstname",
"lastName":"2.lastname",
"company":"OneSpan Sign"
}
]
}
],
"documents":[
{
"approvals":[
{
"role":"Role1",
"fields":[
{
"page":0,
"top":100,
"subtype":"FULLNAME",
"height":50,
"left":100,
"width":200,
"type":"SIGNATURE"
}
]
},
{
"role":"Role2",
"fields":[
{
"page":0,
"top":300,
"subtype":"FULLNAME",
"height":50,
"left":100,
"width":200,
"type":"SIGNATURE"
}
]
}
],
"name":"Test Document"
}
],
"name":"Example Package",
"type":"PACKAGE",
"language":"en",
"emailMessage":"",
"description":"New Package",
"autocomplete":true,
"status":"SENT"
"phone": "+15141234567",
"notificationMethods": {
"primary": ["EMAIL", "SMS"]
}
}
------WebKitFormBoundary1bNO60n7FqP5WO4t--
Charge utile de réponse
{
"id": "9sKhW-h-qS9m6Ho3zRv3n2a-rkI="
}
Conditions préalables
Pour effectuer ces procédures, vous aurez besoin des éléments suivants :
IDE Eclipse pour les développeurs Java EE : Vous pouvez le télécharger ici.
Comment créer et configurer un projet Java
Pour commencer, vous devez créer et configurer un projet Java.
Pour créer et configurer un projet Java
Ouvrez Eclipse en exécutant eclipse.exe à partir du dossier racine Eclipse. Une fois qu'il a démarré, ouvrez la perspective Java. Vous pouvez le faire en accédant à Windows > à Open Perspective > à d'autres > Java.
Une fois que la perspective Java est ouverte, la vue Explorateur de packages doit s'afficher sur le côté gauche de l'écran. Faites un clic droit dans cette fenêtre et accédez à Nouveau projet Java >. La fenêtre suivante s'affiche :
Nommez votre projet comme vous le souhaitez. Par exemple, CreateAndSendPackage.
Cliquez sur Terminer. Votre nouveau projet a maintenant été ajouté à votre vue Explorateur de packages .
Développez le paquet en cliquant sur la flèche à gauche, faites un clic droit sur le dossier src et allez dans Nouveau paquet >. Entrez un nom de package (par exemple, com.esignlive.example). Cliquez sur Terminer.
Créez un nouveau fichier java :
Faites un clic droit sur votre nouveau paquet dans l' explorateur de paquets et accédez à Nouveau fichier >.
Entrez un nom pour le fichier (par exemple, SimpleCreateAndSendPackage.java).
Cliquez sur Terminer.
Ajoutez un exemple de fichier PDF que vous souhaitez faire signer à votre projet. Vous pouvez utiliser un simple copier-coller de votre système de fichiers vers votre projet dans l'explorateur de packages.
Votre projet doit maintenant ressembler à ceci :
Le Code
Dans cette section, le code sera décomposé section par section. Vous pouvez télécharger l'exemple de code complet à partir du partage de code de la communauté des développeurs, ici.
Comment se connecter
Les lignes de code suivantes définissent vos informations de connexion pour OneSpan Sign.
string apiKey = "YOUR_API_KEY";
string url = "https://sandbox.esignlive.com/api/packages";
Clés API
Bien que les clés API puissent être utilisées avec OneSpan Sign, nous vous recommandons de les utiliser Client Apps à la place. Les applications clientes sont plus flexibles et permettent de réduire le nombre de vulnérabilités de sécurité potentielles.
Les applications clientes offrent les avantages suivants par rapport aux clés API :
Avec les applications clientes, l'accès peut être créé, pivoté ou révoqué selon les besoins. Les clés API sont fixes, et donc si vous souhaitez apporter des modifications d'accès, vous devrez contacter notre équipe d'assistance.
Plusieurs applications clientes peuvent être utilisées si vous avez configuré plusieurs intégrations. Cela permet de limiter la portée de toute attaque frauduleuse sur votre système. À l'inverse, une seule clé API est fournie pour toutes les intégrations.
Les applications clientes utilisent des jetons temporaires pour autoriser l'accès à l'API, qui ne sont disponibles que pendant une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe d'assistance.
La clé API peut ne pas être visible, en fonction de votre environnement et des privilèges de votre compte. Seul le propriétaire d'un compte peut afficher une clé API.
Pour afficher votre clé API
Dans la section Clé API de la page Clé API et applications clientes, cliquez sur l'icône Afficher .
Par défaut, votre clé API est masquée.
Applications clientes
Avant que les intégrateurs puissent effectuer des requêtes via les API REST ou les fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent une application cliente ou fournissent une clé API sécurisée pour authentifier les appels d'API. OneSpan vous recommande d'utiliser des applications clientes.
Pour enregistrer une application cliente
Vous pouvez authentifier les appels d'API REST à partir du système d'un utilisateur en lui fournissant un jeton d'API sécurisé mais de courte durée (par exemple, 30 minutes) qui peut être utilisé pour l'authentification. Cette fonctionnalité est appelée Applications clientes. Pour l'activer, vous devez contacter notre équipe d'assistance. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign à l'aide de ces jetons d'API.
Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .
Pour créer une application cliente
Cliquez sur Admin > l'accès à l'API.
Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner Clé API et Applications clientes.
Cliquez sur Ajouter. Une barre latérale Créer une application cliente s' affiche.
Entrez un nom pour l'application cliente.
Cliquez sur Créer.
Copiez l 'ID client et les codes secrets qui s'affichent.
Stockez l'ID client et les codes secrets dans un emplacement sécurisé.
Cliquez sur OK.
Le secret n' apparaîtra plus une fois que vous aurez cliqué sur Terminé. Pour vos dossiers. veuillez copier ce secret dans un emplacement sécurisé. L' ID client et la clé secrète sont utilisés pour récupérer le jeton d'API temporaire.
Comment créer un package
Après cela, vous verrez plusieurs variables définies qui sont utilisées dans la création de l'appel POST , comme la valeur de limite du formulaire et le fichier que vous prévoyez de télécharger.
String charset = "UTF-8";
File uploadFile1 = new File("C:/Eclipse/workspace_442/CreateAndSendPackage/sampleAgreement.pdf");
String boundary = Long.toHexString(System.currentTimeMillis()); // Generate a random value for the form boundary
String CRLF = "\r\n"; // Line separator used in multipart/form-data
La ligne suivante est la chaîne JSON qui définit votre package. En règle générale, vous construirez probablement votre chaîne JSON de manière dynamique au lieu d'avoir une chaîne statique géante, comme celle-ci. Cependant, cet exemple peut être utilisé pour fournir une bonne représentation de la structure du JSON dont vous aurez besoin pour créer correctement votre package. Notez que de nombreuses propriétés sont laissées vides dans la chaîne, car elles ne sont pas nécessaires à la création de packages. Ils sont là pour vous donner une liste des options disponibles et de la façon dont elles sont transmises dans le JSON.
La première partie de la chaîne JSON du package est l'objet roles. À l'intérieur de celui-ci, vous pouvez définir des éléments tels que l'identifiant, l'entreprise, le prénom, le nom, l'adresse e-mail et le nom pour personnaliser vos rôles de signataire. Parmi les autres paramètres notables, citons le message électronique, le titre et la livraison.
string jsonString = "{";
jsonString += "\"roles\":[{\"id\":\"Role1\",\"signers\":[{\"email\":\"signer1@example.com\",\"firstName\":\"1.firstname\",\"lastName\":\"1.lastname\",\"company\":\"OneSpan Sign\"}]},{\"id\":\"Role2\",\"signers\":[{\"email\":\"signer2@example.com\",\"firstName\":\"2.firstname\",\"lastName\":\"2.lastname\",\"company\":\"OneSpan Sign\"}]}],";
La section suivante de la chaîne JSON du package est l'objet documents. À l'intérieur de celui-ci, vous allez définir des éléments tels que le nom et les approbations (blocs de signature). Dans les approbations, les principaux éléments à définir sont le type, le sous-type, le rôle, la page et les paramètres d'emplacement . Ceux-ci définiront les signatures requises dans chaque document.
Enfin, les derniers paramètres de la chaîne JSON du package que vous voudrez noter sont le nom, le type, l' état, emailMessage et autoComplete. Ensuite, vous allez définir la connexion sur laquelle vous allez envoyer votre demande. La première ligne ouvre la connexion à l'URL de la demande. Notez que le reste de l'URL de la requête particulière qui est faite est ajouté à l'URL de base, ici. Le reste configure les propriétés de la demande et crée OutputStream et PrintWriter pour communiquer la charge utile de la demande avec OneSpan Sign.
HttpsURLConnection connection = null;
URL url = new URL(requestURL);
connection = (HttpsURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setDoInput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "multipart/form-data; boundary=" + boundary);
connection.setRequestProperty("Authorization", "Basic " + apiKey);
connection.setRequestProperty("Accept", "application/json; esl-api-version=11.0");
OutputStream output = connection.getOutputStream();
PrintWriter writer = new PrintWriter(new OutputStreamWriter(output, charset), true);
À l'intérieur du bloc try, le formulaire en plusieurs parties est créé. Dans le code ci-dessous, vous pouvez voir comment la limite, les descripteurs de partie de formulaire et le contenu sont ajoutés dans chaque partie du formulaire.
// Add pdf file.
writer.append("--" + boundary).append(CRLF);
writer.append("Content-Disposition: form-data; name=\"file\"; filename=\"" + uploadFile1.getName() + "\"").append(CRLF);
writer.append("Content-Type: " + URLConnection.guessContentTypeFromName(uploadFile1.getName())).append(CRLF);
writer.append(CRLF).flush();
Files.copy(uploadFile1.toPath(), output);
output.flush();
writer.append(CRLF).flush();
// add json payload
writer.append("--" + boundary).append(CRLF);
writer.append("Content-Disposition: form-data; name=\"payload\"").append(CRLF);
writer.append("Content-Type: application/json; charset=" + charset).append(CRLF);
writer.append(CRLF).append(jsonContent).append(CRLF).flush();
// End of multipart/form-data.
writer.append("--" + boundary + "--").append(CRLF).flush();
Enfin, vous effectuerez l'appel POST , en transmettant votre formulaire à OneSpan Sign, qui créera votre ensemble de documents. Le code de réponse et le contenu de la réponse sont imprimés sur la console.
int responseCode = ((HttpURLConnection) connection).getResponseCode();
System.out.println(responseCode);
if (responseCode == 200) {
// get and write out response
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
/ print result
System.out.println(response.toString());
} else {
// get and write out response
BufferedReader in = new BufferedReader(new InputStreamReader(connection.getErrorStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
// print result
System.out.println(response.toString());
}
Résultats
Si tout ce qui concerne votre appel REST est correct, vous devriez recevoir un ID de package renvoyé en réponse :
Si vous vous connectez à votre compte OneSpan Sign, vous pouvez voir que le forfait a été créé comme défini dans votre demande.
Tableau des données utiles de la demande
Propriété | Type | Modifiable | Obligatoire | Faire défaut | Exemples de valeurs | Référence |
---|---|---|---|---|---|---|
Rôles | ||||||
id | corde | Oui | Non | n/a | Signataire1 | |
nom | corde | Oui | Non | n/a | Signataire1 | |
par e-mailMessage | tableau | Oui | Non | n/a | Vérifier la référence | |
réaffecter | booléen | Oui | Non | 0 | Vrai/Faux | |
attachmentExigences | tableau | Oui | Non | n/a | Vérifier la référence | |
index | corde | Oui | Non | 0 | 0/1/2/3 | |
type | corde | Oui | Non | SIGNATAIRE | SIGNATAIRE / ÉMETTEUR | |
Signataires | ||||||
id | corde | Oui | Non | n/a | Signataire1 | |
Messagerie électronique | corde | Oui | Oui | n/a | patty.galant@example.com | |
prénom | corde | Oui | Oui | n/a | Patty | |
nomNom de famille | corde | Oui | Oui | n/a | Galant | |
compagnie | corde | Oui | Non | n/a | Acme Inc. | |
titre | corde | Oui | Non | zéro | Directeur général | |
groupe | tableau | Oui | Non | n/a | Vérifier la référence | |
Langue | corde | Oui | Non | n/a | en/fr/es/... | |
Téléphone | corde | Oui | Non | n/a | "+15141234567" | |
notificationMethods | objet | Oui | Non | n/a | { « primaire » : [ « EMAIL » ] } | |
primaire | tableau | Oui | Non | n/a | ["EMAIL"], ["EMAIL », « SMS"] | |
signature | ||||||
textuel | corde | Non | Non | zéro | ||
dessiné à la main | corde | Oui | Non | n/a | AQAAAMkGIVM7tmRJzS2cANoDcyT0ASABAwA= | |
livraison | tableau | Oui | Non | n/a | Vérifier la référence | |
knowledgeBasedAuthentication | tableau | Oui | Non | n/a | Vérifier la référence | |
Auth | tableau | Oui | Non | n/a | Vérifier la référence | |
documents | ||||||
description | corde | Oui | Non | n/a | Description du document d'essai1 | |
id | corde | Oui | Non | n/a | Document1 | |
données | tableau | Oui | Non | n/a | Vérifier la référence | |
Approbations | ||||||
rôle | corde | Oui | Oui | n/a | Signataire1 | |
id | corde | Oui | Non | n/a | Approbation1 | |
optionnel | booléen | Oui | Non | 0 | Vrai/Faux | |
enforceCaptureSignature | booléen | Oui | Non | 0 | Vrai/Faux | |
champs | tableau | Oui | Non | n/a | Vérifier la référence | Fields (voir Text Anchorsaussi ) |
nom | corde | Oui | Non | n/a | Document 1 | |
extraire | booléen | Oui | Non | 0 | Vrai/Faux | |
extractionTypes | tableau | Oui | Non | n/a | ["TEXT_TAGS »,"ACROFIELDS"] | |
champs | tableau | Oui | Non | n/a | Vérifier la référence | |
nom | corde | Oui | Non | n/a | Document1 | |
Paramètres | tableau | Oui | Non | n/a | Vérifier la référence | |
expéditeur | ||||||
nomNom de famille | corde | Oui | Non | n/a | Forgeron | |
prénom | corde | Oui | Non | n/a | Pendiller | |
Messagerie électronique | corde | Oui | Non | n/a | bobsmith@email.com(qui est un expéditeur sous votre compte principal) | |
statut | corde | Oui | Non | BROUILLON | BROUILLON / ENVOYÉ / TERMINÉ / ARCHIVÉ / REFUSÉ / OPTED_OUT / EXPIRÉ | |
nom | corde | Oui | Non | n/a | Package créé à partir d'un modèle via l'API REST | |
type | corde | Oui | Non | COLIS | EMBALLAGE / MODÈLE / MISE EN PAGE | |
description | corde | Oui | Non | n/a | Package créé avec l'API REST OneSpan Sign | |
Langue | corde | Oui | Non | en | en / fr / es ... | |
visibilité | corde | Oui | Non | COMPTE | COMPTE / EXPÉDITEUR | |
Saisie semi-automatique | booléen | Oui | Non | 1 | vrai / faux | |
données | tableau | Oui | Non | n/a | Vérifier la référence | |
due | corde | Oui | Non | zéro | 08-26-17 | |
Notariée | booléen | Oui | Non | 0 | true/false (vérifier la référence, à utiliser uniquement lors de la notarisation) | eNotaire |
notaryRoleId | corde | Oui | Non | n/a | Signer1 (vérifier la référence, à utiliser uniquement lors de la notarisation) | eNotaire |
par e-mailMessage | corde | Oui | Non | n/a | Ce message doit être remis à tous les signataires |
REST .NET
Pour télécharger l'exemple de code complet, consultez notre site Code Share .
Cette rubrique vous guidera tout au long du processus de création et d'envoi d'une transaction à l'aide de .NET REST.
Dans cet exemple, une charge utile minimale est utilisée, c'est-à-dire que deux signataires, un document et une signature par signataire sont ajoutés au package.
Pour obtenir une description complète de chaque champ et d'autres attributs facultatifs, reportez-vous à la section Request Payload Table. Vous pouvez également vous référer à l' API interactive pour plus d'informations.
Requête HTTP
POST /api/packages
En-têtes HTTP
Authorization: Basic api_key / Bearer access_token
Accept: application/json
Content-Type: multipart/form-data
Charge utile de la demande
------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="file"; filename="testDocumentExtraction.pdf" Content-Type: application/pdf %PDF-1.5 %µµµµ 1 0 obj <>>> endobj.... ------WebKitFormBoundary1bNO60n7FqP5WO4t Content-Disposition: form-data; name="payload" { "roles":[ { "id":"Role1", "signers":[ { "email":"signer1@example.com", "firstName":"1.firstname", "lastName":"1.lastname", "company":"OneSpan Sign" } ] }, { "id":"Role2", "signers":[ { "email":"signer2@example.com", "firstName":"2.firstname", "lastName":"2.lastname", "company":"OneSpan Sign" } ] } ], "documents":[ { "approvals":[ { "role":"Role1", "fields":[ { "page":0, "top":100, "subtype":"FULLNAME", "height":50, "left":100, "width":200, "type":"SIGNATURE" } ] }, { "role":"Role2", "fields":[ { "page":0, "top":300, "subtype":"FULLNAME", "height":50, "left":100, "width":200, "type":"SIGNATURE" } ] } ], "name":"Test Document" } ], "name":"Example Package", "type":"PACKAGE", "language":"en", "emailMessage":"", "description":"New Package", "autocomplete":true, "status":"SENT" } ------WebKitFormBoundary1bNO60n7FqP5WO4t--
Charge utile de réponse
{
"id": "9sKhW-h-qS9m6Ho3zRv3n2a-rkI="
}
Comment créer et configurer un projet .NET
Cette rubrique vous guidera tout au long du processus de vérification de l'état d'une transaction et de téléchargement de documents à l'aide du SDK .NET OneSpan Sign. Dans cette rubrique, vous allez apprendre à :
Télécharger Microsoft Visual Studio
Créer et configurer un projet C#
Créer et envoyer un paquet de documents
Conditions préalables
Pour effectuer ces procédures, vous aurez besoin des éléments suivants :
Microsoft Visual Studio : cette rubrique utilise Microsoft Visual Studio. Vous pouvez utiliser autre chose, mais tout ce qui figure dans ce guide sera décrit à l'aide de Visual Studio. Pour télécharger Microsoft Visual Studio, consultez la communauté Visual Studio. Assurez-vous de sélectionner . Développement de bureau NET lors de l'installation.
Comment faire pour créer un projet C# dans Visual Studio
Avant de créer et d'envoyer un package, vous devez créer un projet Microsoft Visual Studio .
Pour créer et configurer votre projet C# dans Visual Studio
Lancez Microsoft Visual Studio.
Cliquez sur Créer un nouveau projet.
Sélectionnez un projet vierge et nommez-le comme vous le souhaitez. Une fois terminé, votre projet s'affiche dans l' Explorateur de solutions.
Vous verrez maintenant ce fichier dans votre projet dans l' Explorateur de solutions.
Le Code
Ce guide décomposera le code section par section. Vous pouvez télécharger l'exemple de code complet à partir du site Code Share .
Comment se connecter
Les lignes de code suivantes définissent vos informations de connexion pour OneSpan Sign.
string apiKey = "YOUR_API_KEY";
string url = "https://sandbox.esignlive.com/api";
Clés API
Bien que les clés API puissent être utilisées avec OneSpan Sign, nous vous recommandons de les utiliser Client Apps à la place. Les applications clientes sont plus flexibles et permettent de réduire le nombre de vulnérabilités de sécurité potentielles.
Les applications clientes offrent les avantages suivants par rapport aux clés API :
Avec les applications clientes, l'accès peut être créé, pivoté ou révoqué selon les besoins. Les clés API sont fixes, et donc si vous souhaitez apporter des modifications d'accès, vous devrez contacter notre équipe d'assistance.
Plusieurs applications clientes peuvent être utilisées si vous avez configuré plusieurs intégrations. Cela permet de limiter la portée de toute attaque frauduleuse sur votre système. À l'inverse, une seule clé API est fournie pour toutes les intégrations.
Les applications clientes utilisent des jetons temporaires pour autoriser l'accès à l'API, qui ne sont disponibles que pendant une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe d'assistance.
La clé API peut ne pas être visible, en fonction de votre environnement et des privilèges de votre compte. Seul le propriétaire d'un compte peut afficher une clé API.
Pour afficher votre clé API
Dans la section Clé API de la page Clé API et applications clientes, cliquez sur l'icône Afficher .
Par défaut, votre clé API est masquée.
Applications clientes
Avant que les intégrateurs puissent effectuer des requêtes via les API REST ou les fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent une application cliente ou fournissent une clé API sécurisée pour authentifier les appels d'API. OneSpan vous recommande d'utiliser des applications clientes.
Pour enregistrer une application cliente
Vous pouvez authentifier les appels d'API REST à partir du système d'un utilisateur en lui fournissant un jeton d'API sécurisé mais de courte durée (par exemple, 30 minutes) qui peut être utilisé pour l'authentification. Cette fonctionnalité est appelée Applications clientes. Pour l'activer, vous devez contacter notre équipe d'assistance. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign à l'aide de ces jetons d'API.
Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .
Pour créer une application cliente
Cliquez sur Admin > l'accès à l'API.
Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner Clé API et Applications clientes.
Cliquez sur Ajouter. Une barre latérale Créer une application cliente s' affiche.
Entrez un nom pour l'application cliente.
Cliquez sur Créer.
Copiez l 'ID client et les codes secrets qui s'affichent.
Stockez l'ID client et les codes secrets dans un emplacement sécurisé.
Cliquez sur OK.
Le secret n' apparaîtra plus une fois que vous aurez cliqué sur Terminé. Pour vos dossiers. veuillez copier ce secret dans un emplacement sécurisé. L' ID client et la clé secrète sont utilisés pour récupérer le jeton d'API temporaire.
Vient ensuite le API_URL. Si vous utilisez un compte Sandbox , l'URL correcte est déjà en place. Si vous utilisez un compte de production , vous devez utiliser l'URL commentée.
Comment créer un package
La ligne suivante est la chaîne JSON qui définit votre package. En règle générale, vous construirez probablement votre chaîne JSON de manière dynamique au lieu d'avoir une chaîne statique géante, comme celle-ci. Il s'agit de donner une bonne représentation de la structure du JSON afin de créer correctement votre package. De nombreuses propriétés sont volontairement laissées vides dans la chaîne qui ne sont pas nécessaires à la création, de sorte que vous pouvez voir certaines des autres options disponibles et comment elles sont transmises dans le JSON.
La première partie de la chaîne JSON du package est l'objet roles. À l'intérieur de celui-ci, vous pouvez définir des éléments tels que l'identifiant, l'entreprise, le prénom, le nom, l'adresse e-mail et le nom pour personnaliser vos rôles de signataire. Parmi les autres paramètres notables, citons le message électronique, le titre et la livraison.
{
"roles":[
{
"id":"Role1",
"signers":[
{
"email":"signer1@example.com",
"firstName":"1.firstname",
"lastName":"1.lastname",
"company":"OneSpan Sign"
}
]
},
La section suivante de la chaîne JSON du package est l'objet documents. À l'intérieur de celui-ci, vous allez définir des éléments tels que le nom et les approbations (blocs de signature).
"documents":[
{
"approvals":[
{
"role":"Role1",
"fields":[
{
"page":0,
"top":100,
"subtype":"FULLNAME",
"height":50,
"left":100,
"width":200,
"type":"SIGNATURE"
}
]
},
Dans les approbations, les principaux éléments à définir sont le type, le sous-type, le rôle, la page et les paramètres d'emplacement. Ceux-ci définiront les signatures requises dans chaque document.
jsonString += "\"documents\":[{\"approvals\":[{\"role\":\"Role1\",\"fields\":[{\"page\":0,\"top\":100,\"subtype\":\"FULLNAME\",\"height\":50,\"left\":100,\"width\":200,\"type\":\"SIGNATURE\"}]},{\"role\":\"Role2\",\"fields\":[{\"page\":0,\"top\":300,\"subtype\":\"FULLNAME\",\"height\":50,\"left\":100,\"width\":200,\"type\":\"SIGNATURE\"}]}],\"name\":\"Test Document\"}],";
Enfin, les derniers paramètres de la chaîne JSON du package que vous voudrez noter sont le nom, le type, l'état, emailMessage et autoComplete. Dans cet exemple, status est défini sur SENT. Cela enverra le paquet et informera les signataires. Si vous souhaitez enregistrer ce paquet en tant que brouillon, utilisez plutôt la valeur DRAFT.
jsonString += "\"name\":\"Example Package\",\"type\":\"PACKAGE\",\"language\":\"en\",\"emailMessage\":\"\",\"description\":\"New Package\",\"autocomplete\":true,\"status\":\"SENT\"";
jsonString += "}";
La ligne suivante du code prendra votre chaîne JSON et créera l'objet StringContent que vous passerez comme charge utile dans votre commande d'API REST.
StringContent jsonContent = new StringContent(jsonString, Encoding.UTF8, "application/json");
Les deux lignes suivantes seront lues dans votre fichier PDF et l'utiliseront pour créer votre objet de fichier ByteArrayContent pour votre appel REST. Assurez-vous de remplacer l'espace réservé par le chemin de votre fichier.
byte[] fileByteArray = File.ReadAllBytes("PATH_TO_YOUR_PDF.pdf");
ByteArrayContent content = new ByteArrayContent(fileByteArray);
Les lignes suivantes définissent l'en-tête de disposition du contenu de l'objet de contenu du fichier pdf.
content.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data");
content.Headers.ContentDisposition.Name = "\"file\"";
content.Headers.ContentDisposition.FileName = "\"NAME_OF_YOUR_FILE.pdf\"";
content.Headers.ContentType = new MediaTypeHeaderValue("application/pdf");
Le bloc de code suivant est l'endroit où vous créez votre formulaire en plusieurs parties et ajoutez vos objets de contenu créés ci-dessus à transmettre avec votre appel REST. Assurez-vous de définir le nom du fichier.
MultipartFormDataContent form = new MultipartFormDataContent();
form.Add(content, "\"file\"", "\"NAME_OF_YOUR_FILE.pdf\"");
form.Add(jsonContent, "\"payload\"");
Ensuite, vous allez créer le HttpClient que vous utiliserez pour effectuer votre requête POST et définir les valeurs d'autorisation et d'acceptation d'en-tête appropriées.
HttpClient myClient = new HttpClient();
myClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", apiKey);
myClient.DefaultRequestHeaders.Add("Accept", "application/json");
Enfin, vous passerez l'appel POST, en transmettant votre formulaire à OneSpan Sign, créant ainsi votre ensemble de documents. La ligne Debug affichera le résultat dans la console de sortie de débogage.
var response = myClient.PostAsync(new Uri(url) + "/packages/", form).Result;
Debug.WriteLine(response.Content.ReadAsStringAsync().Result);
Résultats
Si tout ce qui concerne votre appel REST est correct, vous devriez recevoir un identifiant de package renvoyé comme réponse, comme celui-ci :
Si vous vous connectez à votre compte OneSpan Sign, vous pouvez voir que le forfait a été créé comme défini dans votre demande :
Tableau des données utiles de la demande
Propriété | Type | Modifiable | Obligatoire | Faire défaut | Exemples de valeurs | Référence |
---|---|---|---|---|---|---|
Rôles | ||||||
id | corde | Oui | Non | n/a | Signataire1 | |
nom | corde | Oui | Non | n/a | Signataire1 | |
par e-mailMessage | tableau | Oui | Non | n/a | Vérifier la référence | |
réaffecter | booléen | Oui | Non | 0 | Vrai/Faux | |
attachmentExigences | tableau | Oui | Non | n/a | Vérifier la référence | |
index | corde | Oui | Non | 0 | 0/1/2/3 | |
type | corde | Oui | Non | SIGNATAIRE | SIGNATAIRE / ÉMETTEUR | |
Signataires | ||||||
id | corde | Oui | Non | n/a | Signataire1 | |
Messagerie électronique | corde | Oui | Oui | n/a | patty.galant@example.com | |
prénom | corde | Oui | Oui | n/a | Patty | |
nomNom de famille | corde | Oui | Oui | n/a | Galant | |
compagnie | corde | Oui | Non | n/a | Acme Inc. | |
titre | corde | Oui | Non | zéro | Directeur général | |
groupe | tableau | Oui | Non | n/a | Vérifier la référence | |
Langue | corde | Oui | Non | n/a | en/fr/es/... | |
signature | ||||||
textuel | corde | Non | Non | zéro | ||
dessiné à la main | corde | Oui | Non | n/a | AQAAAMkGIVM7tmRJzS2cANoDcyT0ASABAwA= | |
livraison | tableau | Oui | Non | n/a | Vérifier la référence | |
knowledgeBasedAuthentication | tableau | Oui | Non | n/a | Vérifier la référence | |
Auth | tableau | Oui | Non | n/a | Vérifier la référence | |
documents | ||||||
description | corde | Oui | Non | n/a | Description du document d'essai1 | |
id | corde | Oui | Non | n/a | Document1 | |
données | tableau | Oui | Non | n/a | Vérifier la référence | |
Approbations | ||||||
rôle | corde | Oui | Oui | n/a | Signataire1 | |
id | corde | Oui | Non | n/a | Approbation1 | |
optionnel | booléen | Oui | Non | 0 | Vrai/Faux | |
enforceCaptureSignature | booléen | Oui | Non | 0 | Vrai/Faux | |
champs | tableau | Oui | Non | n/a | Vérifier la référence | Fields (voir Text Anchorsaussi ) |
nom | corde | Oui | Non | n/a | Document 1 | |
extraire | booléen | Oui | Non | 0 | Vrai/Faux | |
extractionTypes | tableau | Oui | Non | n/a | ["TEXT_TAGS »,"ACROFIELDS"] | |
champs | tableau | Oui | Non | n/a | Vérifier la référence | |
nom | corde | Oui | Non | n/a | Document1 | |
Paramètres | tableau | Oui | Non | n/a | Vérifier la référence | |
expéditeur | ||||||
nomNom de famille | corde | Oui | Non | n/a | Forgeron | |
prénom | corde | Oui | Non | n/a | Pendiller | |
Messagerie électronique | corde | Oui | Non | n/a | bobsmith@email.com(qui est un expéditeur sous votre compte principal) | |
statut | corde | Oui | Non | BROUILLON | BROUILLON / ENVOYÉ / TERMINÉ / ARCHIVÉ / REFUSÉ / OPTED_OUT / EXPIRÉ | |
nom | corde | Oui | Non | n/a | Package créé à partir d'un modèle via l'API REST | |
type | corde | Oui | Non | COLIS | EMBALLAGE / MODÈLE / MISE EN PAGE | |
description | corde | Oui | Non | n/a | Package créé avec l'API REST OneSpan Sign | |
Langue | corde | Oui | Non | en | en / fr / es ... | |
visibilité | corde | Oui | Non | COMPTE | COMPTE / EXPÉDITEUR | |
Saisie semi-automatique | booléen | Oui | Non | 1 | vrai / faux | |
données | tableau | Oui | Non | n/a | Vérifier la référence | |
due | corde | Oui | Non | zéro | 08-26-17 | |
Notariée | booléen | Oui | Non | 0 | true/false (vérifier la référence, à utiliser uniquement lors de la notarisation) | eNotaire |
notaryRoleId | corde | Oui | Non | n/a | Signer1 (vérifier la référence, à utiliser uniquement lors de la notarisation) | eNotaire |
par e-mailMessage | corde | Oui | Non | n/a | Ce message doit être remis à tous les signataires |
APEX SDK
Pour télécharger l'exemple de code complet, consultez notre site Code Share .
Ce guide vous guidera tout au long du processus de création et d'envoi d'un ensemble de documents (transaction dans la nouvelle interface utilisateur) avec le SDK APEX OneSpan Sign, y compris le téléchargement du SDK APEX et la création d'une classe APEX.
Conditions préalables
Pour effectuer ces procédures, vous aurez besoin des éléments suivants :
SDK APEX : avant de pouvoir utiliser le SDK APEX, vous devez le télécharger. Vous pouvez le faire en cliquant ici.
Un compte développeur Salesforce : pour ce guide, vous aurez besoin d'un compte développeur Salesforce. Vous pouvez vous inscrire gratuitement en cliquant ici.
Création et envoi d'un colis
Maintenant que vous avez tous les éléments essentiels pour compléter le guide, vous pouvez aller créer et envoyer un colis.
Installation et configuration du SDK
Le SDK peut être installé à l'aide du bouton Déployer dans Salesforce .
Configuration de vos paramètres de connexion
Après l'installation dans votre organisation Sandbox ou Developer , vous devrez configurer les paramètres de connexion en créant une entrée dans les paramètres personnalisés. Assurez-vous que vous disposez d'une entrée avec le nom d'API Paramètres de connexion OneSpan Sign dans l'organisation et qu'elle contient les champs suivants :
Endpoint__c
API_Key__c
Une fois que vous avez mis en place le paramètre personnalisé, vous devez vous assurer que vous disposez d'un enregistrement portant le nom principal. Si vous n'avez pas cet enregistrement dans les paramètres personnalisés, vous pouvez l'ajouter.
Pour ajouter un paramètre personnalisé
Accédez à la page Détails des paramètres personnalisés
Cliquez sur Gérer.
Cliquez sur Nouveau et entrez ce qui suit :
Nom : Principal
Clé API : votre clé API
Point de terminaison : entrez le point de terminaison de votre instance avec /api ajouté à la fin. Par exemple, https://sandbox.esignlive.com/api
Cliquez sur Enregistrer.
Ajout d'un point de terminaison de site distant
Pour que les appels soient traités à partir de Salesforce, vous devez ajouter le point de terminaison du site distant. Il s'agit du même point de terminaison que celui utilisé lors de la création d'un paramètre personnalisé, mais sans le /api ajouté à la fin. Il devra être ajouté aux paramètres du site distant de l'organisation Salesforce à partir de laquelle vous avez l'intention d'utiliser le SDK. Une fois que vous avez ajouté le site distant, assurez-vous qu'il est marqué comme actif, comme indiqué ci-dessous.
Le Code
Dans cette section, le code ci-dessous sera décomposé section par section.
public class OssCreatePackage{
public void createPackage() {
//Create OSS client
OneSpanSDK sdk = new OneSpanSDK();
//Create package
OneSpanAPIObjects.Package_x pkg = new OneSpanAPIObjects.Package_x();
pkg.name = 'Example Package Using APEX SDK1 - ' + Datetime.now().format();
String packageId = sdk.createPackage(pkg);
System.debug('PackageId: ' + packageId);
//Add Signer
String roleResponse = sdk.addRole('John', 'Smith', 'signer1@example.com', packageId);
//Add Document
StaticResource sr = [SELECT Id, Body FROM StaticResource WHERE Name = 'testdoc1' LIMIT 1];
Map<String,Blob> doc = new Map<String,Blob>();
doc.put('Sample Document', sr.Body);
OneSpanAPIObjects.Document document = new OneSpanAPIObjects.Document();
document.name = 'Sample Contract';
document.id = 'document1';
sdk.createDocuments(packageId, document, doc);
//Add Signature
Map<String,Object> role = (Map<String,Object>)JSON.deserializeUntyped(roleResponse);
String roleId = (String)(role.get('id'));
OneSpanAPIObjects.Field field = new OneSpanAPIObjects.Field();
field.left = 208;
field.width = 200;
field.height = 50;
field.top = 518;
field.page = 0;
field.subtype = 'CAPTURE';
field.type = 'SIGNATURE';
List<OneSpanAPIObjects.Field> fields = new List<OneSpanAPIObjects.Field>();
fields.add(field);
OneSpanAPIObjects.Approval approval = new OneSpanAPIObjects.Approval();
approval.fields = fields;
approval.role = roleId;
String signatureResponse = sdk.addSignature(packageId, 'document1', approval);
//Send package
pkg.status = OneSpanAPIObjects.PackageStatus.SENT;
sdk.updatePackage(pkg, packageId);
}
}
La première ligne crée votre client OneSpan Sign à l'aide de la clé API OneSpan Sign et de l'URL d' API appropriée que vous avez définie dans Installing and Configuring the SDK.
OneSpanSDK sdk = new OneSpanSDK();
Le bloc de code suivant est l'endroit où vous créez le package de documents. Dans ce bloc, vous donnez un nom à votre package.
OneSpanAPIObjects.Package_x pkg = new OneSpanAPIObjects.Package_x();
pkg.name = 'Example Package Using APEX SDK1 - ' + Datetime.now().format();
String packageId = sdk.createPackage(pkg);
System.debug('PackageId: ' + packageId);
Ensuite, un signataire est ajouté au package. C'est à cette personne que vous enverrez le colis pour signature. Dans ce bloc, vous remplacerez l'adresse e-mail et le nom par les informations de votre test.
String roleResponse = sdk.addRole('John', 'Smith', 'mail32@example.com', packageId);
Maintenant, vous ajoutez votre document à signer et placez également le bloc de signature pour votre signataire. Encore une fois, n'oubliez pas de remplacer les valeurs d'échantillon dans ce bloc par vos informations de test.
//Add Document
StaticResource sr = [SELECT Id, Body FROM StaticResource WHERE Name = 'testdoc1' LIMIT 1];
Map<String,Blob> doc = new Map<String,Blob>();
doc.put('Sample Document', sr.Body);
OneSpanAPIObjects.Document document = new OneSpanAPIObjects.Document();
document.name = 'Sample Contract';
document.id = 'document1';
sdk.createDocuments(packageId, document, doc);
//Add Signature
Map<String,Object> role = (Map<String,Object>)JSON.deserializeUntyped(roleResponse);
String roleId = (String)(role.get('id'));
OneSpanAPIObjects.Field field = new OneSpanAPIObjects.Field();
field.left = 208;
field.width = 200;
field.height = 50;
field.top = 518;
field.page = 0;
field.subtype = 'CAPTURE';
field.type = 'SIGNATURE';
List<OneSpanAPIObjects.Field> fields = new List<OneSpanAPIObjects.Field>();
fields.add(field);
OneSpanAPIObjects.Approval approval = new OneSpanAPIObjects.Approval();
approval.fields = fields;
approval.role = roleId;
String signatureResponse = sdk.addSignature(packageId, 'document1', approval);
Dans cet exemple, nous avons ajouté un fichier PDF aux ressources statiques de votre compte de développeur Salesforce et l'avons lu en tant que type d'objet blob.
Maintenant que votre trousse est prête, vous utilisez votre client OneSpan Sign pour l'envoyer au signataire.
//Send package
pkg.status = OneSpanAPIObjects.PackageStatus.SENT;
sdk.updatePackage(pkg, packageId);
Résultats
Une fois votre cours APEX terminé, vous pouvez aller de l'avant et l'exécuter. Ouvrez votre console développeur et appuyez sur Ctrl + E pour lancer la fenêtre Exécuter anonyme. Tapez :
new OssCreatePackage.createPackage();
Et appuyez sur Exécuter.
Vous pouvez voir l'ID de votre package imprimé dans la console de débogage :
Si vous vérifiez la boîte de réception de votre compte OneSpan Sign Sandbox, vous verrez que le paquet a été créé et qu'il attend la signature.