Sample code for 30+ languages & platforms
Lianja

Docusign: Return Brand Data Associated with a User

See more DocuSign Examples

Demonstrates a call using an OAuth2 access token in combination with the account ID for which we have authorization.

Chilkat Lianja Downloads

Lianja
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 CURL command:

// curl --request GET https://account-d.docusign.com/restapi/v2/accounts/18b4799a-xxxx-xxxx-xxxx-b5b4b8a97604/brands --header "Authorization: Bearer eyJ0eXAi.....UE8Kl_V8KroQ"

// Use the following online tool to generate HTTP code from a CURL command
// Convert a cURL Command to HTTP Source Code

// 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 an account ID obtained from DocuSign Get User Account Data
loSbResponseBody = createobject("CkStringBuilder")
llSuccess = loHttp.QuickGetSb("https://account-d.docusign.com/restapi/v2/accounts/18b4799a-xxxx-xxxx-xxxx-b5b4b8a97604/brands",loSbResponseBody)
if (llSuccess = .F.) then
    ? loHttp.LastErrorText
    release loHttp
    release loJsonToken
    release loSbResponseBody
    return
endif

loJson = createobject("CkJsonObject")
loJson.LoadSb(loSbResponseBody)
loJson.EmitCompact = .F.

? "Response Body:"
? loJson.Emit()

lnRespStatusCode = loHttp.LastStatus
? "Response Status Code = " + str(lnRespStatusCode)
if (lnRespStatusCode >= 400) then
    ? "Response Header:"
    ? loHttp.LastHeader
    ? "Failed."
    release loHttp
    release loJsonToken
    release loSbResponseBody
    release loJson
    return
endif

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

// {
//   "recipientBrandIdDefault": "sample string 1",
//   "senderBrandIdDefault": "sample string 2",
//   "brands": [
//     {
//       "brandCompany": "sample string 1",
//       "brandId": "sample string 2",
//       "brandName": "sample string 3",
//       "colors": [
//         {}
//       ],
//       "errorDetails": {
//         "errorCode": "sample string 1",
//         "message": "sample string 2"
//       },
//       "isOverridingCompanyName": "sample string 4",
//       "isSendingDefault": "sample string 5",
//       "isSigningDefault": "sample string 6",
//       "landingPages": [
//         {}
//       ],
//       "links": [
//         {
//           "linkType": "sample string 1",
//           "urlOrMailTo": "sample string 2",
//           "linkText": "sample string 3",
//           "showLink": "sample string 4"
//         }
//       ],
//       "emailContent": [
//         {
//           "emailContentType": "sample string 1",
//           "content": "sample string 2",
//           "emailToLink": "sample string 3",
//           "linkText": "sample string 4"
//         }
//       ],
//       "logos": {
//         "primary": "sample string 1",
//         "secondary": "sample string 2",
//         "email": "sample string 3"
//       },
//       "resources": {
//         "email": "sample string 1",
//         "sending": "sample string 2",
//         "signing": "sample string 3",
//         "signingCaptive": "sample string 4"
//       }
//     }
//   ]
// }

// Sample code for parsing the JSON response...
// Use the following online tool to generate parsing code from sample JSON:
// Generate Parsing Code from JSON

lcRecipientBrandIdDefault = loJson.StringOf("recipientBrandIdDefault")
lcSenderBrandIdDefault = loJson.StringOf("senderBrandIdDefault")
i = 0
lnCount_i = loJson.SizeOfArray("brands")
do while i < lnCount_i
    loJson.I = i
    lcBrandCompany = loJson.StringOf("brands[i].brandCompany")
    lcBrandId = loJson.StringOf("brands[i].brandId")
    lcBrandName = loJson.StringOf("brands[i].brandName")
    lcErrorDetailsErrorCode = loJson.StringOf("brands[i].errorDetails.errorCode")
    lcErrorDetailsMessage = loJson.StringOf("brands[i].errorDetails.message")
    lcIsOverridingCompanyName = loJson.StringOf("brands[i].isOverridingCompanyName")
    lcIsSendingDefault = loJson.StringOf("brands[i].isSendingDefault")
    lcIsSigningDefault = loJson.StringOf("brands[i].isSigningDefault")
    lcLogosPrimary = loJson.StringOf("brands[i].logos.primary")
    lcLogosSecondary = loJson.StringOf("brands[i].logos.secondary")
    lcLogosEmail = loJson.StringOf("brands[i].logos.email")
    lcResourcesEmail = loJson.StringOf("brands[i].resources.email")
    lcResourcesSending = loJson.StringOf("brands[i].resources.sending")
    lcResourcesSigning = loJson.StringOf("brands[i].resources.signing")
    lcResourcesSigningCaptive = loJson.StringOf("brands[i].resources.signingCaptive")
    j = 0
    lnCount_j = loJson.SizeOfArray("brands[i].colors")
    do while j < lnCount_j
        loJson.J = j
        j = j + 1
    enddo
    j = 0
    lnCount_j = loJson.SizeOfArray("brands[i].landingPages")
    do while j < lnCount_j
        loJson.J = j
        j = j + 1
    enddo
    j = 0
    lnCount_j = loJson.SizeOfArray("brands[i].links")
    do while j < lnCount_j
        loJson.J = j
        lcLinkType = loJson.StringOf("brands[i].links[j].linkType")
        lcUrlOrMailTo = loJson.StringOf("brands[i].links[j].urlOrMailTo")
        lcLinkText = loJson.StringOf("brands[i].links[j].linkText")
        lcShowLink = loJson.StringOf("brands[i].links[j].showLink")
        j = j + 1
    enddo
    j = 0
    lnCount_j = loJson.SizeOfArray("brands[i].emailContent")
    do while j < lnCount_j
        loJson.J = j
        lcEmailContentType = loJson.StringOf("brands[i].emailContent[j].emailContentType")
        lcContent = loJson.StringOf("brands[i].emailContent[j].content")
        lcEmailToLink = loJson.StringOf("brands[i].emailContent[j].emailToLink")
        lcLinkText = loJson.StringOf("brands[i].emailContent[j].linkText")
        j = j + 1
    enddo
    i = i + 1
enddo


release loHttp
release loJsonToken
release loSbResponseBody
release loJson