Skip to content

Commit b177e24

Browse files
authored
Merge pull request #44 from docusign/DEVDOCS-6405
DEVDOCS-6405: Update recipient routing
2 parents 5970e1b + d7c25bb commit b177e24

4 files changed

Lines changed: 56 additions & 96 deletions

File tree

app/eSignature/examples/eg031_bulk_send/controller.py

Lines changed: 5 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -92,65 +92,21 @@ def worker(cls, args):
9292
)
9393
# Step 5 end
9494

95-
# Add placeholder tabs
96-
# Step 6 start
97-
recipient_sign_here = SignHere(
98-
anchor_string="/sn1/",
99-
anchor_units="pixels",
100-
anchor_y_offset="10",
101-
anchor_x_offset="20",
102-
tab_label="RecipentTab"
103-
)
104-
105-
# Add placeholder recipients
106-
cc = Signer(
107-
name="Multi Bulk Recipient::cc",
108-
email="multiBulkRecipients-cc@docusign.com",
109-
role_name="cc",
110-
note="",
111-
routing_order="1",
112-
status="created",
113-
delivery_method="email",
114-
recipient_id="1",
115-
recipient_type="signer"
116-
)
117-
118-
signer = Signer(
119-
name="Multi Bulk Recipient::signer",
120-
email="multiBulkRecipients-signer@docusign.com",
121-
role_name="signer",
122-
note="",
123-
routing_order="1",
124-
status="created",
125-
delivery_method="email",
126-
recipient_id="2",
127-
recipient_type="signer"
128-
)
129-
130-
signer.tabs = Tabs(sign_here_tabs=[recipient_sign_here])
131-
132-
envelope_api.create_recipient(
133-
account_id=args["account_id"],
134-
envelope_id=envelope_id,
135-
recipients=Recipients(signers=[signer, cc])
136-
)
137-
# Step 6 end
138-
13995
# Initiate bulk send
140-
# Step 7 start
96+
# Step 6 start
14197
bulk_send_request = BulkSendRequest(envelope_or_template_id=envelope_id)
14298
batch = bulk_envelopes_api.create_bulk_send_request(
14399
account_id=args["account_id"],
144100
bulk_send_list_id=bulk_list_id,
145101
bulk_send_request=bulk_send_request
146102
)
147103
batch_id = batch.batch_id
148-
# Step 7 end
104+
# Step 6 end
149105

150106
# Confirm successful batch send
151-
# Step 8 start
107+
# Step 7 start
152108
response = bulk_envelopes_api.get_bulk_send_batch_status(account_id=args["account_id"], bulk_send_batch_id=batch_id)
153-
# Step 8 end
109+
# Step 7 end
154110
print(response)
155111

156112
return response
@@ -231,7 +187,7 @@ def make_draft_envelope(cls):
231187
email="multiBulkRecipients-cc@docusign.com",
232188
role_name="cc",
233189
note="",
234-
routing_order="1",
190+
routing_order="2",
235191
status="created",
236192
delivery_method="email",
237193
recipient_id="1",

app/eSignature/examples/eg031_bulk_send/views.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
"""Example 031: Send an envelope to multiple recipients"""
22

3+
import json
34
from os import path
5+
46
from docusign_esign.client.api_exception import ApiException
57
from flask import current_app as app
68
from flask import render_template, Blueprint
9+
710
from .controller import Eg031Controller
811
from ....docusign import authenticate
912
from ....ds_config import DS_CONFIG
@@ -31,9 +34,10 @@ def bulk_send():
3134

3235
# 3. Render the response
3336
return render_template("example_done.html",
34-
title="Bulk send envelope was successfully performed!",
35-
h1="Bulk send envelope was successfully performed!",
36-
message=f"""Bulk request queued to {queued} user lists.<br/>"""
37+
title="Bulk sending envelopes to multiple recipients",
38+
h1="Bulk send envelopes",
39+
message=f"""Results from BulkSend:getBulkSendBatchStatus method:<br/>""",
40+
json=json.dumps(json.dumps(response.to_dict()))
3741
)
3842

3943
except ApiException as err:

app/templates/eg031_bulk_send.html

Lines changed: 36 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -3,86 +3,89 @@
33
<h4>31. Bulk send envelopes</h4>
44

55
<p>
6-
Method BulkEnvelopes::createBulkSendList creates a bulk send list that you can use to send an envelope to up to
7-
1,000 recipients at once
6+
Demonstrates how to send envelopes in bulk to multiple recipients. First, this example
7+
creates a bulk send recipients list, then creates an envelope. After that, it initiates bulk
8+
envelope sending.
89
</p>
910

1011
{% if show_doc %}
1112
<p><a target='_blank' href='{{ documentation | safe }}'>Documentation</a> about this example.</p>
1213
{% endif %}
1314

1415
<p>
15-
API method used:
16-
<a href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/enveloperecipients/create/" target="_blank">Envelopes::createRecipient</a>,
17-
<a href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopes/create/" target="_blank">Envelopes::createEnvelope</a>,
18-
<a href="https://developers.docusign.com/esign-rest-api/reference/BulkEnvelopes/BulkEnvelopes/get" target="_blank">BulkEnvelopes::get</a>,
19-
<a href="https://developers.docusign.com/esign-rest-api/reference/Envelopes/EnvelopeCustomFields/create" target="_blank">Envelopes::createCustomFields</a>,
20-
<a href="https://developers.docusign.com/esign-rest-api/reference/BulkEnvelopes/BulkSend/createBulkSendList" target="_blank">BulkEnvelopes::createBulkSendList</a>
16+
API methods used:
17+
<a target="_blank" rel="noopener noreferrer" href="https://developers.docusign.com/docs/esign-rest-api/reference/bulkenvelopes/bulksend/createbulksendlist/">BulkSend::createBulkSendList</a>,
18+
<a target="_blank" rel="noopener noreferrer" href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopes/create/">Envelopes::create</a>,
19+
<a target="_blank" rel="noopener noreferrer" href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopecustomfields/create/">EnvelopeCustomFields::create</a>,
20+
<a target="_blank" rel="noopener noreferrer" href="https://developers.docusign.com/docs/esign-rest-api/reference/bulkenvelopes/bulksend/createbulksendrequest/">BulkSend::createBulkSendRequest</a>,
21+
<a target="_blank" rel="noopener noreferrer" href="https://developers.docusign.com/docs/esign-rest-api/reference/bulkenvelopes/bulksend/getbulksendbatchstatus/">BulkSend::getBulkSendBatchStatus</a>.
2122
</p>
2223

2324
<p>
2425
View source file <a target="_blank" href="{{ source_url | safe }}">{{ source_file }}</a> on GitHub.
2526
</p>
2627

2728
<form class="eg" action="" method="post" data-busy="form">
28-
<div class="row">
29+
<div class="row">
2930
<div class="col-md-6">
3031
<h5>Bulk copy #1</h5>
31-
<div class="form-group">
32-
<label for="signer_name_1">Signer Name</label>
33-
<input type="text" class="form-control" id="signer_name_1" placeholder="Pat Johnson" name="signer_name_1"
34-
value="{{ signer_name }}" required>
35-
</div>
36-
3732
<div class="form-group">
3833
<label for="signer_email_1">Signer Email</label>
3934
<input type="email" class="form-control" id="signer_email_1" name="signer_email_1"
4035
aria-describedby="emailHelp" placeholder="pat@example.com" required
4136
value="{{ signer_email }}">
4237
</div>
43-
38+
4439
<div class="form-group">
45-
<label for="cc_name_1">CC Name</label>
46-
<input type="text" class="form-control" id="cc_name_1" placeholder="Pat Johnson" name="cc_name_1"
47-
required>
40+
<label for="signer_name_1">Signer Name</label>
41+
<input type="text" class="form-control" id="signer_name_1" placeholder="Pat Johnson" name="signer_name_1"
42+
value="{{ signer_name }}" required>
4843
</div>
49-
44+
5045
<div class="form-group">
5146
<label for="cc_email_1">CC Email</label>
5247
<input type="email" class="form-control" id="cc_email_1" name="cc_email_1"
5348
aria-describedby="emailHelp" placeholder="pat@example.com" required>
5449
</div>
50+
51+
<div class="form-group">
52+
<label for="cc_name_1">CC Name</label>
53+
<input type="text" class="form-control" id="cc_name_1" placeholder="Pat Johnson" name="cc_name_1"
54+
required>
55+
</div>
5556
</div>
56-
57+
5758
<div class="col-md-6">
5859
<h5>Bulk copy #2</h5>
59-
<div class="form-group">
60-
<label for="signer_name_2">Signer Name</label>
61-
<input type="text" class="form-control" id="signer_name_2" placeholder="Pat Johnson" name="signer_name_2" required>
62-
</div>
63-
6460
<div class="form-group">
6561
<label for="signer_email_2">Signer Email</label>
6662
<input type="email" class="form-control" id="signer_email_2" name="signer_email_2"
67-
aria-describedby="emailHelp" placeholder="pat@example.com" required>
63+
aria-describedby="emailHelp" placeholder="pat@example.com" required
64+
value="{{ signer_email }}">
6865
</div>
69-
66+
7067
<div class="form-group">
71-
<label for="cc_name_2">CC Name</label>
72-
<input type="text" class="form-control" id="cc_name_2" placeholder="Pat Johnson" name="cc_name_2"
73-
required>
68+
<label for="signer_name_2">Signer Name</label>
69+
<input type="text" class="form-control" id="signer_name_2" placeholder="Pat Johnson" name="signer_name_2"
70+
value="{{ signer_name }}" required>
7471
</div>
75-
72+
7673
<div class="form-group">
7774
<label for="cc_email_2">CC Email</label>
7875
<input type="email" class="form-control" id="cc_email_2" name="cc_email_2"
7976
aria-describedby="emailHelp" placeholder="pat@example.com" required>
8077
</div>
78+
79+
<div class="form-group">
80+
<label for="cc_name_2">CC Name</label>
81+
<input type="text" class="form-control" id="cc_name_2" placeholder="Pat Johnson" name="cc_name_2"
82+
required>
83+
</div>
8184
</div>
8285
</div>
8386
<div>
8487
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}"/>
8588
<button type="submit" class="btn btn-docu">Submit</button>
8689
</div>
8790
</form>
88-
{% endblock %}
91+
{% endblock %}

app/templates/home.html

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -286,20 +286,17 @@ <h4 id="example030">30. <a href="eg030">Apply a brand and template to an envelop
286286
<h2>Bulk operations</h2>
287287
<h4 id="example031">31. <a href="eg031">Bulk send envelopes</a></h4>
288288
<p>
289-
Demonstrates how to send envelopes in bulk to multiple recipients. First, this example creates a bulk-send recipients list, then creates an envelope. After that, it initiates bulk envelope sending.
289+
Demonstrates how to send envelopes in bulk to multiple recipients. First, this example
290+
creates a bulk send recipients list, then creates an envelope. After that, it initiates bulk
291+
envelope sending.
290292
</p>
291293
<p>
292294
API methods used:
293-
<a href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/enveloperecipients/create/"
294-
target="_blank">Envelopes::createRecipient</a>,
295-
<a href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopes/create/"
296-
target="_blank">Envelopes::createEnvelope</a>,
297-
<a href="https://developers.docusign.com/esign-rest-api/reference/BulkEnvelopes/BulkEnvelopes/get"
298-
target="_blank">BulkEnvelopes::get</a>,
299-
<a href="https://developers.docusign.com/esign-rest-api/reference/Envelopes/EnvelopeCustomFields/create"
300-
target="_blank">Envelopes::createCustomFields</a>,
301-
<a href="https://developers.docusign.com/esign-rest-api/reference/BulkEnvelopes/BulkSend/createBulkSendList"
302-
target="_blank">BulkEnvelopes::createBulkSendList</a>
295+
<a target="_blank" href="https://developers.docusign.com/docs/esign-rest-api/reference/bulkenvelopes/bulksend/createbulksendlist/">BulkSend::createBulkSendList</a>,
296+
<a target="_blank" href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopes/create/">Envelopes::create</a>,
297+
<a target="_blank" href="https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/envelopecustomfields/create/">EnvelopeCustomFields::create</a>,
298+
<a target="_blank" href="https://developers.docusign.com/docs/esign-rest-api/reference/bulkenvelopes/bulksend/createbulksendrequest/">BulkSend::createBulkSendRequest</a>,
299+
<a target="_blank" href="https://developers.docusign.com/docs/esign-rest-api/reference/bulkenvelopes/bulksend/getbulksendbatchstatus/">BulkSend::getBulkSendBatchStatus</a>.
303300
</p>
304301

305302
<h2>Advanced recipient routing</h2>

0 commit comments

Comments
 (0)