OneSpan Sign How To: Erstellen einer Vorlage

Mit Vorlagen kann ein Absender schnell ein neues Dokumentpaket erstellen, indem er ein vorheriges als Blaupause verwendet. Es ist ein großartiges Tool, wenn Sie vorhaben, dieselben Dokumente regelmäßig zur Unterzeichnung zu senden. In diesem Blog werde ich Ihnen zeigen, wie Sie eine Vorlage von Grund auf und aus einem vorhandenen Paket mithilfe des OneSpan Sign Java SDK, des .NET SDK und der REST-API erstellen.
Vorlagen in der Benutzeroberfläche
Zunächst sollten Sie den Abschnitt Vorlagen in Ihrer Benutzeroberfläche suchen. Klicken Sie nach der Anmeldung bei Ihrem OneSpan Sign-Konto in Ihrer Symbolleiste auf VORLAGEN. Nachdem Sie Ihren Code ausgeführt haben, sollten Sie Ihre gespeicherten Vorlagen hier finden.
Der Code
Wie bereits erwähnt, werde ich Ihnen zeigen, wie Sie dies mit dem OneSpan Sign Java SDK, dem .NET SDK und der REST-API tun. Sie können fortfahren und zu dem Abschnitt springen, der für Sie gilt. Ich werde in jedem Abschnitt genau die gleichen Informationen behandeln. In meinem Beispiel werde ich zeigen, wie eine Vorlage mit einem Dokument und zwei Unterzeichnern erstellt wird. Den vollständigen Beispielcode für dieses Blog finden Sie in der Developer Community Code Share ( Java , .NETZ , SICH AUSRUHEN ). [Promotion-ID = "14439"] JAVA SDK Zunächst beginne ich mit dem Java SDK. Mit dem folgenden Beispielcode wird eine Vorlage mit einem Dokument und zwei Unterzeichnern von Grund auf neu erstellt. Der erste Schritt besteht darin, Ihren OneSpan Sign-Client zu erstellen. Stellen Sie sicher, dass die Platzhalter API_KEY und API_URL durch Ihre Werte ersetzt werden. Anschließend erstellen Sie Ihr Dokumentpaket mit den entsprechenden Eigenschaften. Sobald Ihr Paket erstellt ist, rufen Sie Ihren TemplateService auf, um Ihre Vorlage zu erstellen.
Paket com.esignlive.example; import com.silanis.esl.sdk.DocumentPackage; import com.silanis.esl.sdk.EslClient; import com.silanis.esl.sdk.PackageId; statische importieren com.silanis.esl.sdk.builder.DocumentBuilder.newDocumentWithName; statische importieren com.silanis.esl.sdk.builder.PackageBuilder.newPackageNamed; statische importieren com.silanis.esl.sdk.builder.SignatureBuilder.signatureFor; importieren statische com.silanis.esl.sdk.builder.SignerBuilder.newSignerWithEmail; öffentliche Klasse Vorlagen { public static final String API_KEY = "your_api_key"; public static final String API_URL = "https://sandbox.e-signlive.com/api"; // VERWENDEN SIE https://apps.e-signlive.com/api FÜR DIE PRODUKTION public static void main (String [] args) { EslClient eslClient = neuer EslClient (API_KEY, API_URL); DocumentPackage documentPackage = newPackageNamed ("Meine Vorlage von Grund auf Java SDK") .withSigner (newSignerPlaceholder (neuer Platzhalter ("PlaceholderId1"))) .withSigner (newSignerPlaceholder (neuer Platzhalter ("PlaceholderId2"))) .withDocument (newDocumentWithName ("Mein Dokument") .fromFile ("YOUR_FILE_PATH") .withSignature (SignaturFür (neuer Platzhalter ("Platzhalter-ID1")) .onPage (0) .atPosition (100, 140)) .withSignature (SignaturFür (neuer Platzhalter ("PlatzhalterId2")) .onPage (0) .atPosition (100, 205))) .bauen(); PackageId templateId = eslClient.getTemplateService (). CreateTemplate (documentPackage); } }
Sie können auch eine Vorlage aus einem vorhandenen Paket erstellen. Dazu benötigen Sie die packageId Ihres Pakets.
PackageId packageId = neue PackageId ("d9355f04-9bb2-4219-b9fa-734f2650a939"); PackageId templateFromPackage = eslClient.getTemplateService (). CreateTemplateFromPackage (packageId, "Neue Vorlage aus Paket");
.NET SDK Als nächstes werde ich das .NET SDK durchgehen. Mit dem folgenden Beispielcode wird eine Vorlage mit einem Dokument und zwei Unterzeichnern von Grund auf neu erstellt. Der erste Schritt besteht darin, Ihren OneSpan Sign-Client zu erstellen. Stellen Sie sicher, dass die Platzhalter API_KEY und API_URL durch Ihre Werte ersetzt werden. Anschließend erstellen Sie Ihr Dokumentpaket mit den entsprechenden Eigenschaften. Sobald Ihr Paket erstellt ist, rufen Sie Ihren TemplateService auf, um Ihre Vorlage zu erstellen.
using System; using System.IO; mit Silanis.ESL.SDK; using Silanis.ESL.SDK.Builder; Namespace createTemplateFrom { Klasse createTemplateFrom { private static String apiUrl = "https://sandbox.e-signlive.com/api"; // VERWENDEN SIE https://apps.e-signlive.com/api FÜR DIE PRODUKTION private static String apiKey = "your_api_key"; public static void Main (string [] args) { EslClient eslClient = neuer EslClient (apiKey, apiUrl); FileStream fs = File.OpenRead ("YOUR_FILE_PATH"); DocumentPackage documentPackage = PackageBuilder .NewPackageNamed ("Meine Vorlage von Grund auf .NET SDK") .WithSigner (SignerBuilder.NewSignerPlaceholder (neuer Platzhalter ("PlaceholderId1"))) .WithSigner (SignerBuilder.NewSignerPlaceholder (neuer Platzhalter ("PlaceholderId2"))) .WithDocument (DocumentBuilder.NewDocumentNamed ("Mein Dokument") .FromStream (fs, DocumentType.PDF) .WithSignature (SignatureBuilder .SignatureFor (neuer Platzhalter ("PlaceholderId1")) .OnPage (0) .AtPosition (100, 140)) .WithSignature (SignatureBuilder .SignatureFor (neuer Platzhalter ("PlaceholderId2")) .OnPage (0) .AtPosition (100, 205)) .Bauen(); PackageId templateId = eslClient.CreateTemplate (documentPackage); } } }
Sie können auch eine Vorlage aus einem vorhandenen Paket erstellen. Dazu benötigen Sie die packageId Ihres Pakets.
PackageId packageId = neue PackageId ("d9355f04-9bb2-4219-b9fa-734f2650a939"); PackageId templateFromPackage = eslClient.CreateTemplateFromPackage (packageId, "Neue Vorlage aus Paket");
REST-API Abschließend zeige ich Ihnen, wie dies mit der REST-API funktioniert. Unten finden Sie eine C # -Klasse, die eine POST-Anforderung zum Erstellen einer neuen Vorlage von Grund auf neu erstellt. Die JSON-Anforderungsnutzdaten enthalten viele leere Eigenschaften, die zum Erstellen einer neuen Vorlage nicht erforderlich sind. Ich habe sie eingefügt, um Ihnen eine Liste der verfügbaren Optionen und deren Analyse im JSON zu geben.
using System; using System.Diagnostics; using System.IO; using System.Net; using System.Net.Http; using System.Net.Http.Headers; using System.Text; Namespace createTemplateREST { öffentliche Klasse createTemplateREST { public static void Main (string [] args) { string apiKey = "your_api_key"; string url = "https://sandbox.e-signlive.com/api"; Zeichenfolge jsonString = "{" Name ":" Meine Vorlage von Grund auf REST "," Beschreibung ":" "," Rollen ": [{" Name ":" Platzhalter-ID1 " "," Index ": 0," ID ":" Platzhalter-ID1 "," gesperrt ": falsch," Neuzuweisung ": falsch}, {" Name ":" Platzhalter-ID2 " "," index ": 0," id ":" placeholderId2 "," gesperrt ": false," neu zuweisen ": false}]," type ":" TEMPLATE " "," fällig ": null," automatisch vervollständigen ": wahr," emailMessage ":", "Dokumente": [{"Genehmigungen": [{"Rolle" : "PlaceholderId1", "signiert": null, "akzeptiert": null, "Daten": null, "Felder": [{"Seite": 0, "Subtyp" ":" FULLNAME "," width ": 200," binding ": null," extract ": false," extractAnchor ": null," left ": 175," "top": 165, "validation": null, "height": 50, "data": null, "type": "SIGNATURE", "value": "}]," Name ":"} ", {" Rolle ":" Platzhalter-ID2 "," signiert ": null," akzeptiert ": null," Daten ": null," Felder ": [{" Seite ": 0," Subtyp ":" FULLNAME "," Breite ": 200," Bindung ": null," "extract": false, "extractAnchor": null , "left": 550, "top": 165, "validation": null, "height": 50, "data": null, "type": "SIGNATURE" "," Wert ":"}], "Name": "}", "Name": "IHR_DATEINAME"}]} "; StringContent jsonContent = neuer StringContent (jsonString, Encoding.UTF8, "application / json"); byte [] fileByteArray = File.ReadAllBytes ("YOUR_FILE_PATH"); ByteArrayContent content = new ByteArrayContent (fileByteArray); content.Headers.ContentDisposition = new ContentDispositionHeaderValue ("Formulardaten"); content.Headers.ContentDisposition.Name = "\" file \ ""; content.Headers.ContentDisposition.FileName = "" myDocument.pdf ""; content.Headers.ContentType = neuer MediaTypeHeaderValue ("application / pdf"); MultipartFormDataContent form = new MultipartFormDataContent (); form.Add (Inhalt, "" Datei "", "myDocument.pdf"); form.Add (jsonContent, "" payload ""); HttpClient myClient = neuer HttpClient (); myClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue ("Basic", apiKey); myClient.DefaultRequestHeaders.Add ("Accept", "application / json"); var response = myClient.PostAsync (neues Uri (URL) + "/ packages /", Formular) .Result; Debug.WriteLine (response.Content.ReadAsStringAsync (). Result); } } }
Ebenso können Sie eine neue Vorlage aus einem vorhandenen Paket erstellen. Sie benötigen die packageId des Pakets, das Sie klonen möchten.
string jsonString = "{" name ":" your_cloned_template "," description ":" "," emailMessage ":" "," autocomplete ": true," settings " ": {" Zeremonie ": {" inPerson ": false}}," Typ ":" TEMPLATE "," Absender ": {" Nachname ":" Sender_Last_Name " "," firstName ":" Sender_First_Name "," email ":" first.signer " @example .com "}," Sichtbarkeit ":" ACCOUNT "," fällig ": null," Sprache ":" en "}"; StringContent jsonContent = neuer StringContent (jsonString, Encoding.UTF8, "application / json"); HttpClient myClient = neuer HttpClient (); myClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue ("Basic", apiKey); myClient.DefaultRequestHeaders.Add ("Accept", "application / json"); var response = myClient.PostAsync (neuer Uri (URL + "d9355f04-9bb2-4219-b9fa-734f2650a939 / Klon"), jsonContent) .Result; Debug.WriteLine (response.Content.ReadAsStringAsync (). Result);
Ausführen Ihres Codes
Fahren Sie fort und führen Sie Ihren Code aus. Sie sollten Ihre neu erstellte Vorlage in Ihrem OneSpan Sign-Konto sehen können.
Los geht's. Sie haben erfolgreich eine Vorlage von Grund auf neu und aus einem zuvor erstellten Paket erstellt.
Wenn Sie Fragen zu diesem Blog oder zu anderen Themen bezüglich der Integration von OneSpan Sign in Ihre Anwendung haben, besuchen Sie die Entwickler-Community-Foren: https://developer.onespan.com . Das war's von mir. Danke fürs Lesen! Wenn Sie diesen Beitrag hilfreich fanden, teilen Sie ihn bitte auf Facebook, Twitter oder LinkedIn.
Haris Haidary Junior
Evangelist für technische Produkte