Skip to content

Updating for idv #6

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Oct 29, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 44 additions & 14 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,50 +9,80 @@ This repo is a Python 3 application that demonstrates:
When the token expires, the user is asked to re-authenticate.
The **refresh token** is not used in this example.
1. **Embedded Signing Ceremony.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg001_embedded_signing.py)
[Source.](./app/eg001_embedded_signing.py)
This example sends an envelope, and then uses an embedded signing ceremony for the first signer.
With embedded signing, the DocuSign signing ceremony is initiated from your website.
1. **Send an envelope with a remote (email) signer and cc recipient.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg002_signing_via_email.py)
[Source.](./app/eg002_signing_via_email.py)
The envelope includes a pdf, Word, and HTML document.
Anchor text ([AutoPlace](https://support.docusign.com/en/guides/AutoPlace-New-DocuSign-Experience)) is used to position the signing fields in the documents.
1. **List envelopes in the user's account.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg003_list_envelopes.py)
[Source.](./app/eg003_list_envelopes.py)
The envelopes' current status is included.
1. **Get an envelope's basic information.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg004_envelope_info.py)
[Source.](./app/eg004_envelope_info.py)
The example lists the basic information about an envelope, including its overall status.
1. **List an envelope's recipients**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg005_envelope_recipients.py)
[Source.](./app/eg005_envelope_recipients.py)
Includes current recipient status.
1. **List an envelope's documents.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg006_envelope_docs.py)
[Source.](./app/eg006_envelope_docs.py)
1. **Download an envelope's documents.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg007_envelope_get_doc.py)
[Source.](./app/eg007_envelope_get_doc.py)
The example can download individual
documents, the documents concatenated together, or a zip file of the documents.
1. **Programmatically create a template.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg008_create_template.py)
[Source.](./app/eg008_create_template.py)
1. **Send an envelope using a template.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg009_use_template.py)
[Source.](./app/eg009_use_template.py)
1. **Send an envelope and upload its documents with multpart binary transfer.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg010_send_binary_docs.py)
[Source.](./app/eg010_send_binary_docs.py)
Binary transfer is 33% more efficient than using Base64 encoding.
1. **Embedded sending.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg011_embedded_sending.py)
[Source.](./app/eg011_embedded_sending.py)
Embeds the DocuSign web tool (NDSE) in your web app to finalize or update
the envelope and documents before they are sent.
1. **Embedded DocuSign web tool (NDSE).**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg012_embedded_console.py)
[Source.](./app/eg012_embedded_console.py)
1. **Embedded Signing Ceremony from a template with an added document.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg013_add_doc_to_template.py)
[Source.](./app/eg013_add_doc_to_template.py)
This example sends an envelope based on a template.
In addition to the template's document(s), the example adds an
additional document to the envelope by using the
[Composite Templates](https://developers.docusign.com/esign-rest-api/guides/features/templates#composite-templates)
feature.
1. **Payments example: an order form, with online payment by credit card.**
[Source.](https://github.com/docusign/eg-03-python-auth-code-grant/blob/master/app/eg014_collect_payment.py)
[Source.](./app/eg014_collect_payment.py)
1. **Get the envelope tab data.**
Retrieve the tab (field) values for all of the envelope's recipients.
[Source.](./app/eg015_envelope_tab_data.py)
1. **Set envelope tab values.**
The example creates an envelope and sets the initial values for its tabs (fields). Some of the tabs
are set to be read-only, others can be updated by the recipient. The example also stores
metadata with the envelope.
[Source.](./app/eg016_set_tab_values.py)
1. **Set template tab values.**
The example creates an envelope using a template and sets the initial values for its tabs (fields).
The example also stores metadata with the envelope.
[Source.](./app/eg017_set_template_tab_values.py)
1. **Get the envelope custom field data (metadata).**
The example retrieves the custom metadata (custom data fields) stored with the envelope.
[Source.](./app/eg018_envelope_custom_field_data.py)
1. **Requiring an Access Code for a Recipient**
[Source.](./app/eg019_access_code_authentication.py)
This example sends an envelope that requires an access-code for the purpose of multi-factor authentication.
1. **Requiring SMS authentication for a recipient**
[Source.](./app/eg020_sms_authentication.py)
This example sends an envelope that requires entering in a six digit code from an text message for the purpose of multi-factor authentication.
1. **Requiring Phone authentication for a recipient**
[Source.](./app/eg021_phone_authentication.py)
This example sends an envelope that requires entering in a voice-based response code for the purpose of multi-factor authentication.
1. **Requiring Knowledge-Based Authentication (KBA) for a Recipient**
[Source.](./app/eg022_kba_authentication.py)
This example sends an envelope that requires passing a Public records check to validate identity for the purpose of multi-factor authentication.
1. **Requiring ID Verification (IDV) for a recipient**
[Source.](./app/eg023_idv_authentication.py)
This example sends an envelope that requires submitting a photo of a government issued id for the purpose of multi-factor authentication.

## Installation

Expand Down
2 changes: 1 addition & 1 deletion app/eg010_send_binary_docs.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ def worker(args):

# Step 2. call Envelopes::create API method
# Exceptions will be caught by the calling function
results = requests.post(f"{args['base_path']}/v2/accounts/{args['account_id']}/envelopes",
results = requests.post(f"{args['base_path']}/v2.1/accounts/{args['account_id']}/envelopes",
headers = {
"Authorization": "bearer " + args["ds_access_token"],
"Accept": "application/json",
Expand Down
58 changes: 23 additions & 35 deletions app/eg023_idv_authentication.py

Large diffs are not rendered by default.