Back to Collection Items
func chilkatTest() {
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
let http = CkoHttp()!
var success: Bool
// Adds the "Authorization: Bearer <access_token>" header.
http.authToken = "<access_token>"
let sbResponseBody = CkoStringBuilder()!
success = http.quickGetSb("https://domain.com/crm/v2.1/Accounts/4150868000004395059", sbContent: sbResponseBody)
if success == false {
print("\(http.lastErrorText!)")
return
}
let jResp = CkoJsonObject()!
jResp.loadSb(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)
// {
// "data": [
// {
// "Owner": {
// "name": "Patricia Boyle",
// "id": "4150868000000225013",
// "email": "patricia.ss@zylker.com"
// },
// "$currency_symbol": "DA",
// "Account_Type": "Analyst",
// "SIC_Code": null,
// "$sharing_permission": "full_access",
// "Last_Activity_Time": "2021-03-09T13:31:06+05:30",
// "Industry": null,
// "Account_Site": null,
// "$state": "save",
// "$process_flow": false,
// "Exchange_Rate": 3,
// "Currency": "DZD",
// "Billing_Country": null,
// "id": "4150868000004395059",
// "$approved": true,
// "$approval": {
// "delegate": false,
// "approve": false,
// "reject": false,
// "resubmit": false
// },
// "Billing_Street": null,
// "Created_Time": "2021-01-22T10:44:07+05:30",
// "$editable": true,
// "Billing_Code": null,
// "Shipping_City": null,
// "Shipping_Country": null,
// "Shipping_Code": null,
// "Billing_City": null,
// "Created_By": {
// "name": "Patricia Boyle",
// "id": "4150868000000225013",
// "email": "patricia.ss@zylker.com"
// },
// "Annual_Revenue": null,
// "Stakeholders": [
// ],
// "Shipping_Street": null,
// "Ownership": null,
// "Description": null,
// "Rating": null,
// "Shipping_State": null,
// "$review_process": {
// "approve": false,
// "reject": false,
// "resubmit": false
// },
// "Website": null,
// "Employees": null,
// "$canvas_id": null,
// "Record_Image": null,
// "Modified_By": {
// "name": "Patricia Boyle",
// "id": "4150868000000225013",
// "email": "patricia.ss@zylker.com"
// },
// "$review": null,
// "Phone": null,
// "Account_Name": "Sample Account",
// "Account_Number": "0",
// "multiuserlookup": [
// ],
// "Ticker_Symbol": null,
// "Modified_Time": "2021-01-25T14:09:56+05:30",
// "Territories": [
// {
// "$assigned": "automatically",
// "$assigned_time": "2021-01-22T10:44:07+05:30",
// "id": "4150868000000264087",
// "$assigned_by": null,
// "Name": "Sample for API testing"
// },
// {
// "$assigned": "automatically",
// "$assigned_time": "2021-01-22T10:44:07+05:30",
// "id": "4150868000001390007",
// "$assigned_by": null,
// "Name": "sample"
// },
// {
// "$assigned": "automatically",
// "$assigned_time": "2021-01-22T10:44:07+05:30",
// "id": "4150868000003259003",
// "$assigned_by": null,
// "Name": "mass delete"
// },
// {
// "$assigned": "automatically",
// "$assigned_time": "2021-03-04T12:18:55+05:30",
// "id": "4150868000004822544",
// "$assigned_by": null,
// "Name": "leads"
// },
// {
// "$assigned": "manually",
// "$assigned_time": "2021-04-29T17:27:28+05:30",
// "id": "4150868000005232017",
// "$assigned_by": {
// "name": "Patricia Boyle",
// "id": "4150868000000225013"
// },
// "Name": "sample 8"
// }
// ],
// "$orchestration": false,
// "Parent_Account": null,
// "Contacts": null,
// "Layout": {
// "name": "Standard",
// "id": "4150868000000091029"
// },
// "$in_merge": false,
// "Contact_Details": [
// ],
// "Total": null,
// "Billing_State": null,
// "Tag": [
// ],
// "Fax": null,
// "$approval_state": "approved",
// "$has_more": {
// "multiuserlookup": false
// }
// }
// ]
// }
// Sample code for parsing the JSON response...
// Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
var Name: String?
var Id: String?
var v_Email: String?
var Scurrency_symbol: String?
var Account_Type: String?
var SIC_Code: String?
var Ssharing_permission: String?
var Last_Activity_Time: String?
var Industry: String?
var Account_Site: String?
var Sstate: String?
var Sprocess_flow: Bool
var Exchange_Rate: Int
var v_Currency: String?
var Billing_Country: String?
var id: String?
var Sapproved: Bool
var Delegate: Bool
var Approve: Bool
var Reject: Bool
var Resubmit: Bool
var Billing_Street: String?
var Created_Time: String?
var Seditable: Bool
var Billing_Code: String?
var Shipping_City: String?
var Shipping_Country: String?
var Shipping_Code: String?
var Billing_City: String?
var Created_ByName: String?
var Created_ById: String?
var Created_ByEmail: String?
var Annual_Revenue: String?
var Shipping_Street: String?
var Ownership: String?
var Description: String?
var Rating: String?
var Shipping_State: String?
var Sreview_processApprove: Bool
var Sreview_processReject: Bool
var Sreview_processResubmit: Bool
var Website: String?
var Employees: String?
var Scanvas_id: String?
var Record_Image: String?
var Modified_ByName: String?
var Modified_ById: String?
var Modified_ByEmail: String?
var Sreview: String?
var Phone: String?
var Account_Name: String?
var Account_Number: String?
var Ticker_Symbol: String?
var Modified_Time: String?
var Sorchestration: Bool
var Parent_Account: String?
var Contacts: String?
var LayoutName: String?
var LayoutId: String?
var Sin_merge: Bool
var Total: String?
var Billing_State: String?
var Fax: String?
var Sapproval_state: String?
var Multiuserlookup: Bool
var j: Int
var count_j: Int
var Sassigned: String?
var Sassigned_time: String?
var Sassigned_by: String?
var Sassigned_byName: String?
var Sassigned_byId: String?
var i: Int = 0
var count_i: Int = jResp.size(ofArray: "data").intValue
while i < count_i {
jResp.i = i
Name = jResp.string(of: "data[i].Owner.name")
Id = jResp.string(of: "data[i].Owner.id")
v_Email = jResp.string(of: "data[i].Owner.email")
Scurrency_symbol = jResp.string(of: "data[i].$currency_symbol")
Account_Type = jResp.string(of: "data[i].Account_Type")
SIC_Code = jResp.string(of: "data[i].SIC_Code")
Ssharing_permission = jResp.string(of: "data[i].$sharing_permission")
Last_Activity_Time = jResp.string(of: "data[i].Last_Activity_Time")
Industry = jResp.string(of: "data[i].Industry")
Account_Site = jResp.string(of: "data[i].Account_Site")
Sstate = jResp.string(of: "data[i].$state")
Sprocess_flow = jResp.bool(of: "data[i].$process_flow")
Exchange_Rate = jResp.int(of: "data[i].Exchange_Rate").intValue
v_Currency = jResp.string(of: "data[i].Currency")
Billing_Country = jResp.string(of: "data[i].Billing_Country")
id = jResp.string(of: "data[i].id")
Sapproved = jResp.bool(of: "data[i].$approved")
Delegate = jResp.bool(of: "data[i].$approval.delegate")
Approve = jResp.bool(of: "data[i].$approval.approve")
Reject = jResp.bool(of: "data[i].$approval.reject")
Resubmit = jResp.bool(of: "data[i].$approval.resubmit")
Billing_Street = jResp.string(of: "data[i].Billing_Street")
Created_Time = jResp.string(of: "data[i].Created_Time")
Seditable = jResp.bool(of: "data[i].$editable")
Billing_Code = jResp.string(of: "data[i].Billing_Code")
Shipping_City = jResp.string(of: "data[i].Shipping_City")
Shipping_Country = jResp.string(of: "data[i].Shipping_Country")
Shipping_Code = jResp.string(of: "data[i].Shipping_Code")
Billing_City = jResp.string(of: "data[i].Billing_City")
Created_ByName = jResp.string(of: "data[i].Created_By.name")
Created_ById = jResp.string(of: "data[i].Created_By.id")
Created_ByEmail = jResp.string(of: "data[i].Created_By.email")
Annual_Revenue = jResp.string(of: "data[i].Annual_Revenue")
Shipping_Street = jResp.string(of: "data[i].Shipping_Street")
Ownership = jResp.string(of: "data[i].Ownership")
Description = jResp.string(of: "data[i].Description")
Rating = jResp.string(of: "data[i].Rating")
Shipping_State = jResp.string(of: "data[i].Shipping_State")
Sreview_processApprove = jResp.bool(of: "data[i].$review_process.approve")
Sreview_processReject = jResp.bool(of: "data[i].$review_process.reject")
Sreview_processResubmit = jResp.bool(of: "data[i].$review_process.resubmit")
Website = jResp.string(of: "data[i].Website")
Employees = jResp.string(of: "data[i].Employees")
Scanvas_id = jResp.string(of: "data[i].$canvas_id")
Record_Image = jResp.string(of: "data[i].Record_Image")
Modified_ByName = jResp.string(of: "data[i].Modified_By.name")
Modified_ById = jResp.string(of: "data[i].Modified_By.id")
Modified_ByEmail = jResp.string(of: "data[i].Modified_By.email")
Sreview = jResp.string(of: "data[i].$review")
Phone = jResp.string(of: "data[i].Phone")
Account_Name = jResp.string(of: "data[i].Account_Name")
Account_Number = jResp.string(of: "data[i].Account_Number")
Ticker_Symbol = jResp.string(of: "data[i].Ticker_Symbol")
Modified_Time = jResp.string(of: "data[i].Modified_Time")
Sorchestration = jResp.bool(of: "data[i].$orchestration")
Parent_Account = jResp.string(of: "data[i].Parent_Account")
Contacts = jResp.string(of: "data[i].Contacts")
LayoutName = jResp.string(of: "data[i].Layout.name")
LayoutId = jResp.string(of: "data[i].Layout.id")
Sin_merge = jResp.bool(of: "data[i].$in_merge")
Total = jResp.string(of: "data[i].Total")
Billing_State = jResp.string(of: "data[i].Billing_State")
Fax = jResp.string(of: "data[i].Fax")
Sapproval_state = jResp.string(of: "data[i].$approval_state")
Multiuserlookup = jResp.bool(of: "data[i].$has_more.multiuserlookup")
j = 0
count_j = jResp.size(ofArray: "data[i].Stakeholders").intValue
while j < count_j {
jResp.j = j
j = j + 1
}
j = 0
count_j = jResp.size(ofArray: "data[i].multiuserlookup").intValue
while j < count_j {
jResp.j = j
j = j + 1
}
j = 0
count_j = jResp.size(ofArray: "data[i].Territories").intValue
while j < count_j {
jResp.j = j
Sassigned = jResp.string(of: "data[i].Territories[j].$assigned")
Sassigned_time = jResp.string(of: "data[i].Territories[j].$assigned_time")
id = jResp.string(of: "data[i].Territories[j].id")
Sassigned_by = jResp.string(of: "data[i].Territories[j].$assigned_by")
Name = jResp.string(of: "data[i].Territories[j].Name")
Sassigned_byName = jResp.string(of: "data[i].Territories[j].$assigned_by.name")
Sassigned_byId = jResp.string(of: "data[i].Territories[j].$assigned_by.id")
j = j + 1
}
j = 0
count_j = jResp.size(ofArray: "data[i].Contact_Details").intValue
while j < count_j {
jResp.j = j
j = j + 1
}
j = 0
count_j = jResp.size(ofArray: "data[i].Tag").intValue
while j < count_j {
jResp.j = j
j = j + 1
}
i = i + 1
}
}
Curl Command
curl -X GET
-H "Authorization: Bearer <access_token>"
https://domain.com/crm/v2.1/Accounts/4150868000004395059
Postman Collection Item JSON
{
"name": "Get Territories Assigned",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{access-token}}",
"type": "string"
}
]
},
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2.1/Accounts/4150868000004395059",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Accounts",
"4150868000004395059"
]
},
"description": "To get the details of the territories assigned to a record."
},
"response": [
{
"name": "SUCCESS RESPONSE",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2.1/Accounts/4150868000004395059",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Accounts",
"4150868000004395059"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Mon, 03 May 2021 11:27:25 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-cache"
},
{
"key": "Expires",
"value": "Thu, 01 Jan 1970 00:00:00 GMT"
},
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
},
{
"key": "Set-Cookie",
"value": "listview_enabled=true;Path=/"
},
{
"key": "X-ACCESSTOKEN-RESET",
"value": "2021-05-03T17:48:32+05:30"
},
{
"key": "clientVersion",
"value": "4000204"
},
{
"key": "clientsubVersion",
"value": "9875f452294f1c73e02cebb497ee077e"
},
{
"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=63072000"
}
],
"cookie": [
],
"body": "{\n \"data\": [\n {\n \"Owner\": {\n \"name\": \"Patricia Boyle\",\n \"id\": \"4150868000000225013\",\n \"email\": \"patricia.ss@zylker.com\"\n },\n \"$currency_symbol\": \"DA\",\n \"Account_Type\": \"Analyst\",\n \"SIC_Code\": null,\n \"$sharing_permission\": \"full_access\",\n \"Last_Activity_Time\": \"2021-03-09T13:31:06+05:30\",\n \"Industry\": null,\n \"Account_Site\": null,\n \"$state\": \"save\",\n \"$process_flow\": false,\n \"Exchange_Rate\": 3,\n \"Currency\": \"DZD\",\n \"Billing_Country\": null,\n \"id\": \"4150868000004395059\",\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-01-22T10:44:07+05:30\",\n \"$editable\": true,\n \"Billing_Code\": null,\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\": \"4150868000000225013\",\n \"email\": \"patricia.ss@zylker.com\"\n },\n \"Annual_Revenue\": null,\n \"Stakeholders\": [],\n \"Shipping_Street\": 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\": null,\n \"Employees\": null,\n \"$canvas_id\": null,\n \"Record_Image\": null,\n \"Modified_By\": {\n \"name\": \"Patricia Boyle\",\n \"id\": \"4150868000000225013\",\n \"email\": \"patricia.ss@zylker.com\"\n },\n \"$review\": null,\n \"Phone\": null,\n \"Account_Name\": \"Sample Account\",\n \"Account_Number\": \"0\",\n \"multiuserlookup\": [],\n \"Ticker_Symbol\": null,\n \"Modified_Time\": \"2021-01-25T14:09:56+05:30\",\n \"Territories\": [\n {\n \"$assigned\": \"automatically\",\n \"$assigned_time\": \"2021-01-22T10:44:07+05:30\",\n \"id\": \"4150868000000264087\",\n \"$assigned_by\": null,\n \"Name\": \"Sample for API testing\"\n },\n {\n \"$assigned\": \"automatically\",\n \"$assigned_time\": \"2021-01-22T10:44:07+05:30\",\n \"id\": \"4150868000001390007\",\n \"$assigned_by\": null,\n \"Name\": \"sample\"\n },\n {\n \"$assigned\": \"automatically\",\n \"$assigned_time\": \"2021-01-22T10:44:07+05:30\",\n \"id\": \"4150868000003259003\",\n \"$assigned_by\": null,\n \"Name\": \"mass delete\"\n },\n {\n \"$assigned\": \"automatically\",\n \"$assigned_time\": \"2021-03-04T12:18:55+05:30\",\n \"id\": \"4150868000004822544\",\n \"$assigned_by\": null,\n \"Name\": \"leads\"\n },\n {\n \"$assigned\": \"manually\",\n \"$assigned_time\": \"2021-04-29T17:27:28+05:30\",\n \"id\": \"4150868000005232017\",\n \"$assigned_by\": {\n \"name\": \"Patricia Boyle\",\n \"id\": \"4150868000000225013\"\n },\n \"Name\": \"sample 8\"\n }\n ],\n \"$orchestration\": false,\n \"Parent_Account\": null,\n \"Contacts\": null,\n \"Layout\": {\n \"name\": \"Standard\",\n \"id\": \"4150868000000091029\"\n },\n \"$in_merge\": false,\n \"Contact_Details\": [],\n \"Total\": null,\n \"Billing_State\": null,\n \"Tag\": [],\n \"Fax\": null,\n \"$approval_state\": \"approved\",\n \"$has_more\": {\n \"multiuserlookup\": false\n }\n }\n ]\n}"
},
{
"name": "INVALID_REQUEST_METHOD",
"originalRequest": {
"method": "POST",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2.1/Accounts/{{account_id}}",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Accounts",
"{{account_id}}"
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Mon, 03 May 2021 11:28:39 GMT"
},
{
"key": "Content-Type",
"value": "application/json;charset=utf-8"
},
{
"key": "Content-Length",
"value": "124"
},
{
"key": "Connection",
"value": "keep-alive"
},
{
"key": "X-Frame-Options",
"value": "deny"
},
{
"key": "X-Download-Options",
"value": "noopen"
},
{
"key": "X-Content-Type-Options",
"value": "nosniff"
}
],
"cookie": [
],
"body": "{\n \"code\": \"INVALID_REQUEST_METHOD\",\n \"details\": {},\n \"message\": \"The http request method type is not a valid one\",\n \"status\": \"error\"\n}"
},
{
"name": "AUTHENTICATION_FAILURE",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2.1/Accounts/4150868000004395059",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Accounts",
"4150868000004395059"
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Mon, 03 May 2021 11:29:27 GMT"
},
{
"key": "Content-Type",
"value": "application/json;charset=utf-8"
},
{
"key": "Content-Length",
"value": "98"
},
{
"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-cache"
},
{
"key": "Expires",
"value": "Thu, 01 Jan 1970 00:00:00 GMT"
},
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
},
{
"key": "X-Download-Options",
"value": "noopen"
}
],
"cookie": [
],
"body": "{\n \"code\": \"AUTHENTICATION_FAILURE\",\n \"details\": {},\n \"message\": \"Authentication failed\",\n \"status\": \"error\"\n}"
},
{
"name": "OAUTH_SCOPE_MISMATCH",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2.1/Accounts/4150868000004395059",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2.1",
"Accounts",
"4150868000004395059"
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Mon, 03 May 2021 11:30:20 GMT"
},
{
"key": "Content-Type",
"value": "application/json;charset=utf-8"
},
{
"key": "Content-Length",
"value": "113"
},
{
"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-cache"
},
{
"key": "Expires",
"value": "Thu, 01 Jan 1970 00:00:00 GMT"
},
{
"key": "X-Frame-Options",
"value": "SAMEORIGIN"
},
{
"key": "X-Download-Options",
"value": "noopen"
}
],
"cookie": [
],
"body": "{\n \"code\": \"OAUTH_SCOPE_MISMATCH\",\n \"details\": {},\n \"message\": \"invalid oauth scope to access this URL\",\n \"status\": \"error\"\n}"
}
]
}