Sample code for 30+ languages & platforms
AutoIt

DocuSign List Folders

See more DocuSign Examples

Retrieves a list of the folders for the account, including the folder hierarchy. You can specify type kinds of folders to return with the include query parameter.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

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

$oHttp = ObjCreate("Chilkat.Http")

; Implements the following HTTP request:
; GET /restapi/v2.1/accounts/{accountId}/folders

; Adds the "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ" header.
$oJsonToken = ObjCreate("Chilkat.JsonObject")
; Load a previously obtained OAuth2 access token.
$bSuccess = $oJsonToken.LoadFile("qa_data/tokens/docusign.json")
If ($bSuccess = False) Then
    ConsoleWrite($oJsonToken.LastErrorText & @CRLF)
    Exit
EndIf

$oHttp.AuthToken = $oJsonToken.StringOf("access_token")

; Use your account ID here:
$oHttp.SetUrlVar("accountId","7f3f65ed-5e87-418d-94c1-92499ddc8252")

$oSbResponseBody = ObjCreate("Chilkat.StringBuilder")
$bSuccess = $oHttp.QuickGetSb("https://demo.docusign.net/restapi/v2.1/accounts/{$accountId}/folders",$oSbResponseBody)
If ($bSuccess = False) Then
    ConsoleWrite($oHttp.LastErrorText & @CRLF)
    Exit
EndIf

$oJResp = ObjCreate("Chilkat.JsonObject")
$oJResp.LoadSb($oSbResponseBody)
$oJResp.EmitCompact = False

ConsoleWrite("Response Body:" & @CRLF)
ConsoleWrite($oJResp.Emit() & @CRLF)

Local $iRespStatusCode = $oHttp.LastStatus
ConsoleWrite("Response Status Code = " & $iRespStatusCode & @CRLF)
If ($iRespStatusCode >= 400) Then
    ConsoleWrite("Response Header:" & @CRLF)
    ConsoleWrite($oHttp.LastHeader & @CRLF)
    ConsoleWrite("Failed." & @CRLF)
    Exit
EndIf

; Sample JSON response:
; (Sample code for parsing the JSON response is shown below)

; {
;   "resultSetSize": "4",
;   "startPosition": "0",
;   "endPosition": "3",
;   "totalSetSize": "4",
;   "folders": [
;     {
;       "name": "Draft",
;       "type": "draft",
;       "owner": {
;         "userName": "Joe Sample",
;         "userId": "14602117-2430-4582-8a49-ba8766302272",
;         "email": "admin@chilkatsoft.com"
;       },
;       "folderId": "f0bc5174-610d-4d80-80d7-91037843ccdb",
;       "uri": "/folders/f0bc5174-610d-4d80-80d7-91037843ccdb",
;       "itemCount": "0",
;       "subFolderCount": "0",
;       "hasSubFolders": "false"
;     },
;     {
;       "name": "Inbox",
;       "type": "inbox",
;       "owner": {
;         "userName": "Joe Sample",
;         "userId": "14602117-2430-4582-8a49-ba8766302272",
;         "email": "admin@chilkatsoft.com"
;       },
;       "folderId": "06c97346-f7b4-46fd-a204-038287d655ec",
;       "uri": "/folders/06c97346-f7b4-46fd-a204-038287d655ec",
;       "itemCount": "1",
;       "subFolderCount": "0",
;       "hasSubFolders": "false"
;     },
;     {
;       "name": "Deleted Items",
;       "type": "recyclebin",
;       "owner": {
;         "userName": "Joe Sample",
;         "userId": "14602117-2430-4582-8a49-ba8766302272",
;         "email": "admin@chilkatsoft.com"
;       },
;       "folderId": "6df0919e-b152-49fc-a4c9-9b430a29d4f5",
;       "uri": "/folders/6df0919e-b152-49fc-a4c9-9b430a29d4f5",
;       "itemCount": "0",
;       "subFolderCount": "0",
;       "hasSubFolders": "false"
;     },
;     {
;       "name": "Sent Items",
;       "type": "sentitems",
;       "owner": {
;         "userName": "Joe Sample",
;         "userId": "14602117-2430-4582-8a49-ba8766302272",
;         "email": "admin@chilkatsoft.com"
;       },
;       "folderId": "456f3c76-b265-4453-a024-c39b1a5cb387",
;       "uri": "/folders/456f3c76-b265-4453-a024-c39b1a5cb387",
;       "itemCount": "1",
;       "subFolderCount": "0",
;       "hasSubFolders": "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

Local $sName
Local $sV_type
Local $sOwnerUserName
Local $sOwnerUserId
Local $sOwnerEmail
Local $sFolderId
Local $sUri
Local $sItemCount
Local $subFolderCount
Local $sHasSubFolders

Local $sResultSetSize = $oJResp.StringOf("resultSetSize")
Local $startPosition = $oJResp.StringOf("startPosition")
Local $sEndPosition = $oJResp.StringOf("endPosition")
Local $sTotalSetSize = $oJResp.StringOf("totalSetSize")
Local $i = 0
Local $iCount_i = $oJResp.SizeOfArray("folders")
While $i < $iCount_i
    $oJResp.I = $i
    $sName = $oJResp.StringOf("folders[i].name")
    $sV_type = $oJResp.StringOf("folders[i].type")
    $sOwnerUserName = $oJResp.StringOf("folders[i].owner.userName")
    $sOwnerUserId = $oJResp.StringOf("folders[i].owner.userId")
    $sOwnerEmail = $oJResp.StringOf("folders[i].owner.email")
    $sFolderId = $oJResp.StringOf("folders[i].folderId")
    $sUri = $oJResp.StringOf("folders[i].uri")
    $sItemCount = $oJResp.StringOf("folders[i].itemCount")
    $subFolderCount = $oJResp.StringOf("folders[i].subFolderCount")
    $sHasSubFolders = $oJResp.StringOf("folders[i].hasSubFolders")
    $i = $i + 1
Wend