Swift
Swift
DocuSign List Envelope Documents
See more DocuSign Examples
Retrieve a list of all documents within a specific envelope.Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let http = CkoHttp()!
// Implements the following HTTP request:
// GET /restapi/v2.1/accounts/{accountId}/envelopes/{envelopeId}/documents
// Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header.
let jsonToken = CkoJsonObject()!
// Load a previously obtained OAuth2 access token.
success = jsonToken.loadFile(path: "qa_data/tokens/docusign.json")
if success == false {
print("\(jsonToken.lastErrorText!)")
return
}
http.authToken = jsonToken.string(of: "access_token")
// Use your account ID and a valid envelopeId here:
http.setUrlVar(name: "accountId", value: "7f3f65ed-5e87-418d-94c1-92499ddc8252")
http.setUrlVar(name: "envelopeId", value: "90d7e40a-b4bd-4ccd-bf38-c80e37954a13")
let sbResponseBody = CkoStringBuilder()!
success = http.quickGetSb(url: "https://demo.docusign.net/restapi/v2.1/accounts/{$accountId}/envelopes/{$envelopeId}/documents", sbContent: sbResponseBody)
if success == false {
print("\(http.lastErrorText!)")
return
}
let jResp = CkoJsonObject()!
jResp.loadSb(sb: sbResponseBody)
jResp.emitCompact = false
print("Response Body:")
print("\(jResp.emit()!)")
var respStatusCode: Int = http.lastStatus.intValue
print("Response Status Code = \(respStatusCode)")
if respStatusCode >= 400 {
print("Response Header:")
print("\(http.lastHeader!)")
print("Failed.")
return
}
// 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
var documentId: String?
var documentIdGuid: String?
var name: String?
var v_type: String?
var uri: String?
var order: String?
var display: String?
var includeInDownload: String?
var signerMustAcknowledge: String?
var templateRequired: String?
var authoritativeCopy: String?
var j: Int
var count_j: Int
var pageId: String?
var sequence: String?
var height: String?
var width: String?
var dpi: String?
var isDefault: String?
var envelopeId: String? = jResp.string(of: "envelopeId")
var i: Int = 0
var count_i: Int = jResp.size(ofArray: "envelopeDocuments").intValue
while i < count_i {
jResp.i = i
documentId = jResp.string(of: "envelopeDocuments[i].documentId")
documentIdGuid = jResp.string(of: "envelopeDocuments[i].documentIdGuid")
name = jResp.string(of: "envelopeDocuments[i].name")
v_type = jResp.string(of: "envelopeDocuments[i].type")
uri = jResp.string(of: "envelopeDocuments[i].uri")
order = jResp.string(of: "envelopeDocuments[i].order")
display = jResp.string(of: "envelopeDocuments[i].display")
includeInDownload = jResp.string(of: "envelopeDocuments[i].includeInDownload")
signerMustAcknowledge = jResp.string(of: "envelopeDocuments[i].signerMustAcknowledge")
templateRequired = jResp.string(of: "envelopeDocuments[i].templateRequired")
authoritativeCopy = jResp.string(of: "envelopeDocuments[i].authoritativeCopy")
j = 0
count_j = jResp.size(ofArray: "envelopeDocuments[i].pages").intValue
while j < count_j {
jResp.j = j
pageId = jResp.string(of: "envelopeDocuments[i].pages[j].pageId")
sequence = jResp.string(of: "envelopeDocuments[i].pages[j].sequence")
height = jResp.string(of: "envelopeDocuments[i].pages[j].height")
width = jResp.string(of: "envelopeDocuments[i].pages[j].width")
dpi = jResp.string(of: "envelopeDocuments[i].pages[j].dpi")
j = j + 1
}
j = 0
count_j = jResp.size(ofArray: "envelopeDocuments[i].availableDocumentTypes").intValue
while j < count_j {
jResp.j = j
v_type = jResp.string(of: "envelopeDocuments[i].availableDocumentTypes[j].type")
isDefault = jResp.string(of: "envelopeDocuments[i].availableDocumentTypes[j].isDefault")
j = j + 1
}
i = i + 1
}
}