Lianja
Lianja
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 Lianja Downloads
llSuccess = .F.
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
loHttp = createobject("CkHttp")
// Implements the following HTTP request:
// GET /restapi/v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/1
// Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header.
loJsonToken = createobject("CkJsonObject")
// Load a previously obtained OAuth2 access token.
llSuccess = loJsonToken.LoadFile("qa_data/tokens/docusign.json")
if (llSuccess = .F.) then
? loJsonToken.LastErrorText
release loHttp
release loJsonToken
return
endif
loHttp.AuthToken = loJsonToken.StringOf("access_token")
// Use your account ID and a valid envelopeId here:
loHttp.SetUrlVar("accountId","7f3f65ed-5e87-418d-94c1-92499ddc8252")
loHttp.SetUrlVar("envelopeId","90d7e40a-b4bd-4ccd-bf38-c80e37954a13")
lcUrl = "https://demo.docusign.net/restapi/v2.1/accounts/{$accountId}/envelopes/{$envelopeId}/documents/1"
loBd = createobject("CkBinData")
llSuccess = loHttp.DownloadBd(lcUrl,loBd)
if (llSuccess = .F.) then
? loHttp.LastErrorText
release loHttp
release loJsonToken
release loBd
return
endif
lnRespStatusCode = loHttp.LastStatus
? "Response Status Code = " + str(lnRespStatusCode)
if (lnRespStatusCode <> 200) then
? "Response Header:"
? loHttp.LastResponseHeader
// The response body contains an error message.
? loBd.GetString("utf-8")
? "Failed."
release loHttp
release loJsonToken
release loBd
return
endif
// The response indicated success.
// Get the filename from the Content-Disposition header and save to a file.
loMime = createobject("CkMime")
loMime.LoadMime(loHttp.LastResponseHeader)
lcFilename = loMime.GetHeaderFieldAttribute("Content-Disposition","filename")
? "filename = " + lcFilename
loSbPath = createobject("CkStringBuilder")
loSbPath.Append("C:/aaworkarea/")
loSbPath.Append(lcFilename)
llSuccess = loBd.WriteFile(loSbPath.GetAsString())
if (llSuccess = .F.) then
? "Failed to save to output file."
else
? "Wrote " + loSbPath.GetAsString()
endif
release loHttp
release loJsonToken
release loBd
release loMime
release loSbPath