CkPython
CkPython
DocuSign List Envelope Documents
See more DocuSign Examples
Retrieve a list of all documents within a specific envelope.Chilkat CkPython Downloads
import sys
import chilkat
success = False
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = chilkat.CkHttp()
# Implements the following HTTP request:
# GET /restapi/v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents
# Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header.
jsonToken = chilkat.CkJsonObject()
# Load a previously obtained OAuth2 access token.
success = jsonToken.LoadFile("qa_data/tokens/docusign.json")
if (success == False):
print(jsonToken.lastErrorText())
sys.exit()
http.put_AuthToken(jsonToken.stringOf("access_token"))
# Use your account ID and a valid envelopeId here:
http.SetUrlVar("accountId","7f3f65ed-5e87-418d-94c1-92499ddc8252")
http.SetUrlVar("envelopeId","90d7e40a-b4bd-4ccd-bf38-c80e37954a13")
sbResponseBody = chilkat.CkStringBuilder()
success = http.QuickGetSb("https://demo.docusign.net/restapi/v2.1/accounts/{$accountId}/envelopes/{$envelopeId}/documents",sbResponseBody)
if (success == False):
print(http.lastErrorText())
sys.exit()
jResp = chilkat.CkJsonObject()
jResp.LoadSb(sbResponseBody)
jResp.put_EmitCompact(False)
print("Response Body:")
print(jResp.emit())
respStatusCode = http.get_LastStatus()
print("Response Status Code = " + str(respStatusCode))
if (respStatusCode >= 400):
print("Response Header:")
print(http.lastHeader())
print("Failed.")
sys.exit()
# Sample JSON response:
# (Sample code for parsing the JSON response is shown below)
# {
# "envelopeId": "90d7e40a-b4bd-4ccd-bf38-c80e37954a13",
# "envelopeDocuments": [
# {
# "documentId": "1",
# "documentIdGuid": "ca1d3cc6-9bc3-48d6-a5d8-a85d9acdcde1",
# "name": "helloWorld.pdf",
# "type": "content",
# "uri": "/envelopes/90d7e40a-b4bd-4ccd-bf38-c80e37954a13/documents/1",
# "order": "1",
# "pages": [
# {
# "pageId": "fbf93a36-6b60-484d-94bd-ee3c08c0a546",
# "sequence": "1",
# "height": "842",
# "width": "595",
# "dpi": "72"
# }
# ],
# "availableDocumentTypes": [
# {
# "type": "electronic",
# "isDefault": "true"
# }
# ],
# "display": "inline",
# "includeInDownload": "true",
# "signerMustAcknowledge": "no_interaction",
# "templateRequired": "false",
# "authoritativeCopy": "false"
# },
# {
# "documentId": "certificate",
# "documentIdGuid": "7479a5de-8d91-44a2-bc33-b76a9ba0f6e2",
# "name": "Summary",
# "type": "summary",
# "uri": "/envelopes/90d7e40a-b4bd-4ccd-bf38-c80e37954a13/documents/certificate",
# "order": "999",
# "availableDocumentTypes": [
# {
# "type": "electronic",
# "isDefault": "true"
# }
# ],
# "display": "inline",
# "includeInDownload": "true",
# "signerMustAcknowledge": "no_interaction",
# "templateRequired": "false",
# "authoritativeCopy": "false"
# }
# ]
# }
# Sample code for parsing the JSON response...
# Use the following online tool to generate parsing code from sample JSON:
# Generate Parsing Code from JSON
envelopeId = jResp.stringOf("envelopeId")
i = 0
count_i = jResp.SizeOfArray("envelopeDocuments")
while i < count_i :
jResp.put_I(i)
documentId = jResp.stringOf("envelopeDocuments[i].documentId")
documentIdGuid = jResp.stringOf("envelopeDocuments[i].documentIdGuid")
name = jResp.stringOf("envelopeDocuments[i].name")
v_type = jResp.stringOf("envelopeDocuments[i].type")
uri = jResp.stringOf("envelopeDocuments[i].uri")
order = jResp.stringOf("envelopeDocuments[i].order")
display = jResp.stringOf("envelopeDocuments[i].display")
includeInDownload = jResp.stringOf("envelopeDocuments[i].includeInDownload")
signerMustAcknowledge = jResp.stringOf("envelopeDocuments[i].signerMustAcknowledge")
templateRequired = jResp.stringOf("envelopeDocuments[i].templateRequired")
authoritativeCopy = jResp.stringOf("envelopeDocuments[i].authoritativeCopy")
j = 0
count_j = jResp.SizeOfArray("envelopeDocuments[i].pages")
while j < count_j :
jResp.put_J(j)
pageId = jResp.stringOf("envelopeDocuments[i].pages[j].pageId")
sequence = jResp.stringOf("envelopeDocuments[i].pages[j].sequence")
height = jResp.stringOf("envelopeDocuments[i].pages[j].height")
width = jResp.stringOf("envelopeDocuments[i].pages[j].width")
dpi = jResp.stringOf("envelopeDocuments[i].pages[j].dpi")
j = j + 1
j = 0
count_j = jResp.SizeOfArray("envelopeDocuments[i].availableDocumentTypes")
while j < count_j :
jResp.put_J(j)
v_type = jResp.stringOf("envelopeDocuments[i].availableDocumentTypes[j].type")
isDefault = jResp.stringOf("envelopeDocuments[i].availableDocumentTypes[j].isDefault")
j = j + 1
i = i + 1