You can allow a signer to assign someone else to sign the document instead of the original signer that is defined by the sender. Accordingly, the signer will be asked to enter the email address and full name of the person to sign along with an optional email message to send to the new signer. You will be notified of this change of Signer and will also be CC’d on the email message.

The Code

Below is a sample code on how to build your Signer object in order to allow the signer to assign someone else to sign in their stead during the signing ceremony.

DocumentPackage superDuperPackage = PackageBuilder.newPackageNamed("Change Signer Example")
	  .withSigner(SignerBuilder.newSignerWithEmail("[email protected]")
	            .withFirstName("John")
	            .withLastName("Smith")
	            .canChangeSigner()) //allow signer to be changed
	   .withDocument(DocumentBuilder.newDocumentWithName("First Document")
	            .fromFile("C:/Users/hhaidary/Desktop/PDFs/doc1.pdf")
	            .withSignature(SignatureBuilder.signatureFor("[email protected]")
	                    .onPage(0)
	                    .atPosition(500, 100)))
	   .build();

Running Your Code

Below are screenshots of what your signer(s) can expect if they choose to assign someone else to sign in their stead:

Capture

2

Get the Code

You can allow a signer to assign someone else to sign the document instead of the original signer that is defined by the sender. Accordingly, the signer will be asked to enter the email address and full name of the person to sign along with an optional email message to send to the new signer. You will be notified of this change of Signer and will also be CC’d on the email message.

The Code

Below is a sample code on how to build your Signer object in order to allow the signer to assign someone else to sign in their stead during the signing ceremony.

DocumentPackage superDuperPackage = PackageBuilder.NewPackageNamed("Change Signer Example")
                       .WithSigner(SignerBuilder.NewSignerWithEmail("[email protected]")
                               .WithFirstName("John")
                               .WithLastName("Smith")
                               .CanChangeSigner()) //allow signer to be changed
                       .WithDocument(DocumentBuilder.NewDocumentNamed("First Document")
                               .FromFile("C:/Users/hhaidary/Desktop/PDFs/doc1.pdf")
                               .WithSignature(SignatureBuilder.SignatureFor("[email protected]")
                                       .OnPage(0)
                                       .AtPosition(500, 100)))
                       .Build();

Running Your Code

Below are screenshots of what your signer(s) can expect if they choose to assign someone else to sign in their stead:

Capture

2

Get the Code

You can allow a signer to assign someone else to sign the document instead of the original signer that is defined by the sender. Accordingly, the signer will be asked to enter the email address and full name of the person to sign along with an optional email message to send to the new signer. You will be notified of this change of Signer and will also be CC’d on the email message.

The Code

Below is a sample request on how to build your Signer object in order to allow the signer to assign someone else to sign in their stead during the signing ceremony:

HTTP Request

POST /api/packages/{packageId}/roles

HTTP Headers

Accept: application/json Content-Type: application/json Authorization: Basic api_key

Request Payload

{
  "id": "Signer5",
  "reassign": true,
  "type": "SIGNER",
  "signers": [
    {
      "email": "[email protected]",
      "firstName": "John",
      "lastName": "Smith",
      "id": "Signer5"
    }
  ],
  "name": "Signer5"
}

For a complete description of each field, take a look at the Request Payload section below.

Response Payload

{
    "id": "Signer5",
    "data": null,
    "specialTypes": [],
    "emailMessage": null,
    "attachmentRequirements": [],
    "locked": false,
    "reassign": true,
    "index": 0,
    "signers": [
        {
            "group": null,
            "language": "en",
            "signature": null,
            "id": "Signer5",
            "delivery": {
                "provider": false,
                "email": false,
                "download": false
            },
            "auth": {
                "scheme": "NONE",
                "challenges": []
            },
            "knowledgeBasedAuthentication": null,
            "data": null,
            "title": "",
            "company": "",
            "email": "[email protected]",
            "firstName": "John",
            "lastName": "Smith",
            "external": null,
            "updated": "2017-11-16T16:53:01Z",
            "phone": "",
            "professionalIdentityFields": [],
            "userCustomFields": [],
            "address": null,
            "created": "2017-11-16T16:53:01Z",
            "name": "",
            "specialTypes": []
        }
    ],
    "name": "Signer5",
    "type": "SIGNER"
}

Running Your Code

Below are screenshots of what your signer(s) can expect if they choose to assign someone else to sign in their stead:

Capture

2

Get the Code

Request Payload

PropertyTypeEditableRequiredDefaultSample Value(s)
idstringYesNon/aSigner5
reassignbooleanYesNofalsetrue / false
namestringYesNon/aSigner5
idstringYesNon/aSigner5
typestringYesNoSIGNERSIGNER / SENDER
signers
emailstringYesNon/a[email protected]
firstNamestringYesNon/aJohn
lastNamestringYesNon/aSmith
idstringYesNon/aSigner5

You can allow a signer to assign someone else to sign the document instead of the original signer that is defined by the sender. Accordingly, the signer will be asked to enter the email address and full name of the person to sign along with an optional email message to send to the new signer. You will be notified of this change of Signer and will also be CC’d on the email message.

The Code

Below is a sample code on how to build your Role object in order to allow the signer to assign someone else to sign in their stead during the signing ceremony.

ESignLiveAPIObjects.Role role = new ESignLiveAPIObjects.Role();
        
ESignLiveAPIObjects.Signer signer = new ESignLiveAPIObjects.Signer();
signer.firstName = 'firstName';
signer.lastName = 'lastName';
signer.email = '[email protected]';
signer.name = 'signer1';
signer.id = 'signer1';
role.signers = new List<ESignLiveAPIObjects.Signer>{signer};
role.id = 'signer1';
role.reassign = true;	//allow change signer

Running Your Code

Below are screenshots of what your signer(s) can expect if they choose to assign someone else to sign in their stead:

Capture

2

Get the Code