This sample guides you through the configuration of the workstep. Generally the following steps are necessary to test the workstep configuration.
- Upload a file
- Create a workstep configuration
- Send an envelope
Upload a file
First, you will need a PDF document which you want to upload.
For REST you need the following URL: https://demo.esignanywhere.net/Api/v4.0/sspfile/uploadtemporary
For SOAP you need the API call UploadTemporarySspFile_v1
For this call you need an authentication. For authentication, you’ll need an api token. You can find this information in Settings / Api Tokens and Apps. Note that all API methods require authentication. For more information about the authorization please have a look the API Reference Guide for SOAP or the Postman Guide for REST
Workstep configuration
The workstep configuration is the core of the envelope. Within the workstep configuration you can define following settings:
- AdditionalClientWorkstepInformation
- Viewer preferences
- Policy
- Sender and receiver information
- Workstep tasks
- Signature template
- Authentication
- PdfForms
Empty workstep
Lets start with an empty workstep first and then fill it step by step with the settings above. In the next collapse you can find an empty workstep (change ##EMAIL## to the email-address and ”NAME## to the name of the recipient you want to send the envelope):
{ "SspFileIds": [ "##FileId##" ], "SendEnvelopeDescription": { "Name": "test", "EmailSubject": "Please sign the enclosed envelope", "EmailBody": "Dear #RecipientFirstName# #RecipientLastName#\n\n#PersonalMessage#\n\nPlease sign the envelope #EnvelopeName#\n\nEnvelope will expire at #ExpirationDate#", "DisplayedEmailSender": "", "EnableReminders": true, "FirstReminderDayAmount": 5, "RecurrentReminderDayAmount": 3, "BeforeExpirationDayAmount": 3, "DaysUntilExpire": 28, "CallbackUrl": "", "StatusUpdateCallbackUrl": "", "Steps": [ { "OrderIndex": 1, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": true, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Signer", "WorkstepConfiguration": { "WorkstepLabel": "test", "SmallTextZoomFactorPercent": 100, "FinishAction": { "ServerActions": [], "ClientActions": [] }, "TransactionCodePushPluginData": [], "TransactionCodeConfigurations": [ { } ], "SignatureConfigurations": [], "ViewerPreferences": { "FinishWorkstepOnOpen": false, "VisibleAreaOptions": { "AllowedDomain": "*", "Enabled": false } }, "Policy": { "WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [] } } }, "DocumentOptions": [ { "DocumentReference": "1", "IsHidden": false } ], "UseDefaultAgreements": true }, { "OrderIndex": 2, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Cc", "DocumentOptions": [], "UseDefaultAgreements": false } ], "AddFormFields": { "Forms": {} }, "OverrideFormFieldValues": { "Forms": {} }, "AttachSignedDocumentsToEnvelopeLog": false } }
If the recipient opens the envelope it should look like the following screenshot:
With this empty workstep configuration we can now add the settings which are mentioned above. First, let us start with the viewer preferences.
Prepare envelope
With the api call: basicURL/envelope/prepare in REST and PrepareSendEnvelopeSteps_v1 in SOAP you can also create a workstep configuration. For this api call you need the FileId and a prepare configuration. You can find a sample configuration in the next section:
{ "SspFileIds": [ "##FileId##" ], "AdHocWorkstepConfiguration": { "WorkstepLabel": "string", "SmallTextZoomFactorPercent": 0, "WorkstepTimeToLiveInMinutes": 0, "FinishAction": { "ClientActions": [ { "RemoveDocumentFromRecentDocumentList": true, "CallClientActionOnlyAfterSuccessfulSync": true, "ClientName": "string", "CloseApp": true, "Action": "string" } ] }, "NoSequenceEnforced": true, "SigTemplate": { "Size": { "Height": 0, "Width": 0 }, "AllowedSignatureTypes": [ ] }, "ParseFormFields": { "MapRequiredFieldsToRequiredTask": true, "FormsGrouping": "PerPage", "ReturnSimplifiedConfig": true, "AddKeepExistingValueFlag": true, "ParseFormField": true }, "AdhocPolicies": { "AllowModificationsAfterSignature": true }, "ViewerPreferences": { "ShowPageNavigationBar": true, "ShowThumbnails": true, "SkipFinishConfirmDialog": true, "SkipDocumentDialog": true, "ShowImagesInFullWidth": true, "DisableGeolocation": true, "ShowDocumentDownloadDialogAfterAutomaticFinish": true, "AttachmentsMaxFileSize": 0, "SkipPreviewImageOnDisposableCertificate": true, "LoadCustomJs": true, "AllowCustomButtons": true, "GuidingBehavior": "GuideOnlyRequiredTasks", "FormFieldsGuidingBehavior": "AllowSubmitAlways", "ShowVersionNumber": true, "EnableWarningPopupOnLeave": true, "WarningPopupDisplayAfter": "FillOrSignField", "FinishWorkstepOnOpen": true, "AutoFinishAfterRequiredTasksDone": true, "GuidingBehaviorOnFinishedTask": "NoMove", "SkipThankYouDialog": true, "NativeAppsUrlScheme": "string", "DocumentViewingMode": "EndlessPaperAllDocuments", "ThumbnailMode": "ShowAllPages", "ShowTopBar": true, "DisplayRejectButtonInTopBar": true, "MultipleSignatureTypesAndBatchSigningSettings": { "IsUseBatchSigningCheckedByDefault": true, "IsRememberSignatureTypeCheckedByDefault": true, "IsRememberBatchSigningDecisionCheckedByDefault": true, "SkipMultipleSignatureTypesAndBatchSigningDialogIfBatchSigningPossible": true }, "VisibleAreaOptions": { "AllowedDomain": "string", "Enabled": true }, "ShowStartGuidingHint": true, "ShowStatusBar": true, "ShowZoomButtons": true, "ShowNoGeolocationWarning": true, "AutoStartGuiding": true, "ShowPageGap": true, "ShowPageNavigationButtons": true, "ShowFinishPossibleHint": true, "SkipRejectConfirmDialog": true }, "SignatureConfigurations": [ { "SpcId": "string", "PdfSignatureProperties": { "PdfAConformant": true, "PAdESPart4Compliant": true, "IncludeSigningCertificateChain": true, "SigningCertificateRevocationInformationIncludeMode": "DoNotInclude", "SignatureTimestampData": { "Uri": "string", "Username": "string", "Password": "string", "SignatureHashAlgorithm": "Sha1", "AuthenticationCertifiateDescriptor": { "Identifier": "string", "Type": "string" } } }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha1", "SigningCertificateDescriptor": { "Identifier": "string", "Type": "Sha1Thumbprint", "Csp": "Default" } }, "CertificateFilter": { "KeyUsages": [ "string" ], "ThumbPrints": [ "string" ], "RootThumbPrints": [ "string" ] } } ], "SigStringParsingConfiguration": { "SigStringsForParsings": [ { "StartPattern": "string", "EndPattern": "string", "ClearSigString": true, "SearchEntireWordOnly": true } ] }, "GeneralPolicies": { "AllowSaveDocument": true, "AllowSaveAuditTrail": true, "AllowRotatingPages": true, "AllowAppendFileToWorkstep": true, "AllowAppendTaskToWorkstep": true, "AllowEmailDocument": true, "AllowPrintDocument": true, "AllowFinishWorkstep": true, "AllowRejectWorkstep": true, "AllowRejectWorkstepDelegation": true, "AllowUndoLastAction": true, "AllowColorizePdfForms": true, "AllowAdhocPdfAttachments": true, "AllowAdhocSignatures": true, "AllowAdhocStampings": true, "AllowAdhocFreeHandAnnotations": true, "AllowAdhocTypewriterAnnotations": true, "AllowAdhocPictureAnnotations": true, "AllowAdhocPdfPageAppending": true, "AllowReloadOfFinishedWorkstep": true }, "FinalizeActions": { "FinalizeActionList": [ ] }, "TransactionCodeConfigurations": [ { "Id": "string", "HashAlgoritmIdentifier": "Sha1", "Texts": [ { "Language": "string", "Value": "string" } ] } ] }, "PrepareSendEnvelopeStepsDescriptor": { "ClearFieldMarkupString": true } }
AdditionalClientWorkstepInformation
This field is used to provide additional information. Note: Must be written in XML form. See the code below:
"AdditionalClientWorkstepInformation": "<test id='test'>Information</test>"
Viewer preferences
Following lines of code show some viewer preferences configurations:
"ViewerPreferences": { "ShowPageNavigationButtons": true, "ShowThumbnails": true, "SkipFinishConfirmDialog": true, "SkipDocumentDialog": true, "ShowImagesInFullWidth": true, "DisableGeolocation": true, "ShowDocumentDownloadDialogAfterAutomaticFinish": true, "SkipPreviewImageOnDisposableCertificate": true, "LoadCustomJs": true, "AllowCustomButtons": true, "ShowVersionNumber": true, "EnableWarningPopupOnLeave": true, "FinishWorkstepOnOpen": true, "AutoFinishAfterRequiredTasksDone": true, "SkipThankYouDialog": true, "ShowTopBar": true, "DisplayRejectButtonInTopBar": true, "ShowStartGuidingHint": true, "ShowStatusBar": true, "ShowZoomButtons": true, "ShowNoGeolocationWarning": true, "AutoStartGuiding": true, "ShowPageGap": true, "ShowPageNavigationButtons": true, "ShowFinishPossibleHint": true, "SkipRejectConfirmDialog": true, "BatchSigningDisableNextButtonUntilDialogScrolledToBottom": true }
Policy
The following list shows the policy configurations:
Note: With the value “1” you enable the policy and with the value “0” you disable the policy. In the following list all policies are enabled.
"Policy": { "GeneralPolicies": { "AllowSaveDocument": true, "AllowSaveAuditTrail": true, "AllowRotatingPages": true, "AllowAppendFileToWorkstep": true, "AllowAppendTaskToWorkstep": true, "AllowEmailDocument": true, "AllowPrintDocument": true, "AllowFinishWorkstep": true, "AllowRejectWorkstep": true, "AllowRejectWorkstepDelegation": true, "AllowUndoLastAction": true, "AllowColorizePdfForms": true, "AllowAdhocPdfAttachments": true, "AllowAdhocSignatures": true, "AllowAdhocStampings": true, "AllowAdhocFreeHandAnnotations": true, "AllowAdhocTypewriterAnnotations": true, "AllowAdhocPictureAnnotations": true, "AllowAdhocPdfPageAppending": true, "AllowReloadOfFinishedWorkstep": true, } },
All policies disabled | All policies enabled |
As you can see on the right screenshot the recipient of the envelope can now print the document as well as reject the envelope and more.
Client Actions
In this section you can define client actions. For detailed information please have a look at the configuration below.
"ClientActions": [ { "RemoveDocumentFromRecentDocumentList": false, "CallClientActionOnlyAfterSuccessfulSync": true, "ClientName": "SIGNificant SignAnywhere", "CloseApp": false, "Action": "https://www.esignanywhere.net/" } ] },
Sender and receiver information
Sender information:
"SenderInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" } }, },
Receiver information:
"ReceiverInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" } },
Workstep task
Every task you add to the envelope you have to add also in the section Tasks in REST and in the following section if you create the envelope with SOAP: <WorkstepTasks>##TASK##</WorkstepTasks>. Furthermore you have to define the signature in the section signature template (only in SOAP):
Signatures
Note: In the StampImprintConfiguration you can define which data should be displayed after signing. So you could set, for example, that the IP address and the name should not be displayed after signing. Please see the next sample for a configuration in which all data is displayed. This is followed by a configuration in which only the date, the transaction token and the transaction id should be displayed.
This sample was carried out with an SMS-OTP signature. With such a signature type, in addition to the name, IP address etc., the transaction token and telephone number can be displayed or hidden too.
Note: If you want to hide all data just set the following variable false:
"DisplayExtraInformation”: false,
"AllowedSignatureTypes": [ { "TrModType": "TransactionCodeSenderPlugin", "TrValidityInSeconds": 300, "Ly": "simpleTransactionCodeSms", "TrConfId": "otpSignatureSmsText", "IsPhoneNumberRequired": false, "Id": "cee105ae-f407-42f9-993c-6b664055f5fb", "DiscriminatorType": "SigTypeTransactionCode", "Preferred": false, "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": true, "OverrideLegacyStampImprint": true, "DisplayTransactionId":true, "DisplayTransaktionToken":true, "DisplayPhoneNumber":true, "DisplayIp": true, "DisplayName": true, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 } } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_0d123383-e054-81ec-0b17-96c4e7b955b3", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } },
Result (All data shown):
"AllowedSignatureTypes": [ { "TrModType": "TransactionCodeSenderPlugin", "TrValidityInSeconds": 300, "Ly": "simpleTransactionCodeSms", "TrConfId": "otpSignatureSmsText", "IsPhoneNumberRequired": false, "Id": "cee105ae-f407-42f9-993c-6b664055f5fb", "DiscriminatorType": "SigTypeTransactionCode", "Preferred": false, "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": false, "OverrideLegacyStampImprint": false, "DisplayTransactionId":true, "DisplayTransaktionToken":true, "DisplayPhoneNumber":false, "DisplayIp": false, "DisplayName": false, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 } } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_0d123383-e054-81ec-0b17-96c4e7b955b3", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } },
Result (Transaction token, Transaction ID, Signing time):
Click2Sign
This is the simplest signature type, the signer has just to click on the signature field to sing it.
"WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "PositionPage": 1, "Position": { "PositionX": 69.0, "PositionY": 529.92 }, "Size": { "Height": 80.0, "Width": 190.0 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "positioning", "Value": "onPage" }, { "Key": "req", "Value": "1" }, { "Key": "fd", "Value": "" }, { "Key": "fd_dateformat", "Value": "dd-MM-yyyy HH:mm:ss" }, { "Key": "fd_timezone", "Value": "datetimeutc" } ], "AllowedSignatureTypes": [ { "AllowedCapturingMethod": "Click2Sign", "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": true, "DisplayIp": true, "DisplayName": true, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 }, "Id": "d63ec0d5-a2ca-46d9-9c73-7bd8d91aa4ea", "DiscriminatorType": "SigTypeClick2Sign", "Preferred": true } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_94816166-6b59-1cc1-de9b-285633162aef", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } } },
Draw2Sign
This type allows the signer to draw a signature by mouse, finger or pen. Just an image of the signature is created and embedded into the document.
"WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "PositionPage": 1, "Position": { "PositionX": 69.0, "PositionY": 529.92 }, "Size": { "Height": 80.0, "Width": 190.0 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "positioning", "Value": "onPage" }, { "Key": "req", "Value": "1" }, { "Key": "fd", "Value": "" }, { "Key": "fd_dateformat", "Value": "dd-MM-yyyy HH:mm:ss" }, { "Key": "fd_timezone", "Value": "datetimeutc" } ], "AllowedSignatureTypes": [ { "AllowedCapturingMethod": "Draw2Sign", "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": true, "DisplayIp": true, "DisplayName": true, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 }, "Id": "d63ec0d5-a2ca-46d9-9c73-7bd8d91aa4ea", "DiscriminatorType": "SigTypeDraw2Sign", "Preferred": true } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_94816166-6b59-1cc1-de9b-285633162aef", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } } },
Type2Sign
With this type of signature the signer has to type in his/her name to sign the signature field.
"WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "PositionPage": 1, "Position": { "PositionX": 69.0, "PositionY": 529.92 }, "Size": { "Height": 80.0, "Width": 190.0 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "positioning", "Value": "onPage" }, { "Key": "req", "Value": "1" }, { "Key": "fd", "Value": "" }, { "Key": "fd_dateformat", "Value": "dd-MM-yyyy HH:mm:ss" }, { "Key": "fd_timezone", "Value": "datetimeutc" } ], "AllowedSignatureTypes": [ { "AllowedCapturingMethod": "Type2Sign", "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": true, "DisplayIp": true, "DisplayName": true, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 }, "Id": "d63ec0d5-a2ca-46d9-9c73-7bd8d91aa4ea", "DiscriminatorType": "SigTypeType2Sign", "Preferred": true } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_94816166-6b59-1cc1-de9b-285633162aef", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } } }, },
Biometric
"WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "PositionPage": 1, "Position": { "PositionX": 67.0, "PositionY": 521.92 }, "Size": { "Height": 80.0, "Width": 190.0 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "positioning", "Value": "intersectsWithField" }, { "Key": "req", "Value": "1" }, { "Key": "fd", "Value": "" }, { "Key": "fd_dateformat", "Value": "dd-MM-yyyy HH:mm:ss" }, { "Key": "fd_timezone", "Value": "datetimeutc" } ], "AllowedSignatureTypes": [ { "IsBio": false, "AllowSkipBiometricVerification": false, "AllowBiometricStoringOnly": false, "SignedResponseWithoutBioData": false, "Id": "6fa90b47-847f-47b1-b73a-9c3802aa077d", "DiscriminatorType": "SigTypeBiometricSignature", "Preferred": true } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_532f40e1-0583-8285-fc50-c2a76dc2fa44", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } } },
Disposable certificate
{ "SspFileIds": [ "##FILE_ID##" ], "SendEnvelopeDescription": { "Name": "test", "EmailSubject": "Please sign the enclosed envelope", "EmailBody": "Dear #RecipientFirstName# #RecipientLastName#\n\n#PersonalMessage#\n\nPlease sign the envelope #EnvelopeName#\n\nEnvelope will expire at #ExpirationDate#", "DisplayedEmailSender": "", "EnableReminders": true, "FirstReminderDayAmount": 5, "RecurrentReminderDayAmount": 3, "BeforeExpirationDayAmount": 3, "DaysUntilExpire": 28, "CallbackUrl": "", "StatusUpdateCallbackUrl": "", "LockFormFieldsAtEnvelopeFinish": true, "Steps": [ { "OrderIndex": 1, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "AllowAccessFinishedWorkstep": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [], "DisposableCertificateData": { "CountryResidence": "AT", "IdentificationCountry": "AT", "IdentificationType": "PASSPORT", "PhoneMobile": "##PHONENUMBER##", "DocumentType": "PASS", "DocumentIssuedBy": "Namirial", "DocumentIssuedOn": "2020-07-07T00:00:00Z", "DocumentExpiryDate": "2020-07-29T00:00:00Z", "SerialNumber": "1234", "DocumentNumber": "123", "OverrideHolderInCaseOfMismatch": false } } ], "EmailBodyExtra": "", "RecipientType": "Signer", "WorkstepConfiguration": { "WorkstepLabel": "test", "SmallTextZoomFactorPercent": 100, "FinishAction": { "ServerActions": [], "ClientActions": [ { "RemoveDocumentFromRecentDocumentList": false, "CallClientActionOnlyAfterSuccessfulSync": true, "ClientName": "SIGNificant SignAnywhere", "CloseApp": false, "Action": "https://www.esignanywhere.net/" } ] }, "ReceiverInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" }, "HolderInformation": "<recognitionType>PASS</recognitionType><documentIssuedOn>07/07/2020</documentIssuedOn><documentExpiryDate>29/07/2020</documentExpiryDate><documentIssuedBy>Namirial</documentIssuedBy><documentNumber>123</documentNumber><countryResidence>AT</countryResidence><firstName>##NAME##</firstName><lastName>##NAME##</lastName><email>##EMAIL##</email><phoneMobile>##PHONENUMBER##</phoneMobile><identificationType>PASSPORT</identificationType><identificationCountry>AT</identificationCountry><passport>1234</passport>", "TransactionCodePushPluginData": [] }, "SenderInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" } }, "TransactionCodeConfigurations": [ { "Id": "smsAuthTransactionCodeId", "HashAlgorithmIdentifier": "Sha256", "Texts": [ { } ] } ], "SignatureConfigurations": [], "ViewerPreferences": { "FinishWorkstepOnOpen": false, "VisibleAreaOptions": { "AllowedDomain": "*", "Enabled": false } }, "ResourceUris": {}, "AuditingToolsConfiguration": { "WriteAuditTrail": false, "NotificationConfiguration": {} }, "Policy": { "GeneralPolicies": { "AllowSaveDocument": true, "AllowSaveAuditTrail": true, "AllowRotatingPages": false, "AllowEmailDocument": true, "AllowPrintDocument": true, "AllowFinishWorkstep": true, "AllowRejectWorkstep": true, "AllowRejectWorkstepDelegation": false, "AllowUndoLastAction": true, "AllowAdhocPdfAttachments": false, "AllowAdhocSignatures": false, "AllowAdhocStampings": false, "AllowAdhocFreeHandAnnotations": false, "AllowAdhocTypewriterAnnotations": false, "AllowAdhocPictureAnnotations": false, "AllowAdhocPdfPageAppending": false }, "WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "PositionPage": 1, "Position": { "PositionX": 89.0, "PositionY": 575.0 }, "Size": { "Height": 80.0, "Width": 190.0 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "positioning", "Value": "onPage" }, { "Key": "req", "Value": "1" }, { "Key": "fd", "Value": "" }, { "Key": "fd_dateformat", "Value": "dd-MM-yyyy HH:mm:ss" }, { "Key": "fd_timezone", "Value": "datetimeutc" }, { "Key": "spcId", "Value": "padesSigningId" } ], "AllowedSignatureTypes": [ { "TrModType": "RemoteSignatureDisposableCertificate", "TrValidityInSeconds": 300, "Ly": "remoteCertificate", "TrConfIdIssueCertificate": "disposableCertificateEnrolAndSignSmsText", "TrConfId": "remoteCertificateSignSmsText", "IsPhoneNumberRequired": false, "Id": "180c4201-4146-4161-baf8-cb5a607eec62", "DiscriminatorType": "SigTypeTransactionCode", "Preferred": false, "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": true, "DisplayIp": true, "DisplayName": true, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 } } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_b58c192b-47c0-5339-cb18-4fe77c3d1812", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } }, "Navigation": { "HyperLinks": [], "Links": [], "LinkTargets": [] } }, "DocumentOptions": [ { "DocumentReference": "1", "IsHidden": false } ], "UseDefaultAgreements": true }, { "OrderIndex": 2, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Cc", "DocumentOptions": [], "UseDefaultAgreements": false } ], "AddFormFields": { "Forms": {} }, "OverrideFormFieldValues": { "Forms": {} }, "AttachSignedDocumentsToEnvelopeLog": false } }
Authentication
You can add different authentications for the recipient to ensure that only the one who has the code/phone number can open the envelope. Following list shows the different authentications:
- Pin
- SMS
- WindowsLive
In the next two collapses you can find the configuration for the Pin-authentication and for the SMS-authentication:
Pin-authentication
{ "Method": "Pin", "Parameter": "1234" }
SMS-authentication
{ "Method": "Sms", "Parameter": "+0123456789" }
You have to place the authentication in the section “recipient”. You can find a workstep configuration with an authentication in the next section:
"Steps": [ { "OrderIndex": 1, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [ { "Method": "Pin", "Parameter": "1234" } ] } ],
PdfForms
The following list shows you all different form fields which can be placed on the document:
- Textfield
- Radiobutton
- Checkbox
- Listbox
- Combobox
The next tabs you can find the configurations of these form fields. Beginning with the configuration of the section “PdfForms”.
There are two configurations to do:
- PdfForms
- AddFormFields
This applies to all form fields.
Textfield
"Forms": [ { "Id": "TextBox_3daf9a88-bf45-70af-99d0-c077bcb48245", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 77.0, "PositionY": 590.0 }, "Size": { "Height": 20.0, "Width": 124.0 }, "DiscriminatorType": "TextBox" } ], "IsRequired": false, "Id": "f390ebd3-4b9c-4554-ab61-4d1234bad681", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "FormGroup" },
Radiobutton
{ "RadioButtonGroupId": "RadioButton_942fca6a-5e0e-7694-b858-b5ded711ed0b", "Id": "0", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 77.0, "PositionY": 553.0 }, "Size": { "Height": 20.0, "Width": 20.0 }, "DiscriminatorType": "RadioButton" },
Checkbox
{ "IsRequired": false, "RequiredEvalPolicy": "None", "Id": "CheckBox_41371eaf-6e1a-0d9a-58a9-0705fd8d08d1", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 77.0, "PositionY": 520.0 }, "Size": { "Height": 20.0, "Width": 20.0 }, "DiscriminatorType": "CheckBox" },
Listbox
{ "Items": [], "Id": "ListBox_d51c4e55-2497-8ab4-f2c8-6f60ac6a2cfd", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 79.0, "PositionY": 475.0 }, "Size": { "Height": 30.0, "Width": 150.0 }, "DiscriminatorType": "ListBox" },
Listbox (Multiselect)
In the workstep configuration you can also define to select multiple items in the listbox. To define a multiselect of items you have to have at least two items in the listbox and you have to activate multiselect for this listbox. Please see the configurations below for more information:
Here you can find the configuration to enable multiselect for the listbox:
"IsMultiselect": true,
Below you can find a complete configuration with three items in the listbox and the enabled multiselect.
{ "SspFileIds": [ "##FILE-ID##" ], "SendEnvelopeDescription": { "Name": "test", "EmailSubject": "Please sign the enclosed envelope", "EmailBody": "Dear #RecipientFirstName# #RecipientLastName#\n\n#PersonalMessage#\n\nPlease sign the envelope #EnvelopeName#\n\nEnvelope will expire at #ExpirationDate#", "DisplayedEmailSender": "", "EnableReminders": true, "FirstReminderDayAmount": 5, "RecurrentReminderDayAmount": 3, "BeforeExpirationDayAmount": 3, "DaysUntilExpire": 28, "CallbackUrl": "", "StatusUpdateCallbackUrl": "", "LockFormFieldsAtEnvelopeFinish": true, "Steps": [ { "OrderIndex": 1, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "AllowAccessFinishedWorkstep": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Signer", "WorkstepConfiguration": { "WorkstepLabel": "test", "SmallTextZoomFactorPercent": 100, "FinishAction": { "ServerActions": [], "ClientActions": [ { "RemoveDocumentFromRecentDocumentList": false, "CallClientActionOnlyAfterSuccessfulSync": true, "ClientName": "SIGNificant SignAnywhere", "CloseApp": false, "Action": "https://www.esignanywhere.net/" } ] }, "ReceiverInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" }, "TransactionCodePushPluginData": [] }, "SenderInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" } }, "TransactionCodeConfigurations": [ { "Id": "smsAuthTransactionCodeId", "HashAlgorithmIdentifier": "Sha256", "Texts": [ ] } ], "SignatureConfigurations": [], "ViewerPreferences": { "FinishWorkstepOnOpen": false, "VisibleAreaOptions": { "AllowedDomain": "*", "Enabled": false } }, "ResourceUris": {}, "AuditingToolsConfiguration": { "WriteAuditTrail": false, "NotificationConfiguration": {} }, "Policy": { "GeneralPolicies": { "AllowSaveDocument": true, "AllowSaveAuditTrail": true, "AllowRotatingPages": false, "AllowEmailDocument": true, "AllowPrintDocument": true, "AllowFinishWorkstep": true, "AllowRejectWorkstep": true, "AllowRejectWorkstepDelegation": false, "AllowUndoLastAction": true, "AllowAdhocPdfAttachments": false, "AllowAdhocSignatures": false, "AllowAdhocStampings": false, "AllowAdhocFreeHandAnnotations": false, "AllowAdhocTypewriterAnnotations": false, "AllowAdhocPictureAnnotations": false, "AllowAdhocPdfPageAppending": false }, "WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "Forms": [ { "Items": [], "IsRequired": false, "Id": "ListBox_ef1ae2c5-8c83-2aab-b9eb-56624e33bcb8", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 60.0, "PositionY": 655.0 }, "Size": { "Height": 30.0, "Width": 150.0 }, "DiscriminatorType": "ListBox" } ], "IsRequired": false, "Id": "8ab43761-8310-4331-8c47-b3b9c5886146", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "FormGroup" } ] } }, "Navigation": { "HyperLinks": [], "Links": [], "LinkTargets": [] } }, "DocumentOptions": [ { "DocumentReference": "1", "IsHidden": false } ], "UseDefaultAgreements": true }, { "OrderIndex": 2, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Cc", "DocumentOptions": [], "UseDefaultAgreements": false } ], "AddFormFields": { "Forms": { "1": [ { "Items": [ { "ExportValue": "option1", "DisplayValue": "option1", "IsSelected": true }, { "ExportValue": "option2", "DisplayValue": "option2", "IsSelected": true }, { "ExportValue": "option3", "DisplayValue": "option3", "IsSelected": false } ], "TextColor": "", "IsMultiselect": true, "FontSize": 11.0, "FontName": "Times New Roman", "Bold": false, "Italic": false, "TextAlign": "Left", "Name": "ListBox_ef1ae2c5-8c83-2aab-b9eb-56624e33bcb8", "ReadOnly": false, "Required": false, "X": 60.0, "Y": 655.0, "Width": 150.0, "Height": 30.0, "Page": 1, "DiscriminatorType": "AddListBoxFormFieldDescriptor" } ] } }, "OverrideFormFieldValues": { "Forms": {} }, "AttachSignedDocumentsToEnvelopeLog": false } }
Combobox
{ "IsRequired": false, "Items": [], "Id": "ComboBox_67a8d39f-3a49-65e0-0d5d-88ac97b387ea", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 79.0, "PositionY": 424.0 }, "Size": { "Height": 30.0, "Width": 150.0 }, "DiscriminatorType": "ComboBox" }
After the configuration of the section “PdfForms” you can add these form fields in the section “addFormFields”.
AddFormFields
Textfield:
{ "Value": "", "MaxLength": -1, "IsMultiline": false, "IsPassword": false, "IsComb": false, "TextColor": "0, 0, 0", "FontSize": 11.0, "FontName": "Times New Roman", "Bold": false, "Italic": false, "TextAlign": "Left", "Name": "TextBox_3daf9a88-bf45-70af-99d0-c077bcb48245", "ReadOnly": false, "Required": false, "X": 77.0, "Y": 590.92, "Width": 124.0, "Height": 20.0, "Page": 1, "DiscriminatorType": "AddTextBoxFormFieldDescriptor" },
Radiobutton:
{ "ExportValue": "1b6c204b-0642-5566-f526-a725e16737a5", "IsChecked": false, "Name": "RadioButton_18d57bcd-6a82-ebde-a2ab-c4557a720bfe", "ReadOnly": false, "Required": false, "X": 77.0, "Y": 550.92, "Width": 20.0, "Height": 20.0, "Page": 1, "DiscriminatorType": "AddRadioButtonFormFieldDescriptor" },
Checkbox:
{ "IsChecked": true, "Name": "CheckBox_e5ba8ea4-8c39-324f-0170-a83dd3fb3aeb", "ReadOnly": false, "Required": false, "X": 79.0, "Y": 516.92, "Width": 20.0, "Height": 20.0, "Page": 1, "DiscriminatorType": "AddCheckBoxFormFieldDescriptor" }
Listbox:
{ "Items": [], "TextColor": "", "FontSize": 11.0, "FontName": "Times New Roman", "Bold": false, "Italic": false, "TextAlign": "Left", "Name": "ListBox_e4076d02-c636-0138-fe54-03d19fe10a7d", "ReadOnly": false, "Required": false, "X": 79.0, "Y": 468.92, "Width": 150.0, "Height": 30.0, "Page": 1, "DiscriminatorType": "AddListBoxFormFieldDescriptor" },
Combobox:
{ "Value": "", "Items": [], "TextColor": "", "FontSize": 11.0, "FontName": "Times New Roman", "Bold": false, "Italic": false, "TextAlign": "Left", "Name": "ComboBox_6936c368-b465-6355-0367-bdfe042c8ec7", "ReadOnly": false, "Required": false, "X": 79.0, "Y": 418.92, "Width": 150.0, "Height": 30.0, "Page": 1, "DiscriminatorType": "AddComboBoxFormFieldDescriptor" },
TypeWriterAnnotation
The following lines of code show you how to write the configuration. First, you have to define the task:
"Tasks": [ { "PageNumber": 1, "TextAlign": "Left", "Position": { "PositionX": 76.0, "PositionY": 664.0 }, "DefaultText": "##ReceiverEmail##", "TextFormat": "", "DefaultTextType": "Email", "FontSettings": { "Id": "f238fef7-87db-400c-91ed-7d58d7d76652", "TextColor": { "A": 255, "R": 0, "G": 0, "B": 0 }, "Name": "Times New Roman", "Size": 11.0, "IsBold": false, "IsItalic": false }, "IsEditablePosition": false, "IsEditableDefaultText": false, "IsEditableFontSettings": false, "IsRequired": false, "Id": "ed6db64d-98fc-497b-be30-ee2a2a2b6f7c", "DocRefNumber": 1, "DiscriminatorType": "TypewriterAnnotation" },
Instead of “Email” in the REST example or “DateTime” in the SOAP example you can place the following placeholders:
Placeholder | Description |
---|---|
ServerTime | Places a text field with the time of the server |
ClientTime | Places a text field with the the time of the client |
SenderFirstName* | Places a text field with the first name of the sender |
SenderLastName* | Places a text field with the last name of the sender |
SenderEmail* | Places a text field with the email of the sender |
ReceiverFirstName* | Places a text field with the first name of the recipient |
ReceiverLastName* | Places a text field with the last name of the recipient |
ReceiverEmail* | Places a text field with the email of the recipient |
For all placeholder with the additional “*” you need either the sender information or the receiver information which are both explained in the section “sender and receiver information”.
Reading Tasks
With the reading task a recipient must confirm reading the document to have the evidence that he/she was reading it.
Generally there are 3 basic ways concerning the range of the reading task:
- Reading task for one page
- Reading task for all pages
- Reading task for a section
Reading task for one page
Note: The reading task must be the first task and it must be required!)
Add the following lines of code within the workstep configuration:
"Tasks": [ { "PositionPage": 1, "AllPages": false, "AllDocuments": false, "IsRequired": true, "Id": "847a3d4a-da2c-46f4-8c8c-a9edaa06c29b", "DisplayName": "your text for this task", "DocRefNumber": 1, "DiscriminatorType": "ReadingTask" }, { "PositionPage": 1, "Position": { "PositionX": 80.22857, "PositionY": 158.8629 }, "Size": { "Height": 68.57143, "Width": 171.4286 }, "AllowedSignatureTypes": [], "UseTimestamp": false, "IsRequired": true, "Id": "93cce567-ae5c-4e98-ac99-9f56ac034250", "DisplayName": "SignField 1", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ]
After adding the reading task within the workstep configuration you can send the document. The result should look like the following:
As you can see, just the first page needs a reading confirmation.
Reading task for all pages
The following lines of code shows you the reading task configuration for all pages:
"Tasks": [ { "PositionPage": 1, "AllPages": false, "AllDocuments": true, "Position": { "PositionX": 50.0, "PositionY": 100.0 }, "Size": { "Height": 40.0, "Width": 400.0 }, "IsRequired": true, "Id": "847a3d4a-da2c-46f4-8c8c-a9edaa06c29b", "DisplayName": "your text for this task", "DocRefNumber": 1, "DiscriminatorType": "ReadingTask" }, { "PositionPage": 1, "Position": { "PositionX": 80.22857, "PositionY": 158.8629 }, "Size": { "Height": 68.57143, "Width": 171.4286 }, "AllowedSignatureTypes": [], "UseTimestamp": false, "IsRequired": true, "Id": "93cce567-ae5c-4e98-ac99-9f56ac034250", "DisplayName": "SignField 1", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ]
The result should look like the following screenshot:
Reading task for a section
The following lines of code shows you how to configure the reading task for a section:
"Tasks": [ { "PositionPage": 1, "AllPages": false, "AllDocuments": false, "Position": { "PositionX": 50.0, "PositionY": 100.0 }, "Size": { "Height": 40.0, "Width": 400.0 }, "IsRequired": true, "Id": "847a3d4a-da2c-46f4-8c8c-a9edaa06c29b", "DisplayName": "your text for this task", "DocRefNumber": 1, "DiscriminatorType": "ReadingTask" }, { "PositionPage": 1, "Position": { "PositionX": 80.22857, "PositionY": 158.8629 }, "Size": { "Height": 68.57143, "Width": 171.4286 }, "AllowedSignatureTypes": [], "UseTimestamp": false, "IsRequired": true, "Id": "93cce567-ae5c-4e98-ac99-9f56ac034250", "DisplayName": "SignField 1", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ]
In the next section you can find a complete workstep configuration with one signature field, one recipient and a reading confirmation for a section:
{ "SspFileIds": [ "##FILEID##" ], "SendEnvelopeDescription": { "Name": "eSignAnyWhere Tutorial", "EmailSubject": "Document of eSignAnyWhere Tutorial", "EmailBody": "Dear #RecipientFirstName#! Please sign this tutorial document.", "DisplayedEmailSender": "", "EnableReminders": true, "FirstReminderDayAmount": 1, "RecurrentReminderDayAmount": 1, "BeforeExpirationDayAmount": 1, "DaysUntilExpire": 2, "CallbackUrl": "", "StatusUpdateCallbackUrl": "", "LockFormFieldsAtEnvelopeFinish": true, "Steps": [ { "OrderIndex": 1, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "##NAME##", "LastName": "##NAME##", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "AllowAccessFinishedWorkstep": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Signer", "WorkstepConfiguration": { "WorkstepLabel": "", "SmallTextZoomFactorPercent": 100, "FinishAction": { "ServerActions": [], "ClientActions": [] }, "ReceiverInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" }, "TransactionCodePushPluginData": [] }, "SenderInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" } }, "TransactionCodeConfigurations": [ { } ], "SignatureConfigurations": [], "ViewerPreferences": {}, "Policy": { "GeneralPolicies": { "AllowSaveDocument": true, "AllowSaveAuditTrail": true, "AllowRotatingPages": true, "AllowFinishWorkstep": true, "AllowUndoLastAction": true }, "WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "SequenceOnlyRequiredTasks", "PositionUnits": "PdfUnits", "ReferenceCorner": "Upper_Left", "Tasks": [ { "PositionPage": 1, "AllPages": false, "AllDocuments": false, "Position": { "PositionX": 50.0, "PositionY": 100.0 }, "Size": { "Height": 40.0, "Width": 400.0 }, "IsRequired": true, "Id": "847a3d4a-da2c-46f4-8c8c-a9edaa06c29b", "DisplayName": "your text for this task", "DocRefNumber": 1, "DiscriminatorType": "ReadingTask" }, { "PositionPage": 1, "Position": { "PositionX": 80.22857, "PositionY": 158.8629 }, "Size": { "Height": 68.57143, "Width": 171.4286 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "completed", "Value": "0" }, { "Key": "sigType", "Value": "Picture" }, { "Key": "positioning", "Value": "onPage" }, { "Key": "allowedCapturingMethods", "Value": "Click2Sign" } ], "AllowedSignatureTypes": [], "UseTimestamp": false, "IsRequired": true, "Id": "93cce567-ae5c-4e98-ac99-9f56ac034250", "DisplayName": "SignField 1", "DocRefNumber": 1, "DiscriminatorType": "Signature" } ] } } }, "DocumentOptions": [ { "DocumentReference": "1", "IsHidden": false } ], "UseDefaultAgreements": true }, { "OrderIndex": 2, "Recipients": [ { "Email": "##EMAIL##", "FirstName": "Charly", "LastName": "Randomname", "LanguageCode": "en", "EmailBodyExtra": "", "DisableEmail": false, "AddAndroidAppLink": false, "AddIosAppLink": false, "AddWindowsAppLink": false, "AllowDelegation": false, "AllowAccessFinishedWorkstep": false, "SkipExternalDataValidation": false, "AuthenticationMethods": [] } ], "EmailBodyExtra": "", "RecipientType": "Cc", "DocumentOptions": [ { "DocumentReference": "1", "IsHidden": false } ], "UseDefaultAgreements": true } ], "AddFormFields": { "Forms": {} }, "OverrideFormFieldValues": { "Forms": {} }, "AttachSignedDocumentsToEnvelopeLog": false } }
Sending envelope
After you have added all form fields and signatures you can send the envelope to recipients. Therefore, add the file Id and the workstep configuration to the REST call basicURL/envelope/send or in SOAP to the API call SendEnvelope_v1 and send the envelope to the recipients.
Get the envelope
After sending the envelope you can call the api call (basicURL/envelope{envelopeId}) in REST and GetEnvelopeById_v1 in SOAP.
For this api call you just need the envelopeId. After finishing the api call you get all information about the envelope. The next section shows you a sample response.
{ "Status": "InProgress", "Email": "", "LogDocumentId": "", "FinishedDocuments": [], "Steps": [ { "Id": "b3df7533-c3d4-4041-a9a8-16039025dc02", "FirstName": "##NAME##", "LastName": "##NAME##", "OrderIndex": 1, "Email": "##EMAIL##", "LanguageCode": "en", "Status": "NotSigned", "StatusReason": "", "RecipientType": "Signer", "WorkstepRedirectionUrl": "https://demo.xyzmo.com/workstepredirector/sign?identifier=##RedirectionURL##", "AllowAccessFinishedWorkstep": false, "Authentication": [ { "Method": "Pin", "Parameter": "1234", "Filters": [] } ], "IsParallel": false, "WorkstepConfiguration": { "WorkstepLabel": "test", "SmallTextZoomFactorPercent": 100, "FinishAction": { "ServerActions": [ { "CallSynchronous": false, "Action": "https://demo.xyzmo.com/workstepredirector/setfinishaction?wid=##WorkstepId##" } ], "ClientActions": [ { "RemoveDocumentFromRecentDocumentList": false, "CallClientActionOnlyAfterSuccessfulSync": true, "ClientName": "SIGNificant SignAnywhere", "CloseApp": false, "Action": "https://www.esignanywhere.net/" } ] }, "ReceiverInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" }, "TransactionCodePushPluginData": [] }, "SenderInformation": { "UserInformation": { "FirstName": "##NAME##", "LastName": "##NAME##", "EMail": "##EMAIL##" } }, "TransactionCodeConfigurations": [ { "Id": "otpSignatureSmsText", "HashAlgorithmIdentifier": "Sha256", "Texts": [ ] } ], "SignatureConfigurations": [ { "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": false, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "DoNotInclude" }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "timestampSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": false, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "DoNotInclude", "SignatureTimestampData": { "Uri": "https://timestamp.test.namirialtsp.com", "Username": "xyzmo", "Password": "xyzmo", "SignatureHashAlgorithm": "Sha256" } }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "padesSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": true, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "IncludeDss" }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "padesTimestampSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": true, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "IncludeDss", "SignatureTimestampData": { "Uri": "https://timestamp.test.namirialtsp.com", "Username": "xyzmo", "Password": "xyzmo", "SignatureHashAlgorithm": "Sha256" } }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "padesRemoteCertificateSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": true, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "IncludeDss" }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "padesRemoteCertificateTimestampSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": true, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "IncludeDss", "SignatureTimestampData": { "Uri": "https://timestamp.test.namirialtsp.com", "Username": "xyzmo", "Password": "xyzmo", "SignatureHashAlgorithm": "Sha256" } }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "automaticSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": false, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "DoNotInclude" }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "automaticTimestampSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": false, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "DoNotInclude", "SignatureTimestampData": { "Uri": "https://timestamp.test.namirialtsp.com", "Username": "xyzmo", "Password": "xyzmo", "SignatureHashAlgorithm": "Sha256" } }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } }, { "SpcId": "swissComSigningId", "PdfSignatureProperties": { "PdfAConformant": false, "PAdESPart4Compliant": true, "IncludeSigningCertificateChain": false, "SigningCertificateRevocationInformationIncludeMode": "IncludeDss" }, "PdfSignatureCryptographicData": { "SignatureHashAlgorithm": "Sha256", "SigningCertificateDescriptor": { "Identifier": "14527a6bcfa8b4d7d0183fca6b735b1c246d14ae", "Type": "Sha1Thumbprint", "Csp": "Default" } } } ], "ViewerPreferences": { "FinishWorkstepOnOpen": false, "VisibleAreaOptions": { "AllowedDomain": "*", "Enabled": false } }, "ResourceUris": { "SignatureImagesUri": "https://demo.xyzmo.com/Resource/SignatureImages/?link=1NB8ErluKvwtK3g7VVj4PvoPlDStEIYcIkbMequyIb2k2OMxZGqFHgVK2vy8WtBzP" }, "Policy": { "GeneralPolicies": { "AllowSaveDocument": true, "AllowSaveAuditTrail": true, "AllowRotatingPages": false, "AllowAppendFileToWorkstep": false, "AllowAppendTaskToWorkstep": false, "AllowEmailDocument": true, "AllowPrintDocument": true, "AllowFinishWorkstep": true, "AllowRejectWorkstep": true, "AllowRejectWorkstepDelegation": true, "AllowUndoLastAction": true, "AllowColorizePdfForms": false, "AllowAdhocPdfAttachments": false, "AllowAdhocSignatures": false, "AllowAdhocStampings": false, "AllowAdhocFreeHandAnnotations": false, "AllowAdhocTypewriterAnnotations": false, "AllowAdhocPictureAnnotations": false, "AllowAdhocPdfPageAppending": false }, "WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [ { "PositionPage": 1, "Position": { "PositionX": 65.0, "PositionY": 602.0 }, "Size": { "Height": 80.0, "Width": 190.0 }, "AdditionalParameters": [ { "Key": "enabled", "Value": "1" }, { "Key": "positioning", "Value": "onPage" }, { "Key": "req", "Value": "1" }, { "Key": "fd", "Value": "" }, { "Key": "fd_dateformat", "Value": "dd-MM-yyyy HH:mm:ss" }, { "Key": "fd_timezone", "Value": "datetimeutc" } ], "AllowedSignatureTypes": [ { "AllowedCapturingMethod": "Click2Sign", "Id": "5d8de01a-b924-4d87-98c9-cc45909c0b4b", "DiscriminatorType": "SigTypeClick2Sign", "Preferred": false, "StampImprintConfiguration": { "DisplayExtraInformation": true, "DisplayEmail": true, "DisplayIp": true, "DisplayName": true, "DisplaySignatureDate": true, "FontFamily": "Times New Roman", "FontSize": 11.0 } } ], "UseTimestamp": false, "IsRequired": true, "Id": "1#XyzmoDuplicateIdSeperator#Signature_a9cd7f4f-6c7d-ff20-dc3f-dea0a4638bd4", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "Signature" }, { "Forms": [ { "IsScrollAllowed": false, "IsComb": false, "MaxLength": 0, "IsMultiLine": false, "IsPassword": false, "IsFileSelect": false, "IsRequired": false, "Id": "TextBox_4e277dde-23c4-8a81-103a-f84abd798a8a", "PositionPage": 1, "DocRefNumber": 1, "Position": { "PositionX": 71.0, "PositionY": 558.0 }, "Size": { "Height": 20.0, "Width": 126.0 }, "IsHidden": false, "ExportValue": "", "Description": "", "KeepExistingValue": true, "DiscriminatorType": "TextBox" } ], "IsRequired": false, "Id": "73df5772-d204-40ca-908e-34d43891bc01", "DisplayName": "", "DocRefNumber": 1, "DiscriminatorType": "FormGroup" } ] } }, "Navigation": { "HyperLinks": [], "Links": [], "LinkTargets": [] } } }, { "Id": "68b7605b-8403-40ee-896e-e896be5459fc", "FirstName": "##NAME##", "LastName": "##NAME##", "OrderIndex": 2, "Email": "##EMAIL##", "LanguageCode": "en", "Status": "NotSigned", "StatusReason": "", "RecipientType": "Cc", "WorkstepRedirectionUrl": "", "AllowAccessFinishedWorkstep": false, "IsParallel": false, "WorkstepConfiguration": { "SmallTextZoomFactorPercent": 100, "ViewerPreferences": {}, "Policy": { "GeneralPolicies": { "AllowRotatingPages": true, "AllowFinishWorkstep": true, "AllowUndoLastAction": true }, "WorkstepTasks": { "PictureAnnotationMinResolution": 0, "PictureAnnotationMaxResolution": 0, "PictureAnnotationColorDepth": "Color16M", "SequenceMode": "NoSequenceEnforced", "PositionUnits": "PdfUnits", "ReferenceCorner": "Lower_Left", "Tasks": [] } } } } ] } ], "Documents": [ { "PageSizesInPoints": [ { "Height": 792.0, "Width": 612.0 } ], "DocRefNumber": 1, "FileName": "Test.pdf", "FormFields": [ { "Name": "TextBox_4e277dde-23c4-8a81-103a-f84abd798a8a", "Values": [ { "Key": "", "Value": "" } ] } ] } ], "Id": "b94e4d2a-9901-48d5-8896-effd2cc17a96", "Bulk": "", "BasicOptions": { "Name": "test", "EmailSubject": "Please sign the enclosed envelope", "EmailBody": "Dear #RecipientFirstName# #RecipientLastName#\n\n#PersonalMessage#\n\nPlease sign the envelope #EnvelopeName#\n\nEnvelope will expire at #ExpirationDate#", "EnableReminders": true, "FirstReminderDayAmount": 5, "RecurrentReminderDayAmount": 3, "BeforeExpirationDayAmount": 3 } }
Download the document(s)
With the following URI you can download the documents: basicURL/envelope/downloadCompletedDocument/{documentId} in REST and DownloadCompletedDocument_v1 in SOAP.
You can only download the documents if the envelope is finished (Status: “Completed”). In the section before (getenvelope) you can see that the envelope has the Status: “In Progress”. After finishing the envelope you should see that the status changed to completed.
You can download the following documents:
- LogDocument
- LogXmlDocument
- FlowDocument
Note: If you send an envelope with a disposable signature you can also see the disclaimerDocument available for download.