Steps
    • PDF

    Steps

    • PDF

    Article summary

    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

    ParameterTypeOptional/Required Discerption
    idstringOptionalAn internal random identifier for a step
    communication objectRequiredDescribes 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

    ParameterTypeOptional/Required Discerption
    startarrayRequiredAn 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 arrayRequiredAn 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 arrayRequiredAn array of Communication Entry objects with additional fields related to the auto reminder sent to a specific participant
    the end of the step
    NOTE
    • For additional information about Communication Entry, click here
    • For additional information about auto-reminders, click here
    authProviderobjectOptionalAn object for each Communication Entry step that determines whether or not to include a One-Time Password (OTP)
    NOTE
    • For additional information about Communication Entry, click here
    • For additional information about authProvider, click here

    Steps - Communication Entry

    Table 3 describes the communication entry parameters.

    Table 3: Communication Entry Parameters

    ParameterTypeOptional/Required Discerption
    participantIdstringRequiredThe Id of the participant as specified in the participants section
    type stringRequiredSpecifies one of the following preset values:
    • Email - for sending an email
    NOTE

    For additional information about email parameters, click here

    • SMS - for sending a text message
    NOTE

    For additional information about SMS parameters, click here

    • None - will not send any message, only a link will be generated and returned via API

    Steps - Communication Entry - Email

    Table 4 describes the email parameters.

    Table 6: Email Parameters

    ParameterTypeOptional/Required Discerption
    emailstringRequiredThe target email address
    NOTE
    You can use a comma to add multiple email addresses
    subjectstringRequiredThe subject of the email
    NOTE
    Can include escape sequences, for additional information, click here
    bodystringRequiredThe content of the email as an HTML string
    NOTE
    Can include escape sequences, for additional information, click here
    attachModelJsonbooleanOptionalSpecifies whether an additional JSON file containing data fields should be attached to the email
    NOTE
    • Only relevant for the finish phase
    • False by default
    customModelJsonFileNamestringOptionalEnables 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

    ParameterTypeOptional/Required Discerption
    phonestringRequiredThe target phone number
    NOTE
    The phone number must include an international prefix starting with the + sign
    textstringRequiredThe 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

    ParameterTypeOptional/Required Discerption
    {{name}}stringRequiredThe name of the participant as described in the Participants Section
    {{link}}stringRequiredThe 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

    ParameterTypeOptional/Required Discerption
    countdownTriggerstringRequiredThe type of event that triggers the countdown of sending the auto reminder:
    • linkSent
    • lastOpened
    maxNumOfSendsintegerRequiredThe maximum number of times a reminder will be sent. 
    whentoSendobjectRequired

    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

    ParameterTypeOptional/Required Discerption
    typestringRequiredFor the time unit, one of the following preset values must be provided:
    • daysAndTime
    NOTE
    For additional information about days and time parameters, click here
    • numOfMinutes
    NOTE
    For additional information about minutes parameters, click here

    Steps - Auto Reminder - whenToSend - daysAndTime

    Table 9 describes the daysAndTime parameters.

    Table 9: daysAndTime

    ParameterTypeOptional/Required Discerption
    daysintegerRequiredNumber of days to countdown 
    timeintegerRequiredThe 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

    ParameterTypeOptional/Required Discerption
    minutesintegerRequiredNumber 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

    ParameterTypeOptional/Required Discerption
    typestringRequiredIf type is set to standardOTPAuthProvider, on player run time, when the participant opens the link, OTP will run
    isTwoFactorbooleanRequiredIf 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
    otpSendMethodstringRequired

    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 

    skipNotListedParticipantsbooleanRequiredIndicate the player if all participants from the participants array have to appear in the participantsOtp list 
    NOTE
    • If set to true, and not all participants appear in the participantsOtp list, an error message will be generated
    • If set to false, and not all participants appear in the participantsOtp list, the OTP session will continue 
    skipOtpInDevbooleanoptionalIndicate the player if the OTP session needs to run in DEV environments
    participantsOtparrayRequired

    Contains a list of participants with the following string parameters:

    • participantId
    • phone
    • email 

    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"
                       }
                   ]
               }
    

    Was this article helpful?

    What's Next