Création et envoi d’une transaction

Prev Next

Java SDK.NET SDK Java REST .NET REST APEX SDK

Java SDK

Pour télécharger l'exemple complet de code, consultez notre site de partage de code .

Une transaction est l'expérience d'un utilisateur OneSpan Sign lorsqu'il examine, accepte, signe et éventuellement télécharge des documents.

Ce sujet vous guidera à travers le processus de création et d'envoi d'une transaction à l'aide du SDK Java OneSpan Sign.

Conditions préalables

Pour réaliser ces procédures, vous aurez besoin des éléments suivants :

  • Eclipse IDE pour développeurs Java EE : Vous pouvez le télécharger depuis ici.

  • SDK Java de OneSpan Sign : Vous pouvez le télécharger depuis notre Community Portalfichier . Ou alternativement, vous pouvez les importer depuis notre dépôt Maven en utilisant les commandes suivantes :

    <dependency>
                <groupId>com.silanis.esl</groupId>
                <artifactId>sdk</artifactId>
                <version>11.21</version>
    </dependency>

Comment créer et configurer un projet Java

Créer et configurer un projet Java

  1. Ouvrez Eclipse en lançant eclipse.exe depuis

  2. Une fois la perspective Java ouverte, vous devriez voir la vue Package Explorer sur le côté gauche de l'écran. Faites un clic droit à l'intérieur de cette fenêtre et allez dans New > Java Project. La fenêtre suivante apparaît :

  3. Nommez votre projet comme vous le souhaitez. Par exemple, CreateAndSendPackage. Puis cliquez sur Suivant.

  4. Dans l'onglet Bibliothèques , cliquez sur Ajouter un JAR externe. Naviguez jusqu'à l'emplacement où vous avez sauvegardé votre SDK, et sélectionnez le sdk jar-with-dependencies.

  5. Sélectionne Ouvrir. Vous verrez que le jar SDK a été ajouté à votre parcours de construction.

  6. Cliquez sur Terminer. Votre nouveau projet a maintenant été ajouté à la vue de votre Explorateur de paquets.

  7. Développez le package en cliquant sur la flèche à gauche, faites un clic droit sur le dossier src et allez dans New > Package. Saisissez un nom de paquet (par exemple, com.esignlive.example). Cliquez sur Terminer.

  8. Créez un nouveau fichier Java :

    1. Faites un clic droit sur votre nouveau paquet dans l' Explorateur de paquets et allez dans Nouveau > Fichier.

    2. Saisissez un nom pour le fichier (par exemple, SimpleCreateAndSendPackage.java).

    3. Cliquez sur Terminer.

    4. Ajoutez un fichier PDF d'exemple que vous souhaitez faire signer à votre projet. Vous pouvez utiliser un simple copier-coller depuis votre système de fichiers vers votre projet dans l'explorateur de paquets.

    Votre projet devrait maintenant ressembler à ceci :

Le Code

Dans cette section, le code sera décomposé section par section. Vous pouvez télécharger l'exemple complet du code Developer Community Code Share, 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 clients sont plus flexibles et contribuent à réduire le nombre de vulnérabilités potentielles en matière de sécurité.

Les applications clientes offrent les avantages suivants par rapport aux clés API :

  • Avec les applications client, l'accès peut être créé, tourné ou révoqué selon les besoins. Les clés API sont fixes, et si vous souhaitez effectuer des modifications d'accès, vous devrez contacter notre équipe de support.

  • Plusieurs applications clients peuvent être utilisées si vous avez plusieurs intégrations configurées. Cela permet de limiter la portée de toute attaque frauduleuse contre votre système. Inversement, une seule clé API est fournie pour toutes les intégrations.

  • Les applications clients utilisent des jetons temporaires pour permettre l'accès à l'API, qui ne sont disponibles que pour une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe de support.

La clé API peut ne pas être visible, selon votre environnement et les privilèges de votre compte. Seul un propriétaire de compte peut consulter une clé API.

Pour consulter votre clé API

  • Dans la section Clé API de la page Clé API et Applications Clients, cliquez sur l' icône Visualiser .

Par défaut, votre clé API est masquée.

Applications clients

Avant que les intégrateurs puissent effectuer des requêtes via des API REST ou des fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent soit une application client, soit fournissent une clé API sécurisée pour authentifier les appels API. OneSpan recommande d'utiliser les applications clients.

Pour enregistrer une application client

Vous pouvez authentifier les appels API REST depuis le système de l'utilisateur en lui fournissant un jeton API sécurisé mais de courte durée (par exemple, 30 minutes) pouvant être utilisé pour l'authentification. Cette fonctionnalité s'appelle Applications Clients. Pour l'activer, vous devez contacter notre équipe de support. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign en utilisant ces jetons API.

Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .

Créer une application client

  1. Cliquez sur Admin > Accès API.

  2. Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner la clé API et les applications client.

  3. Cliquez sur Ajouter. Une barre latérale Créer une application client apparaît.

  4. Saisissez un nom pour l'application client.

  5. Cliquez sur Créer.

  6. Copiez l' identifiant client et les codes secrets qui apparaissent.

  7. Stockez l' identifiant client et les codes secrets dans un lieu sécurisé.

  8. Cliquez sur terminé.

Le Secret n'apparaîtra plus une fois que vous cliquerez sur Terminé. Pour vos archives. veuillez copier ce Secret dans un lieu sécurisé. L' ID du client et le secret sont tous deux utilisés pour récupérer le jeton API temporaire.

Ensuite, il y a la API_URL. Si vous utilisez un compte bac à sable, la bonne URL est déjà en place. Si vous utilisez un compte Production, trouvez l'URL correspondante dans ce guidefichier .

Comment créer un package

La ligne de code suivante crée un client OneSpan Sign en utilisant les identifiants ou la clé API des applications clients du compte OneSpan Sign ainsi que l'URL 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 celui où vous créez réellement le package document. Dans ce bloc, vous donnez un nom à votre colis.

DocumentPackage documentPackage = newPackageNamed("Test Package Java SDK")

Ensuite, vous ajouterez deux signataires au package. L'un est vous-même et l'autre 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'identifiant personnalisé dans le SDK pour mieux identifier votre signataire.

Notez que cet exemple de code inclut SMS notifications également comme méthode principale de notification. Les méthodes de notification suivantes sont disponibles :

  • [EMAIL, SMS] - les notifications par email et SMS sont envoyées au signataire (le numéro de téléphone est obligatoire)

  • [EMAIL] - seules les notifications par email sont envoyées au signataire (le numéro de téléphone est optionnel)

.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 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. Optionnellement, définir les identifiants 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 construisez votre package en utilisant le code suivant :

.build();

Maintenant que le paquet document est prêt, accédez à votre client OneSpan Sign, créez votre paquet et envoyez-le aux signataires. Pour cela, 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 cours Java terminé, vous pouvez lancer votre application simple. Il y a quelques façons de faire cela depuis Eclipse :

  • Dans la barre d'outils, sélectionnez le bouton Exécuter

  • Dans la barre de menu, sélectionnez Exécuter > Exécuter

  • Dans l' Explorateur de paquets , faites un clic droit sur votre classe Java et sélectionnez Exécuter en tant qu>application Java.

Si vous consultez la boîte de réception de votre compte OneSpan Sign Sandbox, vous verrez que le colis a été créé et attend des signatures.

.NET SDK

Pour télécharger l'exemple complet de code, consultez notre site de partage de code .

Ce sujet vous guidera à travers le processus de création d'un package en utilisant le SDK OneSpan Sign .NET. Dans ce sujet, vous apprendrez comment :

  • 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 avoir les éléments suivants :

  • SDK .NET de OneSpan Sign : Pour télécharger la version la plus récente du SDK .NET de OneSpan Sign, voir Getting Started with SDKs.

  • Microsoft Visual Studio : Ce sujet utilise Microsoft Visual Studio. Vous pouvez utiliser autre chose, mais tout ce qui est dans ce guide sera décrit via Visual Studio. Pour télécharger Microsoft Visual Studio, consultez la communauté Visual Studio. Assurez-vous de sélectionner . Développement sur le bureau NET lors de l'installation.

Comment créer un projet C# dans Visual Studio

Avant de créer et d'envoyer un paquet, vous devrez créer un projet Microsoft Visual Studio .

Créer et configurer votre projet C#

  1. Lancez Microsoft Visual Studio.

  2. Cliquez sur Créer un nouveau projet.

  3. Sélectionnez Projet vide et nommez-le comme vous le souhaitez. Une fois terminé, vous verrez désormais votre projet dans l' Explorateur de Solutions.

  4. Cliquez sur Outils > Gestionnaire de paquets NuGet > Console du gestionnaire de paquets.

  5. Veuillez lire la commande suivante, où <version_number> est le numéro de version du SDK .NET de OneSpan Sign que vous avez téléchargé plus tôt.

    Install-Package OneSpanSign.Sdk -Version <version_number>

Vous verrez désormais 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 complet du code Developer Community Code Share, 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 clients sont plus flexibles et contribuent à réduire le nombre de vulnérabilités potentielles en matière de sécurité.

Les applications clientes offrent les avantages suivants par rapport aux clés API :

  • Avec les applications client, l'accès peut être créé, tourné ou révoqué selon les besoins. Les clés API sont fixes, et si vous souhaitez effectuer des modifications d'accès, vous devrez contacter notre équipe de support.

  • Plusieurs applications clients peuvent être utilisées si vous avez plusieurs intégrations configurées. Cela permet de limiter la portée de toute attaque frauduleuse contre votre système. Inversement, une seule clé API est fournie pour toutes les intégrations.

  • Les applications clients utilisent des jetons temporaires pour permettre l'accès à l'API, qui ne sont disponibles que pour une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe de support.

La clé API peut ne pas être visible, selon votre environnement et les privilèges de votre compte. Seul un propriétaire de compte peut consulter une clé API.

Pour consulter votre clé API

  • Dans la section Clé API de la page Clé API et Applications Clients, cliquez sur l' icône Visualiser .

Par défaut, votre clé API est masquée.

Applications clients

Avant que les intégrateurs puissent effectuer des requêtes via des API REST ou des fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent soit une application client, soit fournissent une clé API sécurisée pour authentifier les appels API. OneSpan recommande d'utiliser les applications clients.

Pour enregistrer une application client

Vous pouvez authentifier les appels API REST depuis le système de l'utilisateur en lui fournissant un jeton API sécurisé mais de courte durée (par exemple, 30 minutes) pouvant être utilisé pour l'authentification. Cette fonctionnalité s'appelle Applications Clients. Pour l'activer, vous devez contacter notre équipe de support. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign en utilisant ces jetons API.

Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .

Créer une application client

  1. Cliquez sur Admin > Accès API.

  2. Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner la clé API et les applications client.

  3. Cliquez sur Ajouter. Une barre latérale Créer une application client apparaît.

  4. Saisissez un nom pour l'application client.

  5. Cliquez sur Créer.

  6. Copiez l' identifiant client et les codes secrets qui apparaissent.

  7. Stockez l' identifiant client et les codes secrets dans un lieu sécurisé.

  8. Cliquez sur terminé.

Le Secret n'apparaîtra plus une fois que vous cliquerez sur Terminé. Pour vos archives. veuillez copier ce Secret dans un lieu sécurisé. L' ID du client et le secret sont tous deux utilisés pour récupérer le jeton API temporaire.

Ensuite, il y a la API_URL. Si vous utilisez un compte bac à sable , la bonne URL est déjà en place. Si vous utilisez un compte Production , vous devriez 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>());		

Dans la ligne suivante, vous créez un FileStream et lisez le fichier que vous souhaitez télécharger avec votre paquet. Assurez-vous de remplacer le texte PATH_TO_YOUR_PDF le lieu de placement par l'emplacement de votre fichier PDF.

FileStream fs = File.OpenRead("PATH_TO_YOUR_PDF");

Le bloc de code suivant est celui où vous créez réellement le package document. Dans ce bloc, vous donnez un nom à votre colis.

DocumentPackage superDuperPackage = PackageBuilder
	.NewPackageNamed("Test Package .NET")
	.WithSettings(DocumentPackageSettingsBuilder.NewDocumentPackageSettings())

Ensuite, les signataires sont ajoutés au paquet.

Notez que cet exemple de code inclut SMS notifications également comme méthode principale de notification. Les méthodes de notification suivantes sont disponibles :

  • [EMAIL, SMS] - les notifications par email et SMS sont envoyées au signataire (le numéro de téléphone est obligatoire)

  • [EMAIL] - seules les notifications par email sont envoyées au signataire (le numéro de téléphone est optionnel)

.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é, incluant des cases 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))
			)

Avec le package complètement défini, vous pouvez désormais construire le package et l'envoyer.

.Build();
 
PackageId packageId = ossClient.CreatePackageOneStep(superDuperPackage);
ossClient.SendPackage(packageId);

Résultats

Exécutez ce code en sélectionnant Start depuis la barre d'outils. Après cela, vous devriez pouvoir vous connecter au compte OneSpan Sign et consulter le package que vous venez de créer.

Java REST

Pour télécharger l'exemple complet de code, consultez notre site de partage de code .

Ce sujet vous guidera à travers le processus de création et d'envoi d'une transaction en utilisant l'API Java REST OneSpan Sign.

Dans cet exemple, une charge utile minimale est utilisée, où deux signataires, un document et une signature par signataire sont ajoutés au package.

Pour une description complète de chaque champ et des autres attributs optionnels, voir 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 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": [
                {
                    "firstName": "James",
                    "lastName": "Smith",                   
                    "email": "test1@ttt.com",
                    "company": "Smith's Company",
                    "phone": "15145555555",                    
                    "notificationMethods": {
                      "primary": ["EMAIL", "SMS"]
                    }
                }
		},
		{
			"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="
}

Conditions préalables

Pour réaliser ces procédures, vous aurez besoin des éléments suivants :

  • Eclipse IDE pour développeurs Java EE : Vous pouvez le télécharger depuis ici.

Comment créer et configurer un projet Java

Pour commencer, vous devez créer et configurer un projet Java.

Créer et configurer un projet Java

  1. Ouvrez Eclipse en exécutant eclipse.exe depuis le dossier root Eclipse. Une fois que c'est commencé, ouvrez la perspective Java. Vous pouvez le faire en allant sur Windows > Open Perspective > Other > Java.

  2. Une fois la perspective Java ouverte, vous devriez voir la vue Package Explorer sur le côté gauche de l'écran. Faites un clic droit à l'intérieur de cette fenêtre et allez dans New > Java Project. La fenêtre suivante apparaît :

  3. Nommez votre projet comme vous le souhaitez. Par exemple, CreateAndSendPackage.

  4. Cliquez sur Terminer. Votre nouveau projet a maintenant été ajouté à la vue de votre Explorateur de paquets.

  5. Développez le package en cliquant sur la flèche à gauche, faites un clic droit sur le dossier src et allez dans New > Package. Saisissez un nom de paquet (par exemple, com.esignlive.example). Cliquez sur Terminer.

  6. Créez un nouveau fichier Java :

    1. Faites un clic droit sur votre nouveau paquet dans l' Explorateur de paquets et allez dans Nouveau > Fichier.

    2. Saisissez un nom pour le fichier (par exemple, SimpleCreateAndSendPackage.java).

    3. Cliquez sur Terminer.

    4. Ajoutez un fichier PDF d'exemple que vous souhaitez faire signer à votre projet. Vous pouvez utiliser un simple copier-coller depuis votre système de fichiers vers votre projet dans l'explorateur de paquets.

    Votre projet devrait maintenant ressembler à ceci :

Le Code

Dans cette section, le code sera décomposé section par section. Vous pouvez télécharger l'exemple complet du code Developer Community Code Share, 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 clients sont plus flexibles et contribuent à réduire le nombre de vulnérabilités potentielles en matière de sécurité.

Les applications clientes offrent les avantages suivants par rapport aux clés API :

  • Avec les applications client, l'accès peut être créé, tourné ou révoqué selon les besoins. Les clés API sont fixes, et si vous souhaitez effectuer des modifications d'accès, vous devrez contacter notre équipe de support.

  • Plusieurs applications clients peuvent être utilisées si vous avez plusieurs intégrations configurées. Cela permet de limiter la portée de toute attaque frauduleuse contre votre système. Inversement, une seule clé API est fournie pour toutes les intégrations.

  • Les applications clients utilisent des jetons temporaires pour permettre l'accès à l'API, qui ne sont disponibles que pour une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe de support.

La clé API peut ne pas être visible, selon votre environnement et les privilèges de votre compte. Seul un propriétaire de compte peut consulter une clé API.

Pour consulter votre clé API

  • Dans la section Clé API de la page Clé API et Applications Clients, cliquez sur l' icône Visualiser .

Par défaut, votre clé API est masquée.

Applications clients

Avant que les intégrateurs puissent effectuer des requêtes via des API REST ou des fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent soit une application client, soit fournissent une clé API sécurisée pour authentifier les appels API. OneSpan recommande d'utiliser les applications clients.

Pour enregistrer une application client

Vous pouvez authentifier les appels API REST depuis le système de l'utilisateur en lui fournissant un jeton API sécurisé mais de courte durée (par exemple, 30 minutes) pouvant être utilisé pour l'authentification. Cette fonctionnalité s'appelle Applications Clients. Pour l'activer, vous devez contacter notre équipe de support. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign en utilisant ces jetons API.

Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .

Créer une application client

  1. Cliquez sur Admin > Accès API.

  2. Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner la clé API et les applications client.

  3. Cliquez sur Ajouter. Une barre latérale Créer une application client apparaît.

  4. Saisissez un nom pour l'application client.

  5. Cliquez sur Créer.

  6. Copiez l' identifiant client et les codes secrets qui apparaissent.

  7. Stockez l' identifiant client et les codes secrets dans un lieu sécurisé.

  8. Cliquez sur terminé.

Le Secret n'apparaîtra plus une fois que vous cliquerez sur Terminé. Pour vos archives. veuillez copier ce Secret dans un lieu sécurisé. L' ID du client et le secret sont tous deux utilisés pour récupérer le jeton API temporaire.

Comment créer un package

Ensuite, vous verrez plusieurs variables définies pour la création de l'appel POST , comme la valeur de la limite du formulaire et le fichier que vous prévoyez de téléverser.

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 général, vous construirez probablement votre chaîne JSON de façon dynamique plutôt qu'avec une chaîne statique géante, comme celle-ci. Cependant, cet exemple peut servir à fournir une bonne représentation de la structure du JSON dont vous aurez besoin pour créer correctement votre paquet. Notez que de nombreuses propriétés restent vides dans la chaîne car elles ne sont pas nécessaires pour la création de paquets. Ils sont là pour vous donner une liste des 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 cela, vous pouvez définir des éléments comme l'identifiant, l'entreprise, le prénom, le nom de famille, l'email et le nom pour personnaliser vos rôles de signataire. Parmi les autres réglages notables figurent le message par e-mail, 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, vous définirez des éléments comme le nom et les approbations (blocs de signature). Dans les approbations, les principaux éléments à définir seraient le type, le sous-type, le rôle, la page et les paramètres de localisation . Celles-ci définiront les signatures requises dans chaque document.

Enfin, les derniers paramètres de la chaîne JSON du paquet que vous voudrez noter sont le nom, le type, le statut, emailMessage et l'autoComplétion. Ensuite, vous définirez la connexion sur laquelle vous enverrez votre demande. La première ligne ouvre la connexion vers l'URL de la requête. Remarquez que le reste de l'URL de la requête particulière effectuée est ajouté à l'URL de base, ici. Le reste configure les propriétés de la requête et crée l' OutputStream et le PrintWriter pour communiquer la charge utile de la requête 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, la forme multiparties réelle est créée. Dans le code ci-dessous, vous pouvez voir comment la frontière, les descripteurs de la partie de forme 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 passerez l'appel POST , en transmettant votre formulaire à OneSpan Sign, qui crée votre package 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 avec votre appel REST est correct, vous devriez recevoir un numéro de colis en réponse :

Si vous vous connectez à votre compte OneSpan Sign, vous pouvez voir que le paquet a été créé tel que défini dans votre demande.

Table des charges utiles de requêtes

Propriété

Type

Modifiable

Obligatoire

Faire défaut

Valeurs d'échantillonnage

Référence

Rôles

Signer Management

id

corde

Oui

Non

n/a

Signataire1

nom

corde

Oui

Non

n/a

Signataire1

emailMessage

tableau

Oui

Non

n/a

Vérifier la référence

Email Message

réaffecter

booléen

Oui

Non

0

vrai/faux

Change Signer

Annexe Exigences

tableau

Oui

Non

n/a

Vérifier la référence

Attachment Requirements

index

corde

Oui

Non

0

0/1/2/3

Signer Workflow

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

Nom 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

Groups

Langue

corde

Oui

Non

n/a

en/fr/es/…

Configure Package Language

Téléphone

corde

Oui

Non

n/a

"+15141234567"

SMS Notifications

MédulesNotificationT

objet

Oui

Non

n/a

{ « primary » : [ « EMAIL » ] }

SMS Notifications

primaire

tableau

Oui

Non

n/a

[« EMAIL »], [« EMAIL », « SMS »]

SMS Notifications

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

Deliver Signed Documents By Email

KnowledgeBasedAuthentication

tableau

Oui

Non

n/a

Vérifier la référence

Signer Authentication

Auth

tableau

Oui

Non

n/a

Vérifier la référence

Signer Authentication

documents

Document Management

description

corde

Oui

Non

n/a

Description du document de test1

id

corde

Oui

Non

n/a

document1

données

tableau

Oui

Non

n/a

Vérifier la référence

Document Attributes

Approbations

Signatures

rôle

corde

Oui

Oui

n/a

Signataire1

id

corde

Oui

Non

n/a

Approuvation1

optionnel

booléen

Oui

Non

0

vrai/faux

Optional Signature

enforceCaptureSignature

booléen

Oui

Non

0

vrai/faux

Enforce Capture Signature

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

Document Extraction/ Text Tag/ Position Extraction

Types d'extraction

tableau

Oui

Non

n/a

[« TEXT_TAGS », « ACROFIELDS »]

Document Extraction/ Text Tag

champs

tableau

Oui

Non

n/a

Vérifier la référence

Field Injection

nom

corde

Oui

Non

n/a

document1

Paramètres

tableau

Oui

Non

n/a

Vérifier la référence

Signer Experience Customization

expéditeur

Create a Package on Behalf of Another User

Nom 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É / COMPLÉTÉ / ARCHIVÉ / REFUSÉ / OPTED_OUT / EXPIRÉ

nom

corde

Oui

Non

n/a

Paquet créé à partir d'un modèle via l'API REST

type

corde

Oui

Non

COLIS

PACKAGE / MODÈLE / MISE EN PAGE

description

corde

Oui

Non

n/a

Package créé avec l'API OneSpan Sign REST

Langue

corde

Oui

Non

en

en / fr / es …

Configure Package Language

visibilité

corde

Oui

Non

COMPTE

COMPTE / EXPÉDITEUR

autoComplete

booléen

Oui

Non

1

vrai / faux

données

tableau

Oui

Non

n/a

Vérifier la référence

Package Attribute

due

corde

Oui

Non

zéro

08-26-17

Notariée

booléen

Oui

Non

0

vrai/faux (vérifier la référence, n'utiliser que lors de la notarisation)

eNotary

notaryRoleId

corde

Oui

Non

n/a

Signer1 (vérifier la référence, n'utiliser que lors de la notarisation)

eNotary

emailMessage

corde

Oui

Non

n/a

Ce message doit être transmis à tous les signataires

.NET REST

Pour télécharger l'exemple complet de code, consultez notre site de partage de code .

Ce sujet vous guidera à travers le processus de création et d'envoi d'une transaction en utilisant .NET REST.

Dans cet exemple, une charge utile minimale est utilisée, où deux signataires, un document et une signature par signataire sont ajoutés au package.

Pour une description complète de chaque champ et des autres attributs optionnels, voir 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 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

Ce sujet vous guidera à travers le processus pour vérifier le statut d'une transaction et télécharger tout document via le SDK OneSpan Sign .NET. Dans ce sujet, vous apprendrez comment :

  • 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 réaliser ces procédures, vous aurez besoin des éléments suivants :

  • Microsoft Visual Studio : Ce sujet utilise Microsoft Visual Studio. Vous pouvez utiliser autre chose, mais tout ce qui est dans ce guide sera décrit via Visual Studio. Pour télécharger Microsoft Visual Studio, consultez la communauté Visual Studio. Assurez-vous de sélectionner . Développement sur le bureau NET lors de l'installation.

Comment créer un projet C# dans Visual Studio

Avant de créer et d'envoyer un paquet, vous devrez créer un projet Microsoft Visual Studio .

Pour créer et configurer votre projet C# dans Visual Studio

  1. Lancez Microsoft Visual Studio.

  2. Cliquez sur Créer un nouveau projet.

  3. Sélectionnez projet vide et donnez-lui un nom comme vous le souhaitez. Une fois terminé, vous verrez désormais votre projet dans l' Explorateur de Solutions.

Vous verrez désormais 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 un code d'exemple complet depuis le 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 clients sont plus flexibles et contribuent à réduire le nombre de vulnérabilités potentielles en matière de sécurité.

Les applications clientes offrent les avantages suivants par rapport aux clés API :

  • Avec les applications client, l'accès peut être créé, tourné ou révoqué selon les besoins. Les clés API sont fixes, et si vous souhaitez effectuer des modifications d'accès, vous devrez contacter notre équipe de support.

  • Plusieurs applications clients peuvent être utilisées si vous avez plusieurs intégrations configurées. Cela permet de limiter la portée de toute attaque frauduleuse contre votre système. Inversement, une seule clé API est fournie pour toutes les intégrations.

  • Les applications clients utilisent des jetons temporaires pour permettre l'accès à l'API, qui ne sont disponibles que pour une courte période. Les clés API n'expirent pas, et toute violation vous obligera donc à contacter notre équipe de support.

La clé API peut ne pas être visible, selon votre environnement et les privilèges de votre compte. Seul un propriétaire de compte peut consulter une clé API.

Pour consulter votre clé API

  • Dans la section Clé API de la page Clé API et Applications Clients, cliquez sur l' icône Visualiser .

Par défaut, votre clé API est masquée.

Applications clients

Avant que les intégrateurs puissent effectuer des requêtes via des API REST ou des fonctions SDK, OneSpan Sign exige que les utilisateurs enregistrent soit une application client, soit fournissent une clé API sécurisée pour authentifier les appels API. OneSpan recommande d'utiliser les applications clients.

Pour enregistrer une application client

Vous pouvez authentifier les appels API REST depuis le système de l'utilisateur en lui fournissant un jeton API sécurisé mais de courte durée (par exemple, 30 minutes) pouvant être utilisé pour l'authentification. Cette fonctionnalité s'appelle Applications Clients. Pour l'activer, vous devez contacter notre équipe de support. Une fois cette fonctionnalité activée, les intégrateurs tiers pourront se connecter à l'API OneSpan Sign en utilisant ces jetons API.

Cette fonctionnalité n'est pas prise en charge pour les connecteurs OneSpan Sign .

Créer une application client

  1. Cliquez sur Admin > Accès API.

  2. Dans la page Paramètres d'authentification, utilisez le panneau de gauche pour sélectionner la clé API et les applications client.

  3. Cliquez sur Ajouter. Une barre latérale Créer une application client apparaît.

  4. Saisissez un nom pour l'application client.

  5. Cliquez sur Créer.

  6. Copiez l' identifiant client et les codes secrets qui apparaissent.

  7. Stockez l' identifiant client et les codes secrets dans un lieu sécurisé.

  8. Cliquez sur terminé.

Le Secret n'apparaîtra plus une fois que vous cliquerez sur Terminé. Pour vos archives. veuillez copier ce Secret dans un lieu sécurisé. L' ID du client et le secret sont tous deux utilisés pour récupérer le jeton API temporaire.

Ensuite, il y a la API_URL. Si vous utilisez un compte bac à sable , la bonne URL est déjà en place. Si vous utilisez un compte Production , vous devriez utiliser l'URL commentée.

Comment créer un package

La ligne suivante est la chaîne JSON qui définit votre package. En général, vous construirez probablement votre chaîne JSON de façon dynamique plutôt qu'avec une chaîne statique géante, comme celle-ci. Cela vise à donner une bonne représentation de la structure du JSON afin de créer correctement votre paquet. Beaucoup de propriétés sont volontairement laissées vides dans la chaîne qui ne sont pas nécessaires à la création afin que vous puissiez 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 cela, vous pouvez définir des éléments comme l'identifiant, l'entreprise, le prénom, le nom de famille, l'email et le nom pour personnaliser vos rôles de signataire. Parmi les autres réglages notables figurent le message par e-mail, 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, vous définirez des éléments comme 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 seraient le type, le sous-type, le rôle, la page et les paramètres de localisation. Celles-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 paquet que vous voudrez noter sont le nom, le type, le statut, emailMessage et l'autoComplétion. Dans cet exemple, le statut est défini sur ENVOYÉ. Cela enverra le colis et en informera les signataires. Si vous souhaitez enregistrer ce paquet en draft, mettez la valeur DRAFT, à la place.

 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 fera apparaître l'objet StringContent que vous passerez comme payload dans votre commande API REST.

StringContent jsonContent = new StringContent(jsonString, Encoding.UTF8, "application/json");

Les lignes suivantes se liront dans votre fichier PDF et utiliseront cela pour créer votre objet ByteArrayContent pour votre appel REST. Assurez-vous de changer le lieu de remplacement sur 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 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 consiste à créer votre formulaire multiparties et à ajouter les objets de contenu créés ci-dessus pour les passer 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 créerez le HttpClient que vous utiliserez pour effectuer votre requête POST et définirez l'en-tête approprié pour l'autorisation et les valeurs d'acceptation.

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, et en créant votre dossier documentaire. La ligne de débogage affichera le résultat sur 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 est correct avec votre appel REST, vous devriez recevoir un numéro de colis en réponse, comme celui-ci :

Si vous vous connectez à votre compte OneSpan Sign, vous pouvez voir que le package a été créé comme défini dans votre demande :

Table des charges utiles de requêtes

Propriété

Type

Modifiable

Obligatoire

Faire défaut

Valeurs d'échantillonnage

Référence

Rôles

Signer Management

id

corde

Oui

Non

n/a

Signataire1

nom

corde

Oui

Non

n/a

Signataire1

emailMessage

tableau

Oui

Non

n/a

Vérifier la référence

Email Message

réaffecter

booléen

Oui

Non

0

vrai/faux

Change Signer

Annexe Exigences

tableau

Oui

Non

n/a

Vérifier la référence

Attachment Requirements

index

corde

Oui

Non

0

0/1/2/3

Signer Workflow

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

Nom 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

Groups

Langue

corde

Oui

Non

n/a

en/fr/es/…

Configure Package Language

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

Deliver Signed Documents By Email

KnowledgeBasedAuthentication

tableau

Oui

Non

n/a

Vérifier la référence

Signer Authentication

Auth

tableau

Oui

Non

n/a

Vérifier la référence

Signer Authentication

documents

Document Management

description

corde

Oui

Non

n/a

Description du document de test1

id

corde

Oui

Non

n/a

document1

données

tableau

Oui

Non

n/a

Vérifier la référence

Document Attributes

Approbations

Signatures

rôle

corde

Oui

Oui

n/a

Signataire1

id

corde

Oui

Non

n/a

Approuvation1

optionnel

booléen

Oui

Non

0

vrai/faux

Optional Signature

enforceCaptureSignature

booléen

Oui

Non

0

vrai/faux

Enforce Capture Signature

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

Document Extraction/ Text Tag/ Position Extraction

Types d'extraction

tableau

Oui

Non

n/a

[« TEXT_TAGS », « ACROFIELDS »]

Document Extraction/ Text Tag

champs

tableau

Oui

Non

n/a

Vérifier la référence

Field Injection

nom

corde

Oui

Non

n/a

document1

Paramètres

tableau

Oui

Non

n/a

Vérifier la référence

Signer Experience Customization

expéditeur

Create a Package on Behalf of Another User

Nom 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É / COMPLÉTÉ / ARCHIVÉ / REFUSÉ / OPTED_OUT / EXPIRÉ

nom

corde

Oui

Non

n/a

Paquet créé à partir d'un modèle via l'API REST

type

corde

Oui

Non

COLIS

PACKAGE / MODÈLE / MISE EN PAGE

description

corde

Oui

Non

n/a

Package créé avec l'API OneSpan Sign REST

Langue

corde

Oui

Non

en

en / fr / es …

Configure Package Language

visibilité

corde

Oui

Non

COMPTE

COMPTE / EXPÉDITEUR

autoComplete

booléen

Oui

Non

1

vrai / faux

données

tableau

Oui

Non

n/a

Vérifier la référence

Package Attribute

due

corde

Oui

Non

zéro

08-26-17

Notariée

booléen

Oui

Non

0

vrai/faux (vérifier la référence, n'utiliser que lors de la notarisation)

eNotary

notaryRoleId

corde

Oui

Non

n/a

Signer1 (vérifier la référence, n'utiliser que lors de la notarisation)

eNotary

emailMessage

corde

Oui

Non

n/a

Ce message doit être transmis à tous les signataires

APEX SDK

Pour télécharger l'exemple complet de code, consultez notre site de partage de code .

Ce guide vous guidera dans le processus de création et d'envoi d'un package de documents (transaction dans la nouvelle interface utilisateur) avec le SDK OneSpan Sign APEX, incluant le téléchargement du SDK APEX et la création d'une classe APEX.

Conditions préalables

Pour réaliser ces procédures, vous aurez besoin des éléments suivants :

  • SDK APEX : Avant de pouvoir utiliser le SDK APEX, vous devrez 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éer et envoyer un colis

Maintenant que vous avez tous les éléments essentiels pour compléter le guide, vous pouvez créer et envoyer un paquet.

Installation et configuration du SDK

Le SDK peut être installé en utilisant le bouton Déployer dans Salesforce .

Configuration de vos paramètres de connexion

Après avoir installé dans votre organisation Sandbox ou Developer , vous devrez configurer les paramètres de connexion en créant une entrée dans Paramètres personnalisés. Assurez-vous d'avoir une entrée avec le nom d'API OneSpan Sign Connection Settings dans l'organisation et qu'elle comporte les champs suivants :

  • Endpoint__c

  • API_Key__c

Une fois que vous avez le Réglage Personnalisé en place, vous devrez vous assurer d'avoir un enregistrement avec un nom comme Main. Si vous n'avez pas cet enregistrement dans les Paramètres personnalisés, vous pouvez l'ajouter.

Pour ajouter un paramètre personnalisé

  1. Naviguez vers la page Détails du Réglage Personnalisé

  2. Cliquez sur Gérer.

  3. Cliquez sur Nouveau et saisissez ce qui suit :

    • Nom : Main

    • Clé API : Votre clé API

    • Terminaison : Entrez votre point d'accès d'instance avec /api ajouté à la fin. Par exemple, https://sandbox.esignlive.com/api

  4. Cliquez sur Enregistrer.

Ajout d'un point de terminaison de site distant

Pour que les appels de Salesforce soient traités, vous devrez ajouter le point de terminaison du site distant. C'est le même point de terminaison utilisé lors de la création d'un paramètre personnalisé, mais sans l' ajout de /api à la fin. Cela devra être ajouté aux paramètres du site distant de l'organisation Salesforce à partir de laquelle vous souhaitez utiliser le SDK. Une fois le site distant ajouté, 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, en utilisant la clé API OneSpan Sign et l' URL API appropriée que vous avez définie dans Installing and Configuring the SDK.

OneSpanSDK sdk = new OneSpanSDK();

Le bloc de code suivant est celui où vous créez le package document. Dans ce bloc, vous donnez un nom à votre colis.

        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 paquet. C'est à cette personne à qui vous enverrez le colis pour qu'il soit signé. Dans ce bloc, vous remplacerez l'adresse e-mail et le nom par vos informations de 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 PDF aux ressources statiques de votre compte développeur Salesforce et l'avons lu sous forme de blob.

Maintenant que votre colis est prêt, 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 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 appuie sur Exécuter.

Vous pouvez voir votre ID de paquet 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 colis a été créé et attend la signature.