Dart
Dart
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 Dart Downloads
import 'package:chilkat/chilkat.dart';
void main() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
final http = CkHttp();
// Implements the following HTTP request:
// GET /restapi/v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents/1
// Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header.
final jsonToken = CkJsonObject();
// Load a previously obtained OAuth2 access token.
try {
jsonToken.loadFile('qa_data/tokens/docusign.json');
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
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');
final url = 'https://demo.docusign.net/restapi/v2.1/accounts/{\$accountId}/envelopes/{\$envelopeId}/documents/1';
final bd = CkBinData();
try {
http.downloadBd(url, bd);
} on ChilkatException catch (e) {
print(e.lastErrorText);
return;
}
final respStatusCode = http.lastStatus;
print('Response Status Code = $respStatusCode');
if (respStatusCode != 200) {
print('Response Header:');
print(http.lastResponseHeader);
// The response body contains an error message.
print(bd.getString('utf-8'));
print('Failed.');
return;
}
// The response indicated success.
// Get the filename from the Content-Disposition header and save to a file.
final mime = CkMime();
mime.loadMime(http.lastResponseHeader);
final filename = mime.getHeaderFieldAttribute('Content-Disposition', 'filename');
print('filename = $filename');
final sbPath = CkStringBuilder();
sbPath.append('C:/aaworkarea/');
sbPath.append(filename);
try {
bd.writeFile(sbPath.getAsString());
print('Wrote ${sbPath.getAsString()}');
} on ChilkatException {
print('Failed to save to output file.');
}
}