Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section

Collection

In this tutorial you will do the first API Call as well as sending envelopes, upload documents and download signed papers. Let us start with creating a Collection so that we can save all request there. Therefore, you must go to the register “new” and select Collection. Then Figure 1 should appear where we define a name for our Collection.


Create a request

After creating a new Collection, we will save our first request into it. Therefore, you select again the register “new” and pick request. Afterwards the Figure 2 should appear where you choose a name for the request and make sure to save it in the Collection we just created.

First API Call (get the version)

Let us start now with the first API call. As the name of our request tells we will first make an easy call to examine the current version.

You can see all requests here:

https://demo.esignanywhere.net/Api

Therefore, you must select the request type to a “Get” request and you must fill in the URL. For a detailed overview see the next Figure.

FigureDescription

Image Modified
  1. Request type
  2. URL
  3. Result of the request

As you may see from the Figure 3 you just have to fill in the URL, select the correct type (in this case it is a “Get” type) and then you just have to click the send button and you will get such a result as shown in the Figure 3.

If an error appears, make sure you have chosen the correct request type and the right URL.

Version Request JSON

not required

Version Response JSON


Code Block
languagejava
themeEclipse
{
    "Success": true,
    "Version": "20.14.0.15478"
}


...

Section

Sending an envelope

The sending request is a bit more complicated than the previous once. First, copy the sending description (Example value) from this link:

https://demo.esignanywhere.net/Api/swagger/ui/index#/Envelope/Envelope_Send

and paste it in the body of the sending request. Then change from “none” to “raw” and change the File ID to the one you get from the upload file request.

The next Figure should give you an overview of all changes you have to do to get a positive result. (in this case the result is the envelope ID)

FigureDescription

Image Modified
  1. FileId from the upload
  2. Must be selected
  3. Must be changed from “Text” to “JSON”
  4. Result is your envelopeId

Sending Request JSON


Code Block
languagejava
themeEclipse
{
  "SspFileIds": [
    "17d23c79-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
  ],
  "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,
          "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": {
          "DelegationUri": "https://demo.xyzmo.com/Resource/Delegate",
          "SignatureImagesUri": "https://demo.xyzmo.com/Resource/SignatureImages/?link=1hBeQ4I7uBrebVrh0aT50/2o1K65bmQqmVUtPrCrdjlOniICiNh9ISsPbKxTK6WYN"
        },
        "AuditingToolsConfiguration": {
          "WriteAuditTrail": false,
          "NotificationConfiguration": {}
        },
        "Policy": {
          "GeneralPolicies": {
            "AllowSaveDocument": true,
            "AllowSaveAuditTrail": true,
            "AllowRotatingPages": false,
            "AllowEmailDocument": true,
            "AllowPrintDocument": true,
            "AllowFinishWorkstep": true,
            "AllowRejectWorkstep": true,
            "AllowRejectWorkstepDelegation": true,
            "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": 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": [
                  {
                    "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
                    },
                    "DiscriminatorType": "TextBox"
                  }
                ],
                "IsRequired": false,
                "Id": "73df5772-d204-40ca-908e-34d43891bc01",
                "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": [
        {
          "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_4e277dde-23c4-8a81-103a-f84abd798a8a",
          "ReadOnly": false,
          "Required": false,
          "X": 71.0,
          "Y": 558.0,
          "Width": 126.0,
          "Height": 20.0,
          "Page": 1,
          "DiscriminatorType": "AddTextBoxFormFieldDescriptor"
        }
      ]
    }
  },
  "OverrideFormFieldValues": {
    "Forms": {}
  },
  "AttachSignedDocumentsToEnvelopeLog": false
}
}

...

Section

In Figure 7 you can see that you just have to do the authorization as usual and you have to attach your envelope ID to the URL. In the result we can see that the status is in progress so the one who got the envelope has not signed yet.

If we do the same request after the recipient has signed the envelope, we will get the result which is shown in Figure 8.


In this case the status says completed so we have now the document ID`s which we need to download the signed document.


Download the signed document

The request to download the signed document is quite easy. You must attach the document ID which we got from the “get the envelope” request to the URL.

The next Figure will give you an overview.

FigureDescription

Image Modified
  1. Save the file

Download Request JSON

not required

Download Response JSON

Should response 200 OK

Attention: You can choose between three document ID`s which you got from the “get the envelope” request.

For the “LogDocumentId” you get an Audit, for the “LogXmlDocumentId” you get an XML and for the “FlowDocumentId” you get the original document with the sign of the recipient.

After the tutorial you should have the same requests which are shown in the next Figure.

How to use variables in Postman

Let us start with the authorization but this time we will use variables, so we do not have to remember the api token for all other requests.

Manage environments

After selecting the configuration button which is shown in Figure 11 another window should appear which is shown in Figure 12. There you must give the environment a name and we have to create the two variables which are necessary for the authorization. Further details in the next Figure:

First give your variable  a name (it does not matter how you name them). Then fill in “initial value” and “current value” your api token. After filling up the environments for the variable, we now can use it in the header of the next request.

Authorization

Figure 13 shows you the same request we have already done in the tutorial above but this time we will use the variables we have just created.

In the first column we have our api token. In the second column we now do not have to fill in our api token, but we must write {{##name_of_the_variable##}}. From now on you can always use the variable instead of continual writing your api token because all the dates are saved in the environments. If you run this request, you should get the status “200 OK”.

Upload a file

Now we will upload a file and save the file ID which we will get from the request in another variable in the environments.

Just these three lines of code are necessary to save the file ID in another variable. First we will parse the response, then we set the file ID with the command (“pm.environment.set(“name_of_the_variable”, response.” name_of_the_response”).

After running this request, the new variable “sspFileId” should be in the environments. See next Figure:

Send an envelope

After saving the file id we can now send the envelope with an integration of the variable. Therefore we just fill in {{ name_of_the_variable_for_the_fileID}} instead of copy paste the file ID. This is shown in the next Figure. In the Figure 17 there is another example of how you save a date from the response. In this case we will save the envelope ID.

Get envelope description

FigureDescription

Image Modified

  1. Use variable at the end of the URI

We now want to save the different document ID`s (LogDocumentId, LogXmlDocumentId, FlowMDocumentId).

Therefore, we must check if the array has a length higher than 0. After that, we must do the same “set” command as in the previous once but now we have to “go” into the array. So we write again response.”name_of_the_array[on which place].”name_of_the_variable”.

FigureDescription

Image Modified
  1. LogDocument
  2. LogXmlDocument
  3. FinishedDocument

After we have saved all documentId we can use them for the download request. You can find the configuration for saving the documentId here: Configuration

Download the file

Therefore, we just have to attach the variable to the URL which is shown in the next Figure.

Overview of all variables

Advantages of using variables in Postman

First, we do not have to remember all dates which we get through all the requests. Furthermore, we can simply change the organization key and the username and wen can play all requests without other changes because the variables auto fill in the new dates in the requests. Moreover we have a better overview of all ID`s so that we can easily match them with the requirements of the requests.

...