Chilkat2-Python
Chilkat2-Python
DocuSign Download Envelope Document (PDF)
See more DocuSign Examples
Retrieves the specified document from the envelope. The response body of this method is the PDF file as a byte stream. You can get the file name and document ID from the response's Content-Disposition header.Chilkat Chilkat2-Python Downloads
import sys
import chilkat2
success = False
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = chilkat2.Http()
# Implements the following HTTP request:
# GET /restapi/v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/1
# Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header.
jsonToken = chilkat2.JsonObject()
# Load a previously obtained OAuth2 access token.
success = jsonToken.LoadFile("qa_data/tokens/docusign.json")
if (success == False):
print(jsonToken.LastErrorText)
sys.exit()
http.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")
url = "https://demo.docusign.net/restapi/v2.1/accounts/{$accountId}/envelopes/{$envelopeId}/documents/1"
bd = chilkat2.BinData()
success = http.DownloadBd(url,bd)
if (success == False):
print(http.LastErrorText)
sys.exit()
respStatusCode = http.LastStatus
print("Response Status Code = " + str(respStatusCode))
if (respStatusCode != 200):
print("Response Header:")
print(http.LastResponseHeader)
# The response body contains an error message.
print(bd.GetString("utf-8"))
print("Failed.")
sys.exit()
# The response indicated success.
# Get the filename from the Content-Disposition header and save to a file.
mime = chilkat2.Mime()
mime.LoadMime(http.LastResponseHeader)
filename = mime.GetHeaderFieldAttribute("Content-Disposition","filename")
print("filename = " + filename)
sbPath = chilkat2.StringBuilder()
sbPath.Append("C:/aaworkarea/")
sbPath.Append(filename)
success = bd.WriteFile(sbPath.GetAsString())
if (success == False):
print("Failed to save to output file.")
else:
print("Wrote " + sbPath.GetAsString())