@@ -20,46 +20,53 @@ const sendEnvelope = async (args) => {
2020 const accountId = args . accountId ;
2121 const envelopeArgs = args . envelopeArgs ;
2222
23- // Step 1. Create the template
23+ //ds-snippet-start:eSign42Step2
2424 const templateData = makeTemplate ( ) ;
2525 const template = await templatesApi . createTemplate ( accountId , { envelopeTemplate : templateData } ) ;
2626 const templateId = template . templateId ;
27+ //ds-snippet-end:eSign42Step2
2728
28- // Step 2. Update template document
29+ //ds-snippet-start:eSign42Step3
2930 const documentData = templateDocument ( envelopeArgs ) ;
3031 const documentId = '1' ;
3132 await templatesApi . updateDocument ( accountId , templateId , documentId , { envelopeDefinition : documentData } ) ;
33+ //ds-snippet-end:eSign42Step3
3234
33- // Step 3. Update recipient tabs
35+ //ds-snippet-start:eSign42Step4
3436 const tabs = recipientTabs ( envelopeArgs ) ;
3537 const recipientId = '1' ;
3638 await templatesApi . createTabs ( accountId , templateId , recipientId , { templateTabs : tabs } ) ;
39+ //ds-snippet-end:eSign42Step4
3740
38- // Step 4. Create draft envelope
41+ //ds-snippet-start:eSign42Step5
3942 const envelopeData = makeEnvelope ( templateId , envelopeArgs ) ;
4043 const envelope = await envelopesApi . createEnvelope ( accountId , { envelopeDefinition : envelopeData } ) ;
4144 const envelopeId = envelope . envelopeId ;
45+ //ds-snippet-end:eSign42Step5
4246
43- // Step 5. Get the document id
47+ //ds-snippet-start:eSign42Step6
4448 const docGenFormFieldsResponse = await envelopesApi . getEnvelopeDocGenFormFields ( accountId , envelopeId ) ;
4549 const documentIdGuid = docGenFormFieldsResponse . docGenFormFields [ 0 ] . documentId ;
50+ //ds-snippet-end:eSign42Step6
4651
47- // Step 6. Merge the data fields
52+ //ds-snippet-start:eSign42Step7
4853 const formFieldsData = formFields ( documentIdGuid , envelopeArgs ) ;
4954 await envelopesApi . updateEnvelopeDocGenFormFields ( accountId , envelopeId , { docGenFormFieldRequest : formFieldsData } ) ;
55+ //ds-snippet-end:eSign42Step7
5056
51- // Step 7. Send the envelope
57+ //ds-snippet-start:eSign42Step8
5258 const sendEnvelopeReq = docusign . Envelope . constructFromObject ( {
5359 status : 'sent' ,
5460 } ) ;
5561 return await envelopesApi . update ( accountId , envelopeId , { envelope : sendEnvelopeReq } ) ;
56-
62+ //ds-snippet-end:eSign42Step8
5763} ;
5864
5965/**
6066 * Creates envelope template object
6167 * @returns {docusign.EnvelopeTemplate } Template object
6268 */
69+ //ds-snippet-start:eSign42Step2
6370const makeTemplate = ( ) => {
6471 const signer = docusign . Signer . constructFromObject ( {
6572 roleName : 'signer' ,
@@ -82,12 +89,14 @@ const makeTemplate = () => {
8289
8390 return templateRequest ;
8491} ;
92+ //ds-snippet-end:eSign42Step2
8593
8694/**
8795 * Creates an envelope definition with document
8896 * @param {object } args Parameters for the envelope
8997 * @returns {docusign.EnvelopeDefinition } An envelope definition with document
9098 */
99+ //ds-snippet-start:eSign42Step3
91100const templateDocument = ( args ) => {
92101 // read file
93102 const docBytes = fs . readFileSync ( args . docFile ) ;
@@ -108,11 +117,13 @@ const templateDocument = (args) => {
108117
109118 return envelopeDefinition ;
110119} ;
120+ //ds-snippet-end:eSign42Step3
111121
112122/**
113123 * Creates recipient tabs
114124 * @returns {docusign.Tabs } Recipient tabs
115125 */
126+ //ds-snippet-start:eSign42Step4
116127const recipientTabs = ( ) => {
117128 const signHere = docusign . SignHere . constructFromObject ( {
118129 anchorString : 'Employee Signature' ,
@@ -134,13 +145,15 @@ const recipientTabs = () => {
134145
135146 return tabs ;
136147} ;
148+ //ds-snippet-end:eSign42Step4
137149
138150/**
139151 * Creates draft envelope
140152 * @param {string } templateId Template ID
141153 * @param {object } args Parameters for the envelope
142154 * @returns {docusign.EnvelopeDefinition } Draft envelope
143155 */
156+ //ds-snippet-start:eSign42Step5
144157const makeEnvelope = ( templateId , args ) => {
145158 // create the signer model
146159 const signer = docusign . TemplateRole . constructFromObject ( {
@@ -158,13 +171,15 @@ const makeEnvelope = (templateId, args) => {
158171
159172 return envelopeDefinition ;
160173} ;
174+ //ds-snippet-end:eSign42Step5
161175
162176/**
163177 * Creates document generation form field request
164178 * @param {string } documentId Document ID
165179 * @param {object } args Parameters for the envelope
166180 * @returns {docusign.DocGenFormFieldRequest } Document generation form field request
167181 */
182+ //ds-snippet-start:eSign42Step7
168183const formFields = ( documentId , args ) => {
169184 const docGenFormFieldRequest = docusign . DocGenFormFieldRequest . constructFromObject ( {
170185 docGenFormFields : [
@@ -198,5 +213,6 @@ const formFields = (documentId, args) => {
198213
199214 return docGenFormFieldRequest ;
200215} ;
216+ //ds-snippet-end:eSign42Step7
201217
202218module . exports = { sendEnvelope } ;
0 commit comments