OneSpan Signハウツー:テンプレートの作成

テンプレートを使用すると、送信者は以前のパッケージをブループリントとして使用して、新しいドキュメントパッケージをすばやく作成できます。定期的に署名するために同じドキュメントを送信する場合は、優れたツールです。このブログでは、OneSpan Sign Java SDK、.NET SDK、およびREST APIを使用して、テンプレートを最初から作成する方法と既存のパッケージから作成する方法を紹介します。
UIのテンプレート
まず、UIでテンプレートセクションを見つけます。OneSpan Signアカウントにログインした後、ツールバーの[TEMPLATES]をクリックします。コードを実行すると、保存したテンプレートがここに表示されます。
コード
前に述べたように、OneSpan Sign Java SDK、.NET SDK、およびREST APIを使用してこれを行う方法を示します。先に進んで、該当するセクションに進んでください。すべてのセクションでまったく同じ情報を扱います。この例では、1つのドキュメントと2つの署名者でテンプレートを作成する方法を示します。このブログの完全なサンプルコードは、開発者コミュニティコードシェア( ジャワ 、 。ネット 、残り )。[プロモーションid = "14439"] Java SDK まず、Java SDKから始めます。以下のサンプルコードは、1つのドキュメントと2つの署名者を含むテンプレートを最初から作成します。最初のステップは、OneSpan Signクライアントを作成することです。API_KEYとAPI_URLプレースホルダーを実際の値に置き換えてください。その後、適切なプロパティを使用してドキュメントパッケージをビルドします。パッケージがビルドされたら、TemplateServiceを呼び出してテンプレートを作成します。
パッケージcom.esignlive.example; import com.silanis.esl.sdk.DocumentPackage; import com.silanis.esl.sdk.EslClient; import com.silanis.esl.sdk.PackageId; import static com.silanis.esl.sdk.builder.DocumentBuilder.newDocumentWithName; import static com.silanis.esl.sdk.builder.PackageBuilder.newPackageNamed; import static com.silanis.esl.sdk.builder.SignatureBuilder.signatureFor; import static com.silanis.esl.sdk.builder.SignerBuilder.newSignerWithEmail; パブリッククラステンプレート{ public static final String API_KEY = "your_api_key"; public static final String API_URL = "https://sandbox.e-signlive.com/api"; // https://apps.e-signlive.com/api for PRODUCTIONを使用します public static void main(String [] args){ EslClient eslClient = new EslClient(API_KEY、API_URL); DocumentPackage documentPackage = newPackageNamed( "My template from scratch Java SDK") .withSigner(newSignerPlaceholder(new Placeholder( "PlaceholderId1")))) .withSigner(newSignerPlaceholder(new Placeholder( "PlaceholderId2"))) .withDocument(newDocumentWithName( "My Document") .fromFile( "YOUR_FILE_PATH") .withSignature(signatureFor(new Placeholder( "PlaceholderId1")) .onPage(0) .atPosition(100、140)) .withSignature(signatureFor(new Placeholder( "PlaceholderId2")) .onPage(0) .atPosition(100、205))) .build(); PackageId templateId = eslClient.getTemplateService()。createTemplate(documentPackage); } }
既存のパッケージからテンプレートを作成することもできます。これには、パッケージのpackageIdが必要です。
PackageId packageId = new PackageId( "d9355f04-9bb2-4219-b9fa-734f2650a939"); PackageId templateFromPackage = eslClient.getTemplateService()。createTemplateFromPackage(packageId、"パッケージからの新しいテンプレート");
.NET SDK 次に、.NET SDKについて説明します。以下のサンプルコードは、1つのドキュメントと2つの署名者を含むテンプレートを最初から作成します。最初のステップは、OneSpan Signクライアントを作成することです。API_KEYとAPI_URLプレースホルダーを実際の値に置き換えてください。その後、適切なプロパティを使用してドキュメントパッケージをビルドします。パッケージがビルドされたら、TemplateServiceを呼び出してテンプレートを作成します。
システムの使用; System.IOを使用します。 Silanis.ESL.SDKを使用; Silanis.ESL.SDK.Builderを使用; 名前空間createTemplateFrom { クラスcreateTemplateFrom { プライベート静的文字列apiUrl = "https://sandbox.e-signlive.com/api"; // https://apps.e-signlive.com/api for PRODUCTIONを使用します プライベート静的文字列apiKey = "your_api_key"; public static void Main(string [] args) { EslClient eslClient = new EslClient(apiKey、apiUrl); FileStream fs = File.OpenRead( "YOUR_FILE_PATH"); DocumentPackage documentPackage = PackageBuilder .NewPackageNamed( "マイテンプレートをゼロから作成します。NETSDK") .WithSigner(SignerBuilder.NewSignerPlaceholder(new Placeholder( "PlaceholderId1")))) .WithSigner(SignerBuilder.NewSignerPlaceholder(new Placeholder( "PlaceholderId2"))) .WithDocument(DocumentBuilder.NewDocumentNamed( "マイドキュメント") .FromStream(fs、DocumentType.PDF) .WithSignature(SignatureBuilder .SignatureFor(new Placeholder( "PlaceholderId1")) .OnPage(0) .AtPosition(100、140)) .WithSignature(SignatureBuilder .SignatureFor(new Placeholder( "PlaceholderId2")) .OnPage(0) .AtPosition(100、205))) .Build(); PackageId templateId = eslClient.CreateTemplate(documentPackage); } } }
既存のパッケージからテンプレートを作成することもできます。これを行うには、パッケージのpackageIdが必要です。
PackageId packageId = new PackageId( "d9355f04-9bb2-4219-b9fa-734f2650a939"); PackageId templateFromPackage = eslClient.CreateTemplateFromPackage(packageId、"パッケージからの新しいテンプレート");
REST API 最後に、REST APIを使用してこれを行う方法を示します。以下は、新しいテンプレートを最初から作成するためのPOSTリクエストを作成するC#クラスです。JSONリクエストのペイロードには、新しいテンプレートの作成に不要な多くの空のプロパティが含まれています。それらを含めて、利用可能なオプションのリストと、それらがJSONでどのように解析されるかを示します。
システムの使用; System.Diagnosticsを使用します。 System.IOを使用します。 System.Netを使用します。 System.Net.Httpを使用します。 System.Net.Http.Headersを使用します。 System.Textを使用します。 名前空間createTemplateREST { パブリッククラスcreateTemplateREST { public static void Main(string [] args) { string apiKey = "your_api_key"; string url = "https://sandbox.e-signlive.com/api"; string jsonString = "{\" name \ ":\"マイテンプレートを一から作成REST \ "、\" description \ ":\" \ "、\" roles \ ":[{\" name \ ":\" PlaceholderId1 \ "、\" index \ ":0、\" id \ ":\" PlaceholderId1 \ "、\" locked \ ":false、\" reassign \ ":false}、{\" name \ ":\" PlaceholderId2 \ "、\" index \ ":0、\" id \ ":\" PlaceholderId2 \ "、\" locked \ ":false、\" reassign \ ":false}]、\" type \ ":\" TEMPLATE \ "、\" due \ ":null、\" autocomplete \ ":true、\" emailMessage \ ":\" \ "、\" documents \ ":[{\" approvals \ ":[{\" role \ " :\ "PlaceholderId1 \"、\ "signed \":null、\ "accepted \":null、\ "data \":null、\ "fields \":[{\ "page \":0、\ "subtype \ ":\" FULLNAME \ "、\" width \ ":200、\" binding \ ":null、\" extract \ ":false、\" extractAnchor \ ":null、\" left \ ":175、\ "top \":165、\ "validation \":null、\ "height \":50、\ "data \":null、\ "type \":\ "SIGNATURE \"、\ "value \":\ "\"}]、\ "name \":\ "\"}、{\ "role \":\ "PlaceholderId2 \"、\ "signed \":null、\ "accepted \":null、\ "data \ ":null、\"フィールド\ ":[{\"ページ\ ":0、\"サブタイプ\ ":\" FULLNAME \ "、\"幅\ ":200、\"バインディング\ ":null、\ "extract \":false、\ "extractAnchor \":null 、\ "left \":550、\ "top \":165、\ "validation \":null、\ "height \":50、\ "data \":null、\ "type \":\ "SIGNATURE \ "、\" value \ ":\" \ "}]、\" name \ ":\" \ "}]、\" name \ ":\" YOUR_FILE_NAME \ "}]}"; StringContent jsonContent = new StringContent(jsonString、Encoding.UTF8、"application / json"); byte [] fileByteArray = File.ReadAllBytes( "YOUR_FILE_PATH"); ByteArrayContent content = new ByteArrayContent(fileByteArray); content.Headers.ContentDisposition = new ContentDispositionHeaderValue( "form-data"); content.Headers.ContentDisposition.Name = "\" file \ ""; content.Headers.ContentDisposition.FileName = "\" myDocument.pdf \ ""; content.Headers.ContentType = new MediaTypeHeaderValue( "application / pdf"); MultipartFormDataContent form = new MultipartFormDataContent(); form.Add(content、"\" file \ ""、"\" myDocument.pdf \ ""); form.Add(jsonContent、"\" payload \ ""); HttpClient myClient = new HttpClient(); myClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue( "Basic"、apiKey); myClient.DefaultRequestHeaders.Add( "Accept"、"application / json"); var response = myClient.PostAsync(new Uri(url)+ "/ packages /"、form).Result; Debug.WriteLine(response.Content.ReadAsStringAsync()。Result); } } }
同様に、既存のパッケージから新しいテンプレートを作成できます。クローンを作成するパッケージのpackageIdが必要です。
string jsonString = "{\" name \ ":\" your_cloned_template \ "、\" description \ ":\" \ "、\" emailMessage \ ":\" \ "、\" autocomplete \ ":true、\" settings \ ":{\" ceremony \ ":{\" inPerson \ ":false}}、\" type \ ":\" TEMPLATE \ "、\" sender \ ":{\" lastName \ ":\" Sender_Last_Name \ "、\" firstName \ ":\" Sender_First_Name \ "、\" email \ ":\" first.signer @example .com \ "}、\" visibility \ ":\" ACCOUNT \ "、\" due \ ":null、\" language \ ":\" en \ "}"; StringContent jsonContent = new StringContent(jsonString、Encoding.UTF8、"application / json"); HttpClient myClient = new HttpClient(); myClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue( "Basic"、apiKey); myClient.DefaultRequestHeaders.Add( "Accept"、"application / json"); var response = myClient.PostAsync(new Uri(url + "d9355f04-9bb2-4219-b9fa-734f2650a939 / clone")、jsonContent).Result; Debug.WriteLine(response.Content.ReadAsStringAsync()。Result);
コードを実行する
コードを実行してください。OneSpan Signアカウントで新しく作成したテンプレートを表示できるはずです。
どうぞ。テンプレートを最初から作成し、以前に作成したパッケージから作成しました。
このブログや、OneSpan Signをアプリケーションに統合することに関するその他の質問がある場合は、開発者コミュニティフォーラムにアクセスしてください。 https://developer.onespan.com 。それは私からです。読んでくれてありがとう!この投稿が役に立った場合は、Facebook、Twitter、またはLinkedInで共有してください。
ハリスハイダリージュニア
テクニカルプロダクトエバンジェリスト