Reputation: 25
I am looking for solutions for the following questions in docusign node sdk. 1.how do we implement the multifactor authentication using docusgin node sdk. 2.how to display user information in template using embedded signing.
Upvotes: 2
Views: 617
Reputation: 9356
DocuSign currently offers up to nine (9) different forms of recipient authentication, you can read the docs and the website to see the full list. Two of the more popular recipient authentication flows when using the API are Access Code and SMS. In both methods a unique code is used to access the envelope.
With Access Code it's up to the sender how to deliver a sender-defined code to the recipient (i.e. they can call and give it to them, email it, or send through some other means). SMS Auth is the same concept except the DocuSign platform generates a unique code instead of it being sender-defined, and the code is sent through SMS to their mobile phone.
To add Access Code authentication for a recipient:
{
"status": "sent",
"emailSubject": "Envelope with Access Code Auth",
"documents": [{
"documentId": "1",
"name": "contract.pdf",
"documentBase64": "base64 document bytes...",
}],
"recipients": {
"signers": [{
"email": "[email protected]",
"name": "John Doe",
"accessCode": "99999",
"recipientId": "1",
"clientUserId": "100"
}]
}
}
The maximum length for an access code is 50 characters. Note that the above recipient would be set to sign in embedded fashion since their clientUserId
is set.
To add SMS you need to use the composite templates feature (note that you do not need to include an actual template if you do not want to, just remove the serverTemplates
node in that case):
{
"status": "sent",
"emailSubject": "Please sign this for me",
"compositeTemplates": [{
"serverTemplates": [{
"sequence": "1",
"templateId": "[TEMPLATE_ID]"
}],
"inlineTemplates": [{
"sequence": "1",
"recipients": {
"signers": [{
"name": "[SIGNER_NAME]",
"email": "[SIGNER_EMAIL]",
"routingOrder": "1",
"requireIdLookup": true,
"recipientId": "1",
"idCheckConfigurationName": "SMS Auth $",
"smsAuthentication": {
"senderProvidedNumbers": [
"1234567890"
]
}
}]
}
}]
}]
}
Replace "1234567890"
with the recipient's mobile phone number. Note that the idCheckConfigurationName
property must be set to "SMS Auth $"
.
Upvotes: 1
Reputation: 3
When you say multi-factor authentication are you referring to "Access Code", "Phone", "SMS", or "Knowledge Based" authentication? If so take a look at EnvelopeRecipients Create in the API documentation, specifically the signer definition. The attributes I would look at are "requireIdLookup", "accessCode", "idCheckConfigurationName", "idCheckInformationInput", "phoneAuthentication", "smsAuthentication", & "socialAuthentications".
Another way to achieve this would be to use SSO and have your Identity Provider require multi-factor authentication.
Upvotes: 0