You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

This case leads you through the process of the API call to prepare an envelope. Generally this call helps you to prepare all steps and the whole configuration for an envelope you want to send later.


The Story

A car seller is in the final step of selling the car to a customer. He/She creates the contract and adds all the features, that the car will later include, in the document. In order not to overwrite the signature field with text, the seller has created a dynamic field so that the signature field is dynamically placed on the page.



Use Case Description

In a car sales, it is likely that with additional features, which should be installed in the new car, the signature field in the contract is not always on the same position (page 1) but on the second or third. Therefore, it makes sense to place dynamic placeholders. Exactly this case will be described here. The next figure illustrates this case:

Integration

Advanced Document Tags

Advanced document tags are a solution to define interactive form elements in a PDF document by inserting text placeholders. Such advanced document tags are considered in following use cases:

  • Creating a draft or template from eSignAnyWhere WebUI
  • Creating a draft or sending an envelope via eSignAnyWhere API by using the prepare-method for document parsing.


Alternatives

eSignAnyWhere is offering following alternatives to insert interactive elements:

  • Prepare a PDF document with Acrobat Form Fields (simple field types such as text input can be defined e.g. with OpenOffice; signature fields can be inserted with Adobe Acrobat Pro.
    Form Fields can't be assigned automatically to the proper signer. Less options for configuration.
  • Use the simpler sig-string notation as plain-text within the PDF document
    Sig strings are supported also by other products of Namirial (xyzmo Client, etc). Fields created via sig strings can't be assigned automatically to the proper signer. Less options for configuration. Benefit is the freely defineable start (and optional end) marker string.
  • Define the fields entirely in the envelope JSON or XML structures when creating a draft or sending an envelope via API


General Syntax

Recommendations for correct parsing

Note that the Advanced Document Tag must be placed in a single-line within your document. No word wrap (also no automatic word wrap) must happen within your document tag. To ensure that parsing the document tag works fine, use a small, but not too small, font. We recommend to use a sans-serif font (e.g. Arial) in the advanced document tag and use a font size of 4pt to avoid issues with unexpected spaces being inserted between characters during parsing.


The advanced document tag starts with two opening square brackets ("[["), followed by the field definition parameters which are separated by the colon (":"). The advanced document tag ends with two closing square brackets ("]]").

The first field definition parameter is the field name (optionally prefixed by a quantifier ("!" or "*").

The 2nd field definition parameter is the assignment.

Then, attributed element definitions follow.

The first element definition is the field type, attributed in brackets ("(" and ")") with parameters of the field.

Additional element definitions such as labels, default text, font setting, sizing or offset may follow.


Parameters

!required (optional)
*read only (optional)
fieldnameString (required)
:signer1Assigned to signer; “signer” or “signer1”, “signer2”, … (required)
:objecttypeType, e.g. signature, combobox, … (mandatory)
:propertyadditional parameters (allow using of some short notation (e.g. l,r,c instead left, right, center, …))

Signature Fields


Note: The following signature types are supported: Click2Sign, Draw2Sign, Type2Sign, RemoteSignature, BiometricSignature, LocalCertificateSignature, DisposableCertificate, OtpSignature (as of October 2019, eSAW 3.6).
Sample for Click2Sign and Draw2Sign

[[!sigField1:signer1:signature(sigType="Click2Sign,Draw2Sign",batch=1):label("some label"):size(width=150,height=60)]]
sigType, batch, label, size are optional.


Sample for Automatic Remote Signature
Note: To use an automatic remote signature you must have the role “Automatic Sealing Sender” enabled, otherwise you are not able to proceed.

[[!sig1:signer1:signature(sigType="AutomaticRemoteSignature"):size(height=50):label("some label")]]

Attachments

[[myAttachment:signer:attachment:label("some label"):size(width=10,height=10)]]

label, size are optional.

Textfield

Please note: If a textfield has a default text configured and is set "required" the textfield will be considered as "already filled". This means that it is possible to finish the envelope without explicitely typing data into the textfield.

[[*myText:signer2:text(maxLength=100,password=1,multiline=true):default("default text"):font(name=Arial, color=#FF0000, size=12):alignment(left|right|center):size(width=10,height=10)]]

maxLength, password, default, font, alignment, size, multi-line are optional.



Input Validation

The (optional) input validation definition might be helpful to limit the user input to the expected values. Also check the workstep configuration documentation for accepted formats.

  • Date
    • Requires a date field for signer1
    • [[!someDate:signer1:date(format="dd. MMMM yyyy"):range(from="13. März 2018",to="18. December 2019")]]
    • range is optional and must match with defined format
  • Email
    • optional for email field
    • [[someMail:signer:email()]]
  • Number
    • [[someNumber:signer:number(decimalPlaces=2,decimalSeparator=comma,thousandsSeparator=point,symbol="€",symbolLocation=endWithBlank):range(from="-300,00 €",to="5.000,00 €")]]
    • range, decimalSeparator, thousandsSeparator, symbol, symbolLocation, are optional
    • decimalSeparator: comma, point, apostrophe, none
    • thousandsSeparator: comma, point, apostrophe, blank, none
    • symbolLocation: start, startWithBlank, end, endWithBlank
    • range must match with defined format
  • phone
    • [[somePhone:signer:phone(type=international)]]
    • type: international, internationalLeadingZero, internationalLeadingPlus
  • time
    • [[someTime:signer:time(format="HH:mm"):range(from="12:00",to="18:00")]]
    • range is optional
    • range must match the defined format

Checkbox

A required checked checkbox is for only one signer.

[[!chk1:signer:checkbox:size(width=10,height=10):checked]]

checked, size is optional.

RadioButton

All items of a group have to have the same name. Group of three RadioButtons for one recipient:

[[testRbnGroup:signer:radio(Red):size(width=10,height=10):checked]]
[[testRbnGroup:signer:radio(Green):size(width=10,height=10)]]
[[testRbnGroup:signer:radio(Blue):size(width=10,height=10)]]

checked, size is optional.

DropDown

[[myDrop:signer:dropdown(options="Red,Green,Blue",values="R,G,B",editable=1):default("R"):font(name=Arial, color=#FF0000, size=12):alignment(left|right|center):size(width=10,height=10)]]

values, editable, default, size, font, alignment are optional.

List

[[myList:signer:list(options="Red,Green,Blue",values="R,G,B",multiSelect=1):default("R"):font(name=Arial, color=#FF0000, size=12):alignment(left|right|center):size(width=10,height=10)]]

values, multiSelect, default, size, font, alignment are optional.

Offset

You can define a offset by using

:offset(x=-10.5,y=-50.6)

The offset starts at the lower left position, is using points as units and numbers (double) as input. A positive x value moves to right and a positive y value moves up. Note: this is support eSAW version 3.0+.

Variables

Use to reuse some fragments and allow an easier placement of the text markup into floating text.

Definition:

[[#myFontSettings=:font(name=Arial, color=#FF0000, size=12):alignment(left|right|center)]]

Usage:

[[myList:signer:list(options="Red,Green,Blue",values="R,G,B",multiSelect=1):default("R")$myFontSettings:size(width=10,height=10)]]

In the next section you can find a input validation example for REST. With this configuration only numbers from -300,00 to 5.000,00 are allowed in the Textfield.

 "Range": {
                 "From": "-300,00 €",
                 "To": "5.000,00 €"
          },

you can type in any numbers. If you define the same number for “FROM” and “TO” you can only type in the given number. For example if you define 400,00 for “FROM” and “TO” the recipient can only type in this number into the Text Field.

The following steps (including the optional use of the advanced document tag) are necessary for the API call:

  1. prepare a document with advanced document tags
  2. upload the document
  3. prepare the envelope
  4. send the envelope

Please also see the developer mode for this tutorial here: Visit the developer mode.

Prepare a document with advanced document tags

For this case you can use the following document which includes one text field and one checkbox:

Download the document here.

Upload the document

Make sure you upload a document which contains advanced document tags to see the differences in preparing the envelope.

Preparing the envelope

If you are using the Advanced Tags via API you have to call PrepareSendEnvelopeSteps_v1 to use them.

For this call you need the File Id which you got from the upload file call, an adhoc workstep configuration and the steps descriptor.

The next configurations show you sample workstep configuration.

{
  "SspFileIds": [
    "##FILE-ID##"
  ],
  "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,
      "BatchSigningType": "Basic",
      "BatchSigningDisableNextButtonUntilDialogScrolledToBottom": 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"
            }
          },
          "EnableEutlVerification": true,
          "EnableValidateSigningCertificateName": true,
          "SigningCertificateNameRegex": "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",
        "HashAlgorithmIdentifier": "Sha1",
        "Texts": [
          {
            "Language": "string",
            "Value": "string"
          }
        ]
      }
    ]
  },
  "PrepareSendEnvelopeStepsDescriptor": {
    "ClearFieldMarkupString": true
  }
}
 <AdhocWorkstepConfiguration>
  <!--A label for this workstep-->
  <WorkstepLabel>workstepLabel</WorkstepLabel>
  <!--Defines a image generation correction factor. If for example this document contains very small text, which might not be readable with the standard image resolution of the client, this factor can be used to tell the client to get a higher resolution.-->
  <SmallTextZoomFactorPercent>100</SmallTextZoomFactorPercent>
  <!--Defines the time to live of all the documents created by the workstep. After this time to live is expired, all documents are deleted. '0' sets the time to live to forever.-->
  <WorkstepTimeToLiveInMinutes>10</WorkstepTimeToLiveInMinutes>
  <!--Configure the actions done by the server and the by the clients when the workstep is finished.-->
  <FinishAction>
    <!--Configure the action done by the server when the workstep is finished.-->
    <!--Attribute 'callSynchronous' wether the server should call that action before returning to the client which called FinishWorkstep. Possible values: '1' the server does not return until the action is completed. This may cause long waiting times for the client in case of timeouts or other errors, '0' the server returns to the client and calls the action afterwards. This may cause problems if the client finish action depends on the server finish action to be already completed-->
    <ServerAction callSynchronous="0">http://www.google.at</ServerAction>
    <!--A client action specifies the behavior of a specific client after a workstep is finished.-->
    <!--'clientName': defines which client should implement this behavior. Predefined client names are: 'SIGNificant WSI', 'SIGNificant iPadApp' and 'SIGNificant AndroidApp'. Any additional client name can be defined by the user.-->
    <!--'closeApp': defines if the client should close after finish.-->
    <!--'RemoveDocumentFromRecentDocumentList': if 1, the Document (Workstep) is removed from the document list, when the workstep has been successfully synced with the server.-->
    <!--'CallClientActionOnlyAfterSuccessfulSync': if 1, the clientAction (Uri) is called, when the workstep has been synced with the server. if 0, the clientAction (Uri) is called, when the user pressed finish/reject - independently, if the server was reachable and returned ok.-->
    <ClientAction clientName="WSI" closeApp="0" RemoveDocumentFromRecentDocumentList="0" CallClientActionOnlyAfterSuccessfulSync="1">www.google.at</ClientAction>
  </FinishAction>
  <!--[DEPRECATED]DefaultWidth: The default signature width for parsed signature fields in points. Specify SigTemplate.width instead.-->
  <!--[DEPRECATED]DefaultHeight: The default signature height for parsed signature fields in points. Specify SigTemplate.height instead.-->
  <!--Configure the adhoc workstep creation-->
  <NoSequenceEnforced>0</NoSequenceEnforced>
  <!--A template for signature definitions.-->
  <SigTemplate>
    <!--The elements width in points-->
    <width>50.5</width>
    <!--The elements height in points-->
    <height>100.5</height>
  </SigTemplate>
  <!--Configuration for parsing the form fields. Possible values: '1' parse the form fields, '0' do not parse form fields-->
  <!--Attribute 'mapRequiredFieldsToRequiredTask': set the form filling task required when some of the fields are required. Possible values: '1' required forms lead to required tasks, '0' required fields do not enforce the task to be required-->
  <!--Attribute 'formsGrouping': Specify how the parsed forms should be grouped into tasks. Possible values: 'PerPage' all forms on one page are grouped to one forms group, 'PerDocument' all forms of one document are grouped to one forms group, 'PerEnvelope' all forms of all documents inside the envelope are grouped to one forms group-->
  <!--Attribute 'returnSimplifiedConfig': Possible values: '1' return minified form field information, '0' return full form field information-->
  <!--Attribute 'addKeepExistingValueFlag': Possible values: '1' CreateWorkstep will use the PDF defined form field value, '0' CreateWorkstep will use the XML defined form field value-->
  <ParseFormFields mapRequiredFieldsToRequiredTask="0" formsGrouping="PerPage" returnSimplifiedConfig="0" addKeepExistingValueFlag="0">1</ParseFormFields>
  <!--If the workstep is not generated by hand but automatically generated by the Workstep Controller AdhocPolicies are specified-->
  <AdhocPolicies>
    <!--Configure if any modifications, like adding attachments, freehand annotations are allowed after a signature is applied-->
    <AllowModificationsAfterSignature>1</AllowModificationsAfterSignature>
  </AdhocPolicies>
  <!--Configurate the signatures for this workstep. One default configuration has to be defined. The default configuration is used for flatten signatures, adhoc signatures and signature fields which do not reference a special signature plugin configuration. The default configuration does not contain the attribute 'spcId'. If the attribute 'spcId' is defined the signature plugin configuration does only apply to signature fields referencing the configuration by specifiying <param name="spcId">id</param>.-->
  <signaturePluginConfiguration>
    <!--Configurate the signature properties-->
    <PdfSignatureProperties_V1>
      <!--Should the signatures be pdfA conformant. Note this setting does not convert a document into pdfA, it only keeps it pdfA conformant if it already is. Possible values: '1' sign pdfA conformant - in this case the file size will be bigger than without pdfA, '0' do not sign pdfA conformant.-->
      <PdfAConformant>0</PdfAConformant>
      <!--Defines if the signature should be PAdES part 4 compliant. Possible values: '1' sign the document PAdES part 4 compliant, '0' sign the document with standard pdf signature. Default value: '0'-->
      <PAdESPart4Compliant>0</PAdESPart4Compliant>
      <!--Defines if the certificate chain for the signing certificate should be embedded into the signature. Possible values: '1' include the certificate chain, '0' do not include the certificate chain. Default value: '0'-->
      <IncludeSigningCertificateChain>0</IncludeSigningCertificateChain>
      <!--Defines if and how the revocation information for the signing certificate chain should be embedded. Possible values: 'DoNotInclude' no revocation information is included, 'Include' the revocation information has to be included, if not possible the signature throws an exception, 'TryToInclude' if the revocation information can be fetched, it should be included, if not the signature is done without revocation information. Information about the signatures where the revocation information could not be included is saved into the WorkstepStatus, 'CheckRevocationIncludeOcsp' the revocation information has to be included when it is an OCSP, if checking of the revocation (OCSP or CRL) fails an exception is thrown. Information about the signatures where the revocation information could not be included is saved into the WorkstepStatus-->
      <SigningCertificateRevocationInformationIncludeMode>DoNotInclude</SigningCertificateRevocationInformationIncludeMode>
    </PdfSignatureProperties_V1>
    <!--Configurate the cryptographic data-->
    <PdfSignatureCryptographicData_V1>
      <!--The hash algorithm used for the signatures. Possible values: 'Sha1', 'Sha256', 'Sha512'-->
      <SignatureHashAlgorithm>Sha256</SignatureHashAlgorithm>
      <!--The description of the signing certificate. More than one SigningCertificateDescriptor can be defined by adding this node more than once. If more SigningCertificateDescriptors are present, these configurations are used as backup if the selected SigningCertificateDescriptor is not working. For example if no revocation information can be retrieved although it should be included into the signature.-->
      <SigningCertificateDescriptor>
        <!--The certificates identifier-->
        <Identifier>14527a6bcfa8b4d7d0183fca6b735b1c246d14ae</Identifier>
        <!--The certificate identifier type. Possible values: 'Subject', 'Sha1Thumbprint'-->
        <Type>Sha1Thumbprint</Type>
        <!--The cryptographic service provider to locate the certificate. Possible values: 'default' uses the servers certificate store, 'custom' uses the custom signature action-->
        <Csp>Default</Csp>
      </SigningCertificateDescriptor>
    </PdfSignatureCryptographicData_V1>
  </signaturePluginConfiguration>
  <!--Configure the signature string parsing-->
  <SigStringParsingConfiguration>
    <!--Defines a signature string to parse. Tag can be present more than once-->
    <SigStringsForParsing>
      <!--The start pattern of the signature string if it has a start and end pattern. Otherwise the whole word to parse-->
      <StartPattern>`sig</StartPattern>
      <!--End pattern if needed, otherwise empty-->
      <EndPattern>`</EndPattern>
      <!--Define if the signature strings should be cleared from the document. Possible values: '1' remove the signature strings from the document, '0' do not change the document-->
      <ClearSigString>1</ClearSigString>
      <!--Define if only the entire word should be searched. For example if start pattern is 'signature' only 'signature' but not 'signaturepad' is found. This option does only effect signature string without end patterns. Possible values: '1' search only the entire word, '0' search words containing the pattern as well.-->
      <SearchEntireWordOnly>1</SearchEntireWordOnly>
    </SigStringsForParsing>
  </SigStringParsingConfiguration>
  <!--Defines general policies for this workstep-->
  <GeneralPolicies>
    <!--Is the client allowed to save the workstep document-->
    <AllowSaveDocument>1</AllowSaveDocument>
    <!--Is the client allowed to save the audittrail document-->
    <AllowSaveAuditTrail>0</AllowSaveAuditTrail>
    <!--Is the client allowed to rotate the pages of the document-->
    <AllowRotatingPages>1</AllowRotatingPages>
    <!--Is the client allowed to append a file to the workstep-->
    <AllowAppendFileToWorkstep>1</AllowAppendFileToWorkstep>
    <!--Is the client allowed to add append tasks to the workstep-->
    <AllowAppendTasksToWorkstep>1</AllowAppendTasksToWorkstep>
    <!--Is the client allowed to email the workstep document-->
    <AllowEmailDocument>0</AllowEmailDocument>
    <!--Is the client allowed to print the workstep document-->
    <AllowPrintDocument>0</AllowPrintDocument>
    <!--Is the client allowed to finish the workstep-->
    <AllowFinishWorkstep>1</AllowFinishWorkstep>
    <!--Is the client allowed to reject the workstep-->
    <AllowRejectWorkstep>1</AllowRejectWorkstep>
    <!--Is the client allowed to undo actions-->
    <AllowUndoLastAction>1</AllowUndoLastAction>
    <!--Is the client allowed to colorize pdf forms-->
    <AllowColorizePdfForms>0</AllowColorizePdfForms>
    <!--Is the client allowed to add adhoc attachments-->
    <AllowAdhocPdfAttachments>0</AllowAdhocPdfAttachments>
    <!--Is the client allowed to add signatures which are not defined in the tasks-->
    <AllowAdhocSignatures>1</AllowAdhocSignatures>
    <!--Is the client allowed to add stampings which are not defined in the tasks-->
    <AllowAdhocStampings>1</AllowAdhocStampings>
    <!--Is the client allowed to add adhoc freehand annotations-->
    <AllowAdhocFreeHandAnnotations>1</AllowAdhocFreeHandAnnotations>
    <!--Is the client allowed to add adhoc typewriter annotations-->
    <AllowAdhocTypewriterAnnotations>1</AllowAdhocTypewriterAnnotations>
    <!--Is the client allowed to add adhoc picture annotations-->
    <AllowAdhocPictureAnnotations>0</AllowAdhocPictureAnnotations>
    <!--Is the client allowed to append adhoc documents-->
    <AllowAdhocPdfPageAppending>0</AllowAdhocPdfPageAppending>
  </GeneralPolicies>
</AdhocWorkstepConfiguration>

The next lines of code show you how to configure the steps descriptor:

"PrepareSendEnvelopeStepsDescriptor": {
    "ClearFieldMarkupString": true
  }
  <prepareSendEnvelopeStepsDescriptor>
  <clearFieldMarkupString>1</clearFieldMarkupString>
</prepareSendEnvelopeStepsDescriptor>

For the tag “clearFieldMarkupString” you can choose between the values “true” and “false” in REST and “0” and “1” in SOAP. If you define for example “false” the field markup string will not be cleared. If you choose “true” the field markup string will be cleared.

After successful configuration you get as response a workstep configuration with the form fields at the end. Those form fields will be added to the document. You can find a sample response in the next collapse:

{
    "AdHocWorkstepConfigResult": {
        "WorkstepLabel": "string",
        "SmallTextZoomFactorPercent": 0,
        "FinishAction": {
            "ServerActions": [],
            "ClientActions": [
                {
                    "RemoveDocumentFromRecentDocumentList": true,
                    "CallClientActionOnlyAfterSuccessfulSync": true,
                    "ClientName": "string",
                    "CloseApp": true,
                    "Action": "string"
                }
            ]
        },
        "TransactionCodeConfigurations": [
            {
                "Id": "string",
                "HashAlgorithmIdentifier": "Sha1",
                "Texts": [
                    {
                        "Language": "string",
                        "Value": "string"
                    }
                ]
            },
            {
                "Id": "smsAuthTransactionCodeId",
                "HashAlgorithmIdentifier": "Sha256",
                "Texts": [
                    
                ]
            }
        ],
        "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"
                        }
                    },
                    "EnableEutlVerification": true,
                    "EnableValidateSigningCertificateName": true,
                    "SigningCertificateNameRegex": "string"
                },
                "PdfSignatureCryptographicData": {
                    "SignatureHashAlgorithm": "Sha1",
                    "SigningCertificateDescriptor": {
                        "Identifier": "string",
                        "Type": "Sha1Thumbprint",
                        "Csp": "Default"
                    }
                },
                "CertificateFilter": {
                    "KeyUsages": [
                        "string"
                    ],
                    "ThumbPrints": [
                        "string"
                    ],
                    "RootThumbPrints": [
                        "string"
                    ]
                }
            }
        ],
        "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,
            "ShowPageNavigationButtons": true,
            "ShowFinishPossibleHint": true,
            "SkipRejectConfirmDialog": true,
            "BatchSigningType": "Basic",
            "BatchSigningDisableNextButtonUntilDialogScrolledToBottom": true
        },
        "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
            },
            "WorkstepTasks": {
                "PictureAnnotationMinResolution": 0,
                "PictureAnnotationMaxResolution": 0,
                "PictureAnnotationColorDepth": "Color16M",
                "SequenceMode": "NoSequenceEnforced",
                "PositionUnits": "PdfUnits",
                "ReferenceCorner": "Lower_Left",
                "Tasks": []
            }
        }
    },
    "Steps": [
        {
            "OrderIndex": 1,
            "Recipients": [
                {
                    "Email": "placeholder1@placeholder1.com",
                    "FirstName": "placeholder1",
                    "LastName": "placeholder1",
                    "LanguageCode": "en",
                    "DisableEmail": false,
                    "AddAndroidAppLink": false,
                    "AddIosAppLink": false,
                    "AddWindowsAppLink": false,
                    "AllowDelegation": true,
                    "SkipExternalDataValidation": false,
                    "AuthenticationMethods": []
                }
            ],
            "RecipientType": "Signer",
            "WorkstepConfiguration": {
                "WorkstepLabel": "string",
                "SmallTextZoomFactorPercent": 0,
                "FinishAction": {
                    "ServerActions": [],
                    "ClientActions": [
                        {
                            "RemoveDocumentFromRecentDocumentList": true,
                            "CallClientActionOnlyAfterSuccessfulSync": true,
                            "ClientName": "string",
                            "CloseApp": true,
                            "Action": "string"
                        }
                    ]
                },
                "TransactionCodeConfigurations": [
                    {
                        "Id": "string",
                        "HashAlgorithmIdentifier": "Sha1",
                        "Texts": [
                            {
                                "Language": "string",
                                "Value": "string"
                            }
                        ]
                    },
                    {
                        "Id": "smsAuthTransactionCodeId",
                        "HashAlgorithmIdentifier": "Sha256",
                        "Texts": [
                           
                        ]
                    }
                ],
                "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"
                                }
                            },
                            "EnableEutlVerification": true,
                            "EnableValidateSigningCertificateName": true,
                            "SigningCertificateNameRegex": "string"
                        },
                        "PdfSignatureCryptographicData": {
                            "SignatureHashAlgorithm": "Sha1",
                            "SigningCertificateDescriptor": {
                                "Identifier": "string",
                                "Type": "Sha1Thumbprint",
                                "Csp": "Default"
                            }
                        },
                        "CertificateFilter": {
                            "KeyUsages": [
                                "string"
                            ],
                            "ThumbPrints": [
                                "string"
                            ],
                            "RootThumbPrints": [
                                "string"
                            ]
                        }
                    }
                ],
                "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,
                    "ShowPageNavigationButtons": true,
                    "ShowFinishPossibleHint": true,
                    "SkipRejectConfirmDialog": true,
                    "BatchSigningType": "Basic",
                    "BatchSigningDisableNextButtonUntilDialogScrolledToBottom": true
                },
                "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
                    },
                    "WorkstepTasks": {
                        "PictureAnnotationMinResolution": 0,
                        "PictureAnnotationMaxResolution": 0,
                        "PictureAnnotationColorDepth": "Color16M",
                        "SequenceMode": "NoSequenceEnforced",
                        "PositionUnits": "PdfUnits",
                        "ReferenceCorner": "Lower_Left",
                        "Tasks": [
                            {
                                "Forms": [
                                    {
                                        "Id": "myText1",
                                        "PositionPage": 1,
                                        "DocRefNumber": 1,
                                        "Position": {
                                            "PositionX": 72.0,
                                            "PositionY": 563.0
                                        },
                                        "Size": {
                                            "Height": 65.15,
                                            "Width": 200.0
                                        },
                                        "DiscriminatorType": "TextBox"
                                    },
                                    {
                                        "IsRequired": true,
                                        "RequiredEvalPolicy": "IsChecked",
                                        "Id": "chk1",
                                        "PositionPage": 1,
                                        "DocRefNumber": 1,
                                        "Position": {
                                            "PositionX": 72.0,
                                            "PositionY": 440.0
                                        },
                                        "Size": {
                                            "Height": 25.0,
                                            "Width": 25.0
                                        },
                                        "DiscriminatorType": "CheckBox"
                                    }
                                ],
                                "IsRequired": true,
                                "Id": "c9919432-ccd0-46a1-a715-9568faa2d57a",
                                "DisplayName": "",
                                "DocRefNumber": 1,
                                "DiscriminatorType": "FormGroup"
                            }
                        ]
                    }
                }
            },
            "DocumentOptions": [],
            "UseDefaultAgreements": false
        }
    ],
    "AddFormFields": {
        "Forms": {
            "1": [
                {
                    "Value": "Place for signer1",
                    "MaxLength": 100,
                    "IsMultiline": false,
                    "IsPassword": false,
                    "IsFileSelect": false,
                    "IsScrollAllowed": false,
                    "IsComb": false,
                    "TextColor": "255, 0, 0",
                    "FontSize": 12.0,
                    "FontName": "Arial",
                    "Bold": false,
                    "Italic": false,
                    "TextAlign": "Center",
                    "Name": "myText1",
                    "ReadOnly": false,
                    "Required": true,
                    "X": 72.0,
                    "Y": 563.477001953125,
                    "Width": 200.0,
                    "Height": 65.149999999999991,
                    "Page": 1,
                    "DiscriminatorType": "AddTextBoxFormFieldDescriptor"
                },
                {
                    "IsChecked": true,
                    "ExportValue": "",
                    "Name": "chk1",
                    "ReadOnly": false,
                    "Required": true,
                    "X": 72.0,
                    "Y": 439.802001953125,
                    "Width": 25.0,
                    "Height": 25.0,
                    "Page": 1,
                    "DiscriminatorType": "AddCheckBoxFormFieldDescriptor"
                }
            ]
        }
    }
}
<baseResult>ok</baseResult>
  <okInfo>
    <prepareSendEnvelopeStepsResult>
      <workstepConfiguration skipThirdPartyChecks="0">
        <WorkstepLabel>workstepLabel</WorkstepLabel>
        <SmallTextZoomFactorPercent>100</SmallTextZoomFactorPercent>
        <WorkstepTimeToLiveInMinutes>10</WorkstepTimeToLiveInMinutes>
        <FinishAction>
          <ServerAction callSynchronous="0">http://www.google.at</ServerAction>
          <ClientAction clientName="WSI" closeApp="0" RemoveDocumentFromRecentDocumentList="0" CallClientActionOnlyAfterSuccessfulSync="1">www.google.at</ClientAction>
        </FinishAction>
        <signatureTemplate>
          <version>1.2.0.2</version>
          <positionUnits>PdfUnits</positionUnits>
          <positionReferenceCorner>Lower_Left</positionReferenceCorner>
        </signatureTemplate>
        <pdfForms isEditingAllowed="1" />
        <ViewerPreferences>
          <SendVisibleArea allowedDomain="*">0</SendVisibleArea>
        </ViewerPreferences>
        <Policy version="1.1.0.0">
          <GeneralPolicies>
            <AllowSaveDocument>1</AllowSaveDocument>
            <AllowSaveAuditTrail>0</AllowSaveAuditTrail>
            <AllowRotatingPages>1</AllowRotatingPages>
            <AllowAppendFileToWorkstep>1</AllowAppendFileToWorkstep>
            <AllowAppendTasksToWorkstep>1</AllowAppendTasksToWorkstep>
            <AllowEmailDocument>0</AllowEmailDocument>
            <AllowPrintDocument>0</AllowPrintDocument>
            <AllowFinishWorkstep>1</AllowFinishWorkstep>
            <AllowRejectWorkstep>1</AllowRejectWorkstep>
            <AllowRejectWorkstepDelegation>0</AllowRejectWorkstepDelegation>
            <AllowUndoLastAction>1</AllowUndoLastAction>
            <AllowColorizePdfForms>0</AllowColorizePdfForms>
            <AllowReloadOfFinishedWorkstep>1</AllowReloadOfFinishedWorkstep>
            <AllowAdhocPdfAttachments>0</AllowAdhocPdfAttachments>
            <AllowAdhocSignatures>1</AllowAdhocSignatures>
            <AllowAdhocStampings>1</AllowAdhocStampings>
            <AllowAdhocFreeHandAnnotations>1</AllowAdhocFreeHandAnnotations>
            <AllowAdhocTypewriterAnnotations>1</AllowAdhocTypewriterAnnotations>
            <AllowAdhocPictureAnnotations>0</AllowAdhocPictureAnnotations>
            <AllowAdhocPdfPageAppending>0</AllowAdhocPdfPageAppending>
          </GeneralPolicies>
          <WorkstepTasks SequenceMode="SequenceOnlyRequiredTasks" />
          <AdhocPolicies>
            <AllowModificationsAfterSignature>1</AllowModificationsAfterSignature>
          </AdhocPolicies>
        </Policy>
        <timeCreated>2019-10-14T11:17:00.8971613Z</timeCreated>
        <signaturePluginConfiguration>
    <!--Configurate the signature properties-->
    <PdfSignatureProperties_V1>
      <!--Should the signatures be pdfA conformant. Note this setting does not convert a document into pdfA, it only keeps it pdfA conformant if it already is. Possible values: '1' sign pdfA conformant - in this case the file size will be bigger than without pdfA, '0' do not sign pdfA conformant.-->
      <PdfAConformant>0</PdfAConformant>
      <!--Defines if the signature should be PAdES part 4 compliant. Possible values: '1' sign the document PAdES part 4 compliant, '0' sign the document with standard pdf signature. Default value: '0'-->
      <PAdESPart4Compliant>0</PAdESPart4Compliant>
      <!--Defines if the certificate chain for the signing certificate should be embedded into the signature. Possible values: '1' include the certificate chain, '0' do not include the certificate chain. Default value: '0'-->
      <IncludeSigningCertificateChain>0</IncludeSigningCertificateChain>
      <!--Defines if and how the revocation information for the signing certificate chain should be embedded. Possible values: 'DoNotInclude' no revocation information is included, 'Include' the revocation information has to be included, if not possible the signature throws an exception, 'TryToInclude' if the revocation information can be fetched, it should be included, if not the signature is done without revocation information. Information about the signatures where the revocation information could not be included is saved into the WorkstepStatus, 'CheckRevocationIncludeOcsp' the revocation information has to be included when it is an OCSP, if checking of the revocation (OCSP or CRL) fails an exception is thrown. Information about the signatures where the revocation information could not be included is saved into the WorkstepStatus-->
      <SigningCertificateRevocationInformationIncludeMode>DoNotInclude</SigningCertificateRevocationInformationIncludeMode>
    </PdfSignatureProperties_V1>
    <!--Configurate the cryptographic data-->
    <PdfSignatureCryptographicData_V1>
      <!--The hash algorithm used for the signatures. Possible values: 'Sha1', 'Sha256', 'Sha512'-->
      <SignatureHashAlgorithm>Sha256</SignatureHashAlgorithm>
      <!--The description of the signing certificate. More than one SigningCertificateDescriptor can be defined by adding this node more than once. If more SigningCertificateDescriptors are present, these configurations are used as backup if the selected SigningCertificateDescriptor is not working. For example if no revocation information can be retrieved although it should be included into the signature.-->
      <SigningCertificateDescriptor>
        <!--The certificates identifier-->
        <Identifier>14527a6bcfa8b4d7d0183fca6b735b1c246d14ae</Identifier>
        <!--The certificate identifier type. Possible values: 'Subject', 'Sha1Thumbprint'-->
        <Type>Sha1Thumbprint</Type>
        <!--The cryptographic service provider to locate the certificate. Possible values: 'default' uses the servers certificate store, 'custom' uses the custom signature action-->
        <Csp>Default</Csp>
      </SigningCertificateDescriptor>
    </PdfSignatureCryptographicData_V1>
  </signaturePluginConfiguration>
        <TransactionCodeConfigurations>
          <TransactionCodeConfiguration trConfId="smsAuthTransactionCodeId">
       
          </TransactionCodeConfiguration>
        </TransactionCodeConfigurations>
      </workstepConfiguration>
      <steps>
        <step>
          <emailBodyExtra></emailBodyExtra>
          <orderIndex>1</orderIndex>
          <recipientType>Signer</recipientType>
          <useDefaultAgreements>false</useDefaultAgreements>
          <workstepConfiguration skipThirdPartyChecks="0">
            <WorkstepLabel>workstepLabel</WorkstepLabel>
            <SmallTextZoomFactorPercent>100</SmallTextZoomFactorPercent>
            <WorkstepTimeToLiveInMinutes>10</WorkstepTimeToLiveInMinutes>
            <FinishAction>
              <ServerAction callSynchronous="0">http://www.google.at</ServerAction>
              <ClientAction clientName="WSI" closeApp="0" RemoveDocumentFromRecentDocumentList="0" CallClientActionOnlyAfterSuccessfulSync="1">www.google.at</ClientAction>
            </FinishAction>
            <ViewerPreferences>
              <SendVisibleArea allowedDomain="*">0</SendVisibleArea>
            </ViewerPreferences>
            <Policy version="1.1.0.0">
              <GeneralPolicies>
                <AllowSaveDocument>1</AllowSaveDocument>
                <AllowSaveAuditTrail>0</AllowSaveAuditTrail>
                <AllowRotatingPages>1</AllowRotatingPages>
                <AllowAppendFileToWorkstep>1</AllowAppendFileToWorkstep>
                <AllowAppendTasksToWorkstep>1</AllowAppendTasksToWorkstep>
                <AllowEmailDocument>0</AllowEmailDocument>
                <AllowPrintDocument>0</AllowPrintDocument>
                <AllowFinishWorkstep>1</AllowFinishWorkstep>
                <AllowRejectWorkstep>1</AllowRejectWorkstep>
                <AllowRejectWorkstepDelegation>0</AllowRejectWorkstepDelegation>
                <AllowUndoLastAction>1</AllowUndoLastAction>
                <AllowColorizePdfForms>0</AllowColorizePdfForms>
                <AllowReloadOfFinishedWorkstep>1</AllowReloadOfFinishedWorkstep>
                <AllowAdhocPdfAttachments>0</AllowAdhocPdfAttachments>
                <AllowAdhocSignatures>1</AllowAdhocSignatures>
                <AllowAdhocStampings>1</AllowAdhocStampings>
                <AllowAdhocFreeHandAnnotations>1</AllowAdhocFreeHandAnnotations>
                <AllowAdhocTypewriterAnnotations>1</AllowAdhocTypewriterAnnotations>
                <AllowAdhocPictureAnnotations>0</AllowAdhocPictureAnnotations>
                <AllowAdhocPdfPageAppending>0</AllowAdhocPdfPageAppending>
              </GeneralPolicies>
              <AdhocPolicies>
                <AllowModificationsAfterSignature>1</AllowModificationsAfterSignature>
              </AdhocPolicies>
              <WorkstepTasks originalSequenceMode="NoSequenceEnforced" SequenceMode="NoSequenceEnforced">
                <Task id="17006562-45c4-4ab2-83f9-2333bada59c2" DocRefNumber="1" enabled="1" completed="0" type="FillFormsGroup" required="1" displayName="" />
              </WorkstepTasks>
            </Policy>
            <timeCreated>2019-10-14T11:17:00.8971613Z</timeCreated>
            <signaturePluginConfiguration>
    <!--Configurate the signature properties-->
    <PdfSignatureProperties_V1>
      <!--Should the signatures be pdfA conformant. Note this setting does not convert a document into pdfA, it only keeps it pdfA conformant if it already is. Possible values: '1' sign pdfA conformant - in this case the file size will be bigger than without pdfA, '0' do not sign pdfA conformant.-->
      <PdfAConformant>0</PdfAConformant>
      <!--Defines if the signature should be PAdES part 4 compliant. Possible values: '1' sign the document PAdES part 4 compliant, '0' sign the document with standard pdf signature. Default value: '0'-->
      <PAdESPart4Compliant>0</PAdESPart4Compliant>
      <!--Defines if the certificate chain for the signing certificate should be embedded into the signature. Possible values: '1' include the certificate chain, '0' do not include the certificate chain. Default value: '0'-->
      <IncludeSigningCertificateChain>0</IncludeSigningCertificateChain>
      <!--Defines if and how the revocation information for the signing certificate chain should be embedded. Possible values: 'DoNotInclude' no revocation information is included, 'Include' the revocation information has to be included, if not possible the signature throws an exception, 'TryToInclude' if the revocation information can be fetched, it should be included, if not the signature is done without revocation information. Information about the signatures where the revocation information could not be included is saved into the WorkstepStatus, 'CheckRevocationIncludeOcsp' the revocation information has to be included when it is an OCSP, if checking of the revocation (OCSP or CRL) fails an exception is thrown. Information about the signatures where the revocation information could not be included is saved into the WorkstepStatus-->
      <SigningCertificateRevocationInformationIncludeMode>DoNotInclude</SigningCertificateRevocationInformationIncludeMode>
    </PdfSignatureProperties_V1>
    <!--Configurate the cryptographic data-->
    <PdfSignatureCryptographicData_V1>
      <!--The hash algorithm used for the signatures. Possible values: 'Sha1', 'Sha256', 'Sha512'-->
      <SignatureHashAlgorithm>Sha256</SignatureHashAlgorithm>
      <!--The description of the signing certificate. More than one SigningCertificateDescriptor can be defined by adding this node more than once. If more SigningCertificateDescriptors are present, these configurations are used as backup if the selected SigningCertificateDescriptor is not working. For example if no revocation information can be retrieved although it should be included into the signature.-->
      <SigningCertificateDescriptor>
        <!--The certificates identifier-->
        <Identifier>14527a6bcfa8b4d7d0183fca6b735b1c246d14ae</Identifier>
        <!--The certificate identifier type. Possible values: 'Subject', 'Sha1Thumbprint'-->
        <Type>Sha1Thumbprint</Type>
        <!--The cryptographic service provider to locate the certificate. Possible values: 'default' uses the servers certificate store, 'custom' uses the custom signature action-->
        <Csp>Default</Csp>
      </SigningCertificateDescriptor>
    </PdfSignatureCryptographicData_V1>
  </signaturePluginConfiguration>
            <TransactionCodeConfigurations>
              <TransactionCodeConfiguration trConfId="smsAuthTransactionCodeId">
             
              </TransactionCodeConfiguration>
            </TransactionCodeConfigurations>
            <pdfForms isEditingAllowed="0">
              <pdfFormsGroup id="17006562-45c4-4ab2-83f9-2333bada59c2">
                <textBox id="myText1">
                  <DocRefNumber>1</DocRefNumber>
                  <isRequired>1</isRequired>
                  <positionPage>1</positionPage>
                  <positionX>72</positionX>
                  <positionY>563</positionY>
                  <width>200</width>
                  <height>65.15</height>
                </textBox>
                <checkBox id="chk1">
                  <requiredEvalPolicy>IsChecked</requiredEvalPolicy>
                  <DocRefNumber>1</DocRefNumber>
                  <isRequired>1</isRequired>
                  <positionPage>1</positionPage>
                  <positionX>72</positionX>
                  <positionY>440</positionY>
                  <width>25</width>
                  <height>25</height>
                </checkBox>
              </pdfFormsGroup>
            </pdfForms>
            <TypewriterAnnotationTaskInfo />
            <attachmentFields />
            <signatureTemplate>
              <version>1.2.0.2</version>
              <positionReferenceCorner>Lower_Left</positionReferenceCorner>
              <positionUnits>PdfUnits</positionUnits>
            </signatureTemplate>
          </workstepConfiguration>
          <recipients>
            <recipient>
              <eMail>placeholder1@placeholder1.com</eMail>
              <emailBodyExtra></emailBodyExtra>
              <firstName>placeholder1</firstName>
              <lastName>placeholder1</lastName>
              <languageCode>en</languageCode>
              <disableEmail>false</disableEmail>
              <skipExternalDataValidation>false</skipExternalDataValidation>
              <addAndroidAppLink>false</addAndroidAppLink>
              <addIosAppLink>false</addIosAppLink>
              <addWindowsAppLink>false</addWindowsAppLink>
              <allowDelegation>true</allowDelegation>
              <authentications />
            </recipient>
          </recipients>
        </step>
      </steps>
      <addFormFields>
        <document docRef="1">
          <textBox name="myText1" readOnly="false" required="true" x="72" y="563.477001953125" width="200" height="65.149999999999991" page="1">
            <fontSettings>
              <textColor>#FF0000</textColor>
              <fontName>Arial</fontName>
              <fontSize>12</fontSize>
              <fontStyleBold>false</fontStyleBold>
              <fontStyleItalic>false</fontStyleItalic>
              <textAlign>Center</textAlign>
            </fontSettings>
            <value>Place for signer1</value>
            <maxLength>100</maxLength>
            <isMultiLine>false</isMultiLine>
            <isPassword>false</isPassword>
            <isFileSelect>false</isFileSelect>
            <isScrollAllowed>false</isScrollAllowed>
            <isComb>false</isComb>
          </textBox>
          <checkBox name="chk1" readOnly="false" required="true" x="72" y="439.802001953125" width="25" height="25" page="1">
            <isChecked>true</isChecked>
          </checkBox>
        </document>
      </addFormFields>
    </prepareSendEnvelopeStepsResult>
  </okInfo>

Sending the envelope

You can now add the workstep configuration which you got from the prepare call and send the document to recipients.

  • No labels