- PDF
Steps
- PDF
Steps
This section describes the steps of the signature workflow:
- Which participants participate in each step.
- Which communication entries are sent.
A step is a JSON array, containing JSON objects. Each object corresponds to one step of a sequential workflow. Only once a specific step is completed, the next step is started. Each entry of the array is a JSON object. Table 1 describes the step parameters.
Table 1: Step Parameters
Parameter | Type | Optional/Required | Discerption |
id | string | Optional | An internal random identifier for a step |
communication | object | Required | Describes the set of communication messages (SMS /emails) to be sent for different participants of the workflow. NOTE For additional information about this parameter, see the Steps - Communication section |
Steps - Communication
This section describes the set of communication messages (SMS/emails) to be sent to different workflow participants. Each communication is a JSON object. Table 2 describes the communication parameters.
Table 2: Communication Parameters
Parameter | Type | Optional/Required | Discerption |
start | array | Required | An array of Communication Entry objects that will be sent at the beginning of the step NOTE For additional information about Communication Entry, click here |
finish | array | Required | An array of Communication Entry objects that will be sent at the end of the step NOTE For additional information about Communication Entry, click here |
autoReminders | array | Required | An array of Communication Entry objects with additional fields related to the auto reminder sent to a specific participant the end of the step NOTE |
authProvider | object | Optional | An object for each Communication Entry step that determines whether or not to include a One-Time Password (OTP) NOTE |
Steps - Communication Entry
Table 3 describes the communication entry parameters.
Table 3: Communication Entry Parameters
Parameter | Type | Optional/Required | Discerption |
participantId | string | Required | The Id of the participant as specified in the participants section |
type | string | Required | Specifies one of the following preset values:
NOTE For additional information about email parameters, click here
NOTE For additional information about SMS parameters, click here
|
Steps - Communication Entry - Email
Table 4 describes the email parameters.
Table 6: Email Parameters
Parameter | Type | Optional/Required | Discerption |
string | Required | The target email address NOTE You can use a comma to add multiple email addresses | |
subject | string | Required | The subject of the email NOTE Can include escape sequences, for additional information, click here |
body | string | Required | The content of the email as an HTML string NOTE Can include escape sequences, for additional information, click here |
attachModelJson | boolean | Optional | Specifies whether an additional JSON file containing data fields should be attached to the email NOTE
|
customModelJsonFileName | string | Optional | Enables you to customize the name of the attached JSON file ontaining data fields should be attached to the email NOTE Only relevant for the finish phase and if the attachModelJson parameter is set to true |
Steps - Communication Entry - SMS
Table 5 describes the SMS parameters.
Table 5: SMS Parameters
Parameter | Type | Optional/Required | Discerption |
phone | string | Required | The target phone number NOTE The phone number must include an international prefix starting with the + sign |
text | string | Required | The content of the text message NOTE Can include escape sequences, for additional information, click here |
Steps - Communication Entry - Escape Sequences
Table 6 describes escape sequences for communication entries.
Table 6: Escape Sequences
Parameter | Type | Optional/Required | Discerption |
{{name}} | string | Required | The name of the participant as described in the Participants Section |
{{link}} | string | Required | The link used to start the signature process NOTE Only relevant for the start phase |
Sample Call
"steps": [
{
"communication": {
"start": [
{
"participantId": "customer1",
"type": "email",
"email": "example@easysend.io",
"subject": "Documents to sign for {{name}}",
"body": "hi customer: {{name}}, here is your link: {{link}}"
},
{
"participantId": "agent",
"type": "email",
"email": "example@easysend.io",
"subject": "Documents to sign for {{name}}",
"body": "hi agent: {{name}}, here is your link: {{link}}"
}
],
"finish": [
{
"participantId": "customer1",
"type": "email",
"email": "example@easysend.io",
"subject": "Done",
"body": "hi {{name}}, Thanks for submitting!"
}
]
Steps - Auto Reminder
Table 7 describes the auto reminder parameters.
Table 7: Auto Reminder
Parameter | Type | Optional/Required | Discerption |
countdownTrigger | string | Required | The type of event that triggers the countdown of sending the auto reminder:
|
maxNumOfSends | integer | Required | The maximum number of times a reminder will be sent. |
whentoSend | object | Required | Defines the time interval, in minutes or days, from the countdown trigger event the auto reminder is sent |
Steps - Auto Reminder - whenToSend
Table 8 describes the whenToSend parameter.
Table 8: whenToSend
Parameter | Type | Optional/Required | Discerption |
type | string | Required | For the time unit, one of the following preset values must be provided:
NOTE For additional information about days and time parameters, click here
NOTE For additional information about minutes parameters, click here |
Steps - Auto Reminder - whenToSend - daysAndTime
Table 9 describes the daysAndTime parameters.
Table 9: daysAndTime
Parameter | Type | Optional/Required | Discerption |
days | integer | Required | Number of days to countdown |
time | integer | Required | The time of the day the auto reminder is sent NOTE Configured in 24H UTC format |
Steps - Auto Reminder - whenToSend - numOfMinutes
Table 10 describes the numOfMinutes parameter.
Table 10: numOfMinutes
Parameter | Type | Optional/Required | Discerption |
minutes | integer | Required | Number of minutes to countdown |
Sample Call
"autoReminders": [
{
"participantId": "customer1",
"type": "email",
"countdownTrigger": "linkSent",
"subject": "A kind reminder for {{name}}",
"body": "hi customer: {{name}}, here is your link reminder: {{link}}",
"whenToSend": {
"type": "numOfMinutes",
"minutes": 1
},
"maxNumOfSends": 1
},
{
"participantId": "customer1",
"type": "email",
"countdownTrigger": "lastOpened",
"subject": "Another kind reminder for {{name}}",
"body": "hi customer: {{name}}, here is your link reminder: {{link}}",
"whenToSend": {
"type": "daysAndTime",
"days": 2,
"time": "10:00"
},
"maxNumOfSends": 1
}
]
Steps - authProvider
Table 11 describes the authProvider parameters.
Table 11: authProvider
Parameter | Type | Optional/Required | Discerption |
type | string | Required | If type is set to standardOTPAuthProvider, on player run time, when the participant opens the link, OTP will run |
isTwoFactor | boolean | Required | If true, 2Factor authentication is enabled, the player will ask the end user to insert an email address or phone number, according to otpSendMethod, and verify that the inserted matches the phone/email values of this specific participant, as appear in the participantsOtp listmaximum number of times a reminder will be sent |
otpSendMethod | string | Required | specifies how the OTP password is sent to the end user (phone/email /both) if isTwoFactor is set to true, the player will verify the inserted phone/email/both values |
skipNotListedParticipants | boolean | Required | Indicate the player if all participants from the participants array have to appear in the participantsOtp list NOTE
|
skipOtpInDev | boolean | optional | Indicate the player if the OTP session needs to run in DEV environments |
participantsOtp | array | Required | Contains a list of participants with the following string parameters:
|
Sample Call
"authProvider": {
"type": "standardOTPAuthProvider",
"isTwoFactor": true,
"otpSendMethod": "email",
"skipNotListedParticipants": false,
"skipOtpInDev": false,
"participantsOtp": [
{
"participantId": "singerOne",
"phone": "0544664034",
"email": "r.shoshani@easysend.io"
},
{
"participantId": "singerTwo",
"phone": "0544664034",
"email": "ronshosh@gmail.com"
},
{
"participantId": "agent",
"phone": "0544664034",
"email": "ronshosh@gmail.com"
}
]
}