Chilkat Online Tools

TCL / Zoho CRM REST APIs / Accounts

Back to Collection Items

load ./chilkat.dll

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

set http [new_CkHttp]

# Adds the "Authorization: Bearer <access_token>" header.
CkHttp_put_AuthToken $http "<access_token>"

set sbResponseBody [new_CkStringBuilder]

set success [CkHttp_QuickGetSb $http "https://domain.com/crm/v2/Accounts" $sbResponseBody]
if {$success == 0} then {
    puts [CkHttp_lastErrorText $http]
    delete_CkHttp $http
    delete_CkStringBuilder $sbResponseBody
    exit
}

set jResp [new_CkJsonObject]

CkJsonObject_LoadSb $jResp $sbResponseBody
CkJsonObject_put_EmitCompact $jResp 0

puts "Response Body:"
puts [CkJsonObject_emit $jResp]

set respStatusCode [CkHttp_get_LastStatus $http]
puts "Response Status Code = $respStatusCode"
if {$respStatusCode >= 400} then {
    puts "Response Header:"
    puts [CkHttp_lastHeader $http]
    puts "Failed."
    delete_CkHttp $http
    delete_CkStringBuilder $sbResponseBody
    delete_CkJsonObject $jResp
    exit
}

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

# {
#   "data": [
#     {
#       "Owner": {
#         "name": "Patricia Boyle",
#         "id": "738964000000291009",
#         "email": "patricia.ss@zylker.com"
#       },
#       "$currency_symbol": "Af",
#       "Account_Type": null,
#       "SIC_Code": null,
#       "Last_Activity_Time": "2021-05-07T06:19:49+00:00",
#       "Industry": null,
#       "Account_Site": null,
#       "$state": "save",
#       "$process_flow": false,
#       "Exchange_Rate": 1,
#       "Billing_Country": null,
#       "Currency": "AFN",
#       "id": "738964000002058030",
#       "$approved": true,
#       "$approval": {
#         "delegate": false,
#         "approve": false,
#         "reject": false,
#         "resubmit": false
#       },
#       "Billing_Street": null,
#       "Created_Time": "2021-04-21T08:53:58+00:00",
#       "$editable": true,
#       "Billing_Code": "1234",
#       "Shipping_City": null,
#       "Shipping_Country": null,
#       "Shipping_Code": null,
#       "Billing_City": null,
#       "Created_By": {
#         "name": "Patricia Boyle",
#         "id": "738964000000291009",
#         "email": "patricia.ss@zylker.com"
#       },
#       "Annual_Revenue": 1,
#       "Shipping_Street": null,
#       "territory_updated_time": null,
#       "Ownership": null,
#       "Description": null,
#       "Rating": null,
#       "Shipping_State": null,
#       "$review_process": {
#         "approve": false,
#         "reject": false,
#         "resubmit": false
#       },
#       "Website": "https://yaythisworked.com",
#       "Employees": null,
#       "Record_Image": null,
#       "Modified_By": {
#         "name": "Patricia Boyle",
#         "id": "738964000000291009",
#         "email": "patricia.ss@zylker.com"
#       },
#       "$review": null,
#       "Phone": null,
#       "Account_Name": "Villa Margarita",
#       "Account_Number": "0",
#       "Ticker_Symbol": null,
#       "Modified_Time": "2021-05-07T06:19:48+00:00",
#       "Territories": [
#         "South Zone"
#       ],
#       "$orchestration": false,
#       "Parent_Account": null,
#       "$in_merge": false,
#       "Billing_State": "Colorado",
#       "Tag": [
#       ],
#       "Fax": null,
#       "$approval_state": "approved"
#     }
#   ],
#   "info": {
#     "per_page": 200,
#     "count": 1,
#     "page": 1,
#     "more_records": false
#   }
# }

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

set Per_page [CkJsonObject_IntOf $jResp "info.per_page"]
set Count [CkJsonObject_IntOf $jResp "info.count"]
set Page [CkJsonObject_IntOf $jResp "info.page"]
set More_records [CkJsonObject_BoolOf $jResp "info.more_records"]
set i 0
set count_i [CkJsonObject_SizeOfArray $jResp "data"]
while {$i < $count_i} {
    CkJsonObject_put_I $jResp $i
    set Name [CkJsonObject_stringOf $jResp "data[i].Owner.name"]
    set Id [CkJsonObject_stringOf $jResp "data[i].Owner.id"]
    set v_Email [CkJsonObject_stringOf $jResp "data[i].Owner.email"]
    set Scurrency_symbol [CkJsonObject_stringOf $jResp "data[i].$currency_symbol"]
    set Account_Type [CkJsonObject_stringOf $jResp "data[i].Account_Type"]
    set SIC_Code [CkJsonObject_stringOf $jResp "data[i].SIC_Code"]
    set Last_Activity_Time [CkJsonObject_stringOf $jResp "data[i].Last_Activity_Time"]
    set Industry [CkJsonObject_stringOf $jResp "data[i].Industry"]
    set Account_Site [CkJsonObject_stringOf $jResp "data[i].Account_Site"]
    set Sstate [CkJsonObject_stringOf $jResp "data[i].$state"]
    set Sprocess_flow [CkJsonObject_BoolOf $jResp "data[i].$process_flow"]
    set Exchange_Rate [CkJsonObject_IntOf $jResp "data[i].Exchange_Rate"]
    set Billing_Country [CkJsonObject_stringOf $jResp "data[i].Billing_Country"]
    set v_Currency [CkJsonObject_stringOf $jResp "data[i].Currency"]
    set id [CkJsonObject_stringOf $jResp "data[i].id"]
    set Sapproved [CkJsonObject_BoolOf $jResp "data[i].$approved"]
    set Delegate [CkJsonObject_BoolOf $jResp "data[i].$approval.delegate"]
    set Approve [CkJsonObject_BoolOf $jResp "data[i].$approval.approve"]
    set Reject [CkJsonObject_BoolOf $jResp "data[i].$approval.reject"]
    set Resubmit [CkJsonObject_BoolOf $jResp "data[i].$approval.resubmit"]
    set Billing_Street [CkJsonObject_stringOf $jResp "data[i].Billing_Street"]
    set Created_Time [CkJsonObject_stringOf $jResp "data[i].Created_Time"]
    set Seditable [CkJsonObject_BoolOf $jResp "data[i].$editable"]
    set Billing_Code [CkJsonObject_stringOf $jResp "data[i].Billing_Code"]
    set Shipping_City [CkJsonObject_stringOf $jResp "data[i].Shipping_City"]
    set Shipping_Country [CkJsonObject_stringOf $jResp "data[i].Shipping_Country"]
    set Shipping_Code [CkJsonObject_stringOf $jResp "data[i].Shipping_Code"]
    set Billing_City [CkJsonObject_stringOf $jResp "data[i].Billing_City"]
    set Created_ByName [CkJsonObject_stringOf $jResp "data[i].Created_By.name"]
    set Created_ById [CkJsonObject_stringOf $jResp "data[i].Created_By.id"]
    set Created_ByEmail [CkJsonObject_stringOf $jResp "data[i].Created_By.email"]
    set Annual_Revenue [CkJsonObject_IntOf $jResp "data[i].Annual_Revenue"]
    set Shipping_Street [CkJsonObject_stringOf $jResp "data[i].Shipping_Street"]
    set territory_updated_time [CkJsonObject_stringOf $jResp "data[i].territory_updated_time"]
    set Ownership [CkJsonObject_stringOf $jResp "data[i].Ownership"]
    set Description [CkJsonObject_stringOf $jResp "data[i].Description"]
    set Rating [CkJsonObject_stringOf $jResp "data[i].Rating"]
    set Shipping_State [CkJsonObject_stringOf $jResp "data[i].Shipping_State"]
    set Sreview_processApprove [CkJsonObject_BoolOf $jResp "data[i].$review_process.approve"]
    set Sreview_processReject [CkJsonObject_BoolOf $jResp "data[i].$review_process.reject"]
    set Sreview_processResubmit [CkJsonObject_BoolOf $jResp "data[i].$review_process.resubmit"]
    set Website [CkJsonObject_stringOf $jResp "data[i].Website"]
    set Employees [CkJsonObject_stringOf $jResp "data[i].Employees"]
    set Record_Image [CkJsonObject_stringOf $jResp "data[i].Record_Image"]
    set Modified_ByName [CkJsonObject_stringOf $jResp "data[i].Modified_By.name"]
    set Modified_ById [CkJsonObject_stringOf $jResp "data[i].Modified_By.id"]
    set Modified_ByEmail [CkJsonObject_stringOf $jResp "data[i].Modified_By.email"]
    set Sreview [CkJsonObject_stringOf $jResp "data[i].$review"]
    set Phone [CkJsonObject_stringOf $jResp "data[i].Phone"]
    set Account_Name [CkJsonObject_stringOf $jResp "data[i].Account_Name"]
    set Account_Number [CkJsonObject_stringOf $jResp "data[i].Account_Number"]
    set Ticker_Symbol [CkJsonObject_stringOf $jResp "data[i].Ticker_Symbol"]
    set Modified_Time [CkJsonObject_stringOf $jResp "data[i].Modified_Time"]
    set Sorchestration [CkJsonObject_BoolOf $jResp "data[i].$orchestration"]
    set Parent_Account [CkJsonObject_stringOf $jResp "data[i].Parent_Account"]
    set Sin_merge [CkJsonObject_BoolOf $jResp "data[i].$in_merge"]
    set Billing_State [CkJsonObject_stringOf $jResp "data[i].Billing_State"]
    set Fax [CkJsonObject_stringOf $jResp "data[i].Fax"]
    set Sapproval_state [CkJsonObject_stringOf $jResp "data[i].$approval_state"]
    set j 0
    set count_j [CkJsonObject_SizeOfArray $jResp "data[i].Territories"]
    while {$j < $count_j} {
        CkJsonObject_put_J $jResp $j
        set strVal [CkJsonObject_stringOf $jResp "data[i].Territories[j]"]
        set j [expr $j + 1]
    }
    set j 0
    set count_j [CkJsonObject_SizeOfArray $jResp "data[i].Tag"]
    while {$j < $count_j} {
        CkJsonObject_put_J $jResp $j
        set j [expr $j + 1]
    }
    set i [expr $i + 1]
}

delete_CkHttp $http
delete_CkStringBuilder $sbResponseBody
delete_CkJsonObject $jResp

Curl Command

curl -X GET
	-H "Authorization: Bearer <access_token>"
https://domain.com/crm/v2/Accounts

Postman Collection Item JSON

{
  "name": "Accounts",
  "request": {
    "auth": {
      "type": "bearer",
      "bearer": [
        {
          "key": "token",
          "value": "{{access-token}}",
          "type": "string"
        }
      ]
    },
    "method": "GET",
    "header": [
    ],
    "url": {
      "raw": "{{api-domain}}/crm/v2/Accounts",
      "host": [
        "{{api-domain}}"
      ],
      "path": [
        "crm",
        "v2",
        "Accounts"
      ]
    },
    "description": "To get the list of available records in the Accounts module."
  },
  "response": [
    {
      "name": "P8: territory_id",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{api-domain}}/crm/v2/Accounts?territory_id=738964000001977355",
          "host": [
            "{{api-domain}}"
          ],
          "path": [
            "crm",
            "v2",
            "Accounts"
          ],
          "query": [
            {
              "key": "territory_id",
              "value": "738964000001977355"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Server",
          "value": "ZGS"
        },
        {
          "key": "Date",
          "value": "Tue, 11 May 2021 12:37:14 GMT"
        },
        {
          "key": "Content-Type",
          "value": "application/json;charset=utf-8"
        },
        {
          "key": "Transfer-Encoding",
          "value": "chunked"
        },
        {
          "key": "Connection",
          "value": "keep-alive"
        },
        {
          "key": "Referrer-Policy",
          "value": "strict-origin"
        },
        {
          "key": "X-Content-Type-Options",
          "value": "nosniff"
        },
        {
          "key": "X-XSS-Protection",
          "value": "1; mode=block"
        },
        {
          "key": "Pragma",
          "value": "no-cache"
        },
        {
          "key": "Cache-Control",
          "value": "no-store, no-cache, must-revalidate, private"
        },
        {
          "key": "Expires",
          "value": "Thu, 01 Jan 1970 00:00:00 GMT"
        },
        {
          "key": "X-Frame-Options",
          "value": "SAMEORIGIN"
        },
        {
          "key": "X-ACCESSTOKEN-RESET",
          "value": "2021-05-11T12:57:36+00:00"
        },
        {
          "key": "clientVersion",
          "value": "4023320"
        },
        {
          "key": "clientsubVersion",
          "value": "4d8b6ee4f7d1d284c930a4e807480c5c"
        },
        {
          "key": "Content-Disposition",
          "value": "attachment; filename=response.json"
        },
        {
          "key": "vary",
          "value": "accept-encoding"
        },
        {
          "key": "Content-Encoding",
          "value": "gzip"
        },
        {
          "key": "Content-Language",
          "value": "en-US"
        },
        {
          "key": "Strict-Transport-Security",
          "value": "max-age=15768000"
        }
      ],
      "cookie": [
      ],
      "body": "{\n    \"data\": [\n        {\n            \"Owner\": {\n                \"name\": \"Patricia Boyle\",\n                \"id\": \"738964000000291009\",\n                \"email\": \"patricia.ss@zylker.com\"\n            },\n            \"$currency_symbol\": \"Af\",\n            \"Account_Type\": null,\n            \"SIC_Code\": null,\n            \"Last_Activity_Time\": \"2021-05-07T06:19:49+00:00\",\n            \"Industry\": null,\n            \"Account_Site\": null,\n            \"$state\": \"save\",\n            \"$process_flow\": false,\n            \"Exchange_Rate\": 1,\n            \"Billing_Country\": null,\n            \"Currency\": \"AFN\",\n            \"id\": \"738964000002058030\",\n            \"$approved\": true,\n            \"$approval\": {\n                \"delegate\": false,\n                \"approve\": false,\n                \"reject\": false,\n                \"resubmit\": false\n            },\n            \"Billing_Street\": null,\n            \"Created_Time\": \"2021-04-21T08:53:58+00:00\",\n            \"$editable\": true,\n            \"Billing_Code\": \"1234\",\n            \"Shipping_City\": null,\n            \"Shipping_Country\": null,\n            \"Shipping_Code\": null,\n            \"Billing_City\": null,\n            \"Created_By\": {\n                \"name\": \"Patricia Boyle\",\n                \"id\": \"738964000000291009\",\n                \"email\": \"patricia.ss@zylker.com\"\n            },\n            \"Annual_Revenue\": 1,\n            \"Shipping_Street\": null,\n            \"territory_updated_time\": null,\n            \"Ownership\": null,\n            \"Description\": null,\n            \"Rating\": null,\n            \"Shipping_State\": null,\n            \"$review_process\": {\n                \"approve\": false,\n                \"reject\": false,\n                \"resubmit\": false\n            },\n            \"Website\": \"https://yaythisworked.com\",\n            \"Employees\": null,\n            \"Record_Image\": null,\n            \"Modified_By\": {\n                \"name\": \"Patricia Boyle\",\n                \"id\": \"738964000000291009\",\n                \"email\": \"patricia.ss@zylker.com\"\n            },\n            \"$review\": null,\n            \"Phone\": null,\n            \"Account_Name\": \"Villa Margarita\",\n            \"Account_Number\": \"0\",\n            \"Ticker_Symbol\": null,\n            \"Modified_Time\": \"2021-05-07T06:19:48+00:00\",\n            \"Territories\": [\n                \"South Zone\"\n            ],\n            \"$orchestration\": false,\n            \"Parent_Account\": null,\n            \"$in_merge\": false,\n            \"Billing_State\": \"Colorado\",\n            \"Tag\": [],\n            \"Fax\": null,\n            \"$approval_state\": \"approved\"\n        }\n    ],\n    \"info\": {\n        \"per_page\": 200,\n        \"count\": 1,\n        \"page\": 1,\n        \"more_records\": false\n    }\n}"
    },
    {
      "name": "P9: include_child",
      "originalRequest": {
        "method": "GET",
        "header": [
        ],
        "url": {
          "raw": "{{api-domain}}/crm/v2/Accounts?territory_id=738964000001977355&include_child=true",
          "host": [
            "{{api-domain}}"
          ],
          "path": [
            "crm",
            "v2",
            "Accounts"
          ],
          "query": [
            {
              "key": "territory_id",
              "value": "738964000001977355"
            },
            {
              "key": "include_child",
              "value": "true"
            }
          ]
        }
      },
      "status": "OK",
      "code": 200,
      "_postman_previewlanguage": "json",
      "header": [
        {
          "key": "Server",
          "value": "ZGS"
        },
        {
          "key": "Date",
          "value": "Tue, 11 May 2021 12:37:35 GMT"
        },
        {
          "key": "Content-Type",
          "value": "application/json;charset=utf-8"
        },
        {
          "key": "Transfer-Encoding",
          "value": "chunked"
        },
        {
          "key": "Connection",
          "value": "keep-alive"
        },
        {
          "key": "Referrer-Policy",
          "value": "strict-origin"
        },
        {
          "key": "X-Content-Type-Options",
          "value": "nosniff"
        },
        {
          "key": "X-XSS-Protection",
          "value": "1; mode=block"
        },
        {
          "key": "Pragma",
          "value": "no-cache"
        },
        {
          "key": "Cache-Control",
          "value": "no-store, no-cache, must-revalidate, private"
        },
        {
          "key": "Expires",
          "value": "Thu, 01 Jan 1970 00:00:00 GMT"
        },
        {
          "key": "X-Frame-Options",
          "value": "SAMEORIGIN"
        },
        {
          "key": "X-ACCESSTOKEN-RESET",
          "value": "2021-05-11T12:57:36+00:00"
        },
        {
          "key": "clientVersion",
          "value": "4023320"
        },
        {
          "key": "clientsubVersion",
          "value": "4d8b6ee4f7d1d284c930a4e807480c5c"
        },
        {
          "key": "Content-Disposition",
          "value": "attachment; filename=response.json"
        },
        {
          "key": "vary",
          "value": "accept-encoding"
        },
        {
          "key": "Content-Encoding",
          "value": "gzip"
        },
        {
          "key": "Content-Language",
          "value": "en-US"
        },
        {
          "key": "Strict-Transport-Security",
          "value": "max-age=15768000"
        }
      ],
      "cookie": [
      ],
      "body": "{\n    \"data\": [\n        {\n            \"Owner\": {\n                \"name\": \"Patricia Boyle\",\n                \"id\": \"738964000000291009\",\n                \"email\": \"patricia.ss@zylker.com\"\n            },\n            \"$currency_symbol\": \"Af\",\n            \"Account_Type\": null,\n            \"SIC_Code\": null,\n            \"Last_Activity_Time\": \"2021-05-07T06:19:49+00:00\",\n            \"Industry\": null,\n            \"Account_Site\": null,\n            \"$state\": \"save\",\n            \"$process_flow\": false,\n            \"Exchange_Rate\": 1,\n            \"Billing_Country\": null,\n            \"Currency\": \"AFN\",\n            \"id\": \"738964000002058030\",\n            \"$approved\": true,\n            \"$approval\": {\n                \"delegate\": false,\n                \"approve\": false,\n                \"reject\": false,\n                \"resubmit\": false\n            },\n            \"Billing_Street\": null,\n            \"Created_Time\": \"2021-04-21T08:53:58+00:00\",\n            \"$editable\": true,\n            \"Billing_Code\": \"1234\",\n            \"Shipping_City\": null,\n            \"Shipping_Country\": null,\n            \"Shipping_Code\": null,\n            \"Billing_City\": null,\n            \"Created_By\": {\n                \"name\": \"Patricia Boyle\",\n                \"id\": \"738964000000291009\",\n                \"email\": \"patricia.ss@zylker.com\"\n            },\n            \"Annual_Revenue\": 1,\n            \"Shipping_Street\": null,\n            \"territory_updated_time\": null,\n            \"Ownership\": null,\n            \"Description\": null,\n            \"Rating\": null,\n            \"Shipping_State\": null,\n            \"$review_process\": {\n                \"approve\": false,\n                \"reject\": false,\n                \"resubmit\": false\n            },\n            \"Website\": \"https://yaythisworked.com\",\n            \"Employees\": null,\n            \"Record_Image\": null,\n            \"Modified_By\": {\n                \"name\": \"Patricia Boyle\",\n                \"id\": \"738964000000291009\",\n                \"email\": \"patricia.ss@zylker.com\"\n            },\n            \"$review\": null,\n            \"Phone\": null,\n            \"Account_Name\": \"Villa Margarita\",\n            \"Account_Number\": \"0\",\n            \"Ticker_Symbol\": null,\n            \"Modified_Time\": \"2021-05-07T06:19:48+00:00\",\n            \"Territories\": [\n                \"South Zone\"\n            ],\n            \"$orchestration\": false,\n            \"Parent_Account\": null,\n            \"$in_merge\": false,\n            \"Billing_State\": \"Colorado\",\n            \"Tag\": [],\n            \"Fax\": null,\n            \"$approval_state\": \"approved\"\n        }\n    ],\n    \"info\": {\n        \"per_page\": 200,\n        \"count\": 1,\n        \"page\": 1,\n        \"more_records\": false\n    }\n}"
    }
  ]
}