Sample code for 30+ languages & platforms
PowerShell

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 PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

$http = New-Object Chilkat.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 = New-Object Chilkat.JsonObject
# Load a previously obtained OAuth2 access token.
$success = $jsonToken.LoadFile("qa_data/tokens/docusign.json")
if ($success -eq $false) {
    $($jsonToken.LastErrorText)
    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 = New-Object Chilkat.BinData

$success = $http.DownloadBd($url,$bd)
if ($success -eq $false) {
    $($http.LastErrorText)
    exit
}

$respStatusCode = $http.LastStatus
$("Response Status Code = " + $respStatusCode)
if ($respStatusCode -ne 200) {
    $("Response Header:")
    $($http.LastResponseHeader)
    # The response body contains an error message.
    $($bd.GetString("utf-8"))
    $("Failed.")
    exit
}

# The response indicated success.
# Get the filename from the Content-Disposition header and save to a file.
$mime = New-Object Chilkat.Mime
$mime.LoadMime($http.LastResponseHeader)

$filename = $mime.GetHeaderFieldAttribute("Content-Disposition","filename")
$("filename = " + $filename)

$sbPath = New-Object Chilkat.StringBuilder
$sbPath.Append("C:/aaworkarea/")
$sbPath.Append($filename)
$success = $bd.WriteFile($sbPath.GetAsString())
if ($success -eq $false) {
    $("Failed to save to output file.")
}
else {
    $("Wrote " + $sbPath.GetAsString())
}