Back to Collection Items
require 'chilkat'
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
http = Chilkat::CkHttp.new()
# Adds the "Authorization: Bearer <access_token>" header.
http.put_AuthToken("<access_token>")
sbResponseBody = Chilkat::CkStringBuilder.new()
success = http.QuickGetSb("https://domain.com/crm/v2/settings/modules/Leads",sbResponseBody)
if (success == false)
print http.lastErrorText() + "\n";
exit
end
jResp = Chilkat::CkJsonObject.new()
jResp.LoadSb(sbResponseBody)
jResp.put_EmitCompact(false)
print "Response Body:" + "\n";
print jResp.emit() + "\n";
respStatusCode = http.get_LastStatus()
print "Response Status Code = " + respStatusCode.to_s() + "\n";
if (respStatusCode >= 400)
print "Response Header:" + "\n";
print http.lastHeader() + "\n";
print "Failed." + "\n";
exit
end
# Sample JSON response:
# (Sample code for parsing the JSON response is shown below)
# {
# "modules": [
# {
# "global_search_supported": true,
# "kanban_view": false,
# "deletable": true,
# "description": null,
# "creatable": true,
# "filter_status": true,
# "inventory_template_supported": false,
# "modified_time": "2021-05-06T06:41:05+00:00",
# "plural_label": "Leads",
# "presence_sub_menu": true,
# "triggers_supported": true,
# "id": "738964000000000125",
# "isBlueprintSupported": true,
# "related_list_properties": {
# "sort_by": null,
# "fields": [
# "Full_Name",
# "Company",
# "Email",
# "Lead_Source",
# "Lead_Status",
# "Phone"
# ],
# "sort_order": null
# },
# "per_page": 10,
# "$properties": [
# "$converted",
# "$approved",
# "$approval_state",
# "$state",
# "$converted_detail",
# "$currency_symbol",
# "$review",
# "$review_process",
# "$approval",
# "$in_merge",
# "$process_flow",
# "$orchestration",
# "$stop_processing",
# "$data_source_details"
# ],
# "visibility": 1,
# "convertable": true,
# "editable": true,
# "emailTemplate_support": true,
# "profiles": [
# {
# "name": "Administrator",
# "id": "738964000000015972"
# },
# {
# "name": "Standard",
# "id": "738964000000015975"
# },
# {
# "name": "Sample",
# "id": "738964000001348001"
# }
# ],
# "filter_supported": true,
# "display_field": "Full_Name",
# "search_layout_fields": [
# "Owner",
# "Company",
# "Email",
# "Full_Name",
# "Phone",
# "Lead_Source"
# ],
# "kanban_view_supported": true,
# "show_as_tab": true,
# "web_link": null,
# "sequence_number": 2,
# "singular_label": "Lead",
# "viewable": true,
# "api_supported": true,
# "api_name": "Leads",
# "quick_create": true,
# "modified_by": {
# "name": "Patricia Boyle",
# "id": "738964000000291009"
# },
# "generated_type": "default",
# "feeds_required": false,
# "scoring_supported": true,
# "webform_supported": true,
# "arguments": [
# ],
# "module_name": "Leads",
# "business_card_field_limit": 5,
# "custom_view": {
# "display_value": "My Leads",
# "shared_type": "all",
# "criteria": {
# "group_operator": "and",
# "group": [
# {
# "comparator": "equal",
# "field": "Owner",
# "value": "${CURRENTUSER}"
# },
# {
# "comparator": "equal",
# "field": "$converted",
# "value": false
# }
# ]
# },
# "system_name": "MYVIEWS",
# "shared_details": null,
# "sort_by": null,
# "offline": true,
# "default": true,
# "system_defined": true,
# "name": "My Leads",
# "id": "738964000000091563",
# "category": "shared_with_me",
# "fields": [
# "Full_Name",
# "Company",
# "Email",
# "Phone",
# "Lead_Source"
# ],
# "favorite": null,
# "sort_order": null
# },
# "parent_module": {}
# }
# ]
# }
# Sample code for parsing the JSON response...
# Use this online tool to generate parsing code from sample JSON: Generate JSON Parsing Code
i = 0
count_i = jResp.SizeOfArray("modules")
while i < count_i
jResp.put_I(i)
global_search_supported = jResp.BoolOf("modules[i].global_search_supported")
kanban_view = jResp.BoolOf("modules[i].kanban_view")
deletable = jResp.BoolOf("modules[i].deletable")
description = jResp.stringOf("modules[i].description")
creatable = jResp.BoolOf("modules[i].creatable")
filter_status = jResp.BoolOf("modules[i].filter_status")
inventory_template_supported = jResp.BoolOf("modules[i].inventory_template_supported")
modified_time = jResp.stringOf("modules[i].modified_time")
plural_label = jResp.stringOf("modules[i].plural_label")
presence_sub_menu = jResp.BoolOf("modules[i].presence_sub_menu")
triggers_supported = jResp.BoolOf("modules[i].triggers_supported")
id = jResp.stringOf("modules[i].id")
isBlueprintSupported = jResp.BoolOf("modules[i].isBlueprintSupported")
Sort_by = jResp.stringOf("modules[i].related_list_properties.sort_by")
Sort_order = jResp.stringOf("modules[i].related_list_properties.sort_order")
per_page = jResp.IntOf("modules[i].per_page")
visibility = jResp.IntOf("modules[i].visibility")
convertable = jResp.BoolOf("modules[i].convertable")
editable = jResp.BoolOf("modules[i].editable")
emailTemplate_support = jResp.BoolOf("modules[i].emailTemplate_support")
filter_supported = jResp.BoolOf("modules[i].filter_supported")
display_field = jResp.stringOf("modules[i].display_field")
kanban_view_supported = jResp.BoolOf("modules[i].kanban_view_supported")
show_as_tab = jResp.BoolOf("modules[i].show_as_tab")
web_link = jResp.stringOf("modules[i].web_link")
sequence_number = jResp.IntOf("modules[i].sequence_number")
singular_label = jResp.stringOf("modules[i].singular_label")
viewable = jResp.BoolOf("modules[i].viewable")
api_supported = jResp.BoolOf("modules[i].api_supported")
api_name = jResp.stringOf("modules[i].api_name")
quick_create = jResp.BoolOf("modules[i].quick_create")
Name = jResp.stringOf("modules[i].modified_by.name")
Id = jResp.stringOf("modules[i].modified_by.id")
generated_type = jResp.stringOf("modules[i].generated_type")
feeds_required = jResp.BoolOf("modules[i].feeds_required")
scoring_supported = jResp.BoolOf("modules[i].scoring_supported")
webform_supported = jResp.BoolOf("modules[i].webform_supported")
module_name = jResp.stringOf("modules[i].module_name")
business_card_field_limit = jResp.IntOf("modules[i].business_card_field_limit")
Display_value = jResp.stringOf("modules[i].custom_view.display_value")
Shared_type = jResp.stringOf("modules[i].custom_view.shared_type")
Group_operator = jResp.stringOf("modules[i].custom_view.criteria.group_operator")
System_name = jResp.stringOf("modules[i].custom_view.system_name")
Shared_details = jResp.stringOf("modules[i].custom_view.shared_details")
custom_viewSort_by = jResp.stringOf("modules[i].custom_view.sort_by")
Offline = jResp.BoolOf("modules[i].custom_view.offline")
Default = jResp.BoolOf("modules[i].custom_view.default")
System_defined = jResp.BoolOf("modules[i].custom_view.system_defined")
custom_viewName = jResp.stringOf("modules[i].custom_view.name")
custom_viewId = jResp.stringOf("modules[i].custom_view.id")
Category = jResp.stringOf("modules[i].custom_view.category")
Favorite = jResp.stringOf("modules[i].custom_view.favorite")
custom_viewSort_order = jResp.stringOf("modules[i].custom_view.sort_order")
j = 0
count_j = jResp.SizeOfArray("modules[i].related_list_properties.fields")
while j < count_j
jResp.put_J(j)
strVal = jResp.stringOf("modules[i].related_list_properties.fields[j]")
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("modules[i].$properties")
while j < count_j
jResp.put_J(j)
strVal = jResp.stringOf("modules[i].$properties[j]")
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("modules[i].profiles")
while j < count_j
jResp.put_J(j)
name = jResp.stringOf("modules[i].profiles[j].name")
id = jResp.stringOf("modules[i].profiles[j].id")
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("modules[i].search_layout_fields")
while j < count_j
jResp.put_J(j)
strVal = jResp.stringOf("modules[i].search_layout_fields[j]")
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("modules[i].arguments")
while j < count_j
jResp.put_J(j)
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("modules[i].custom_view.criteria.group")
while j < count_j
jResp.put_J(j)
comparator = jResp.stringOf("modules[i].custom_view.criteria.group[j].comparator")
field = jResp.stringOf("modules[i].custom_view.criteria.group[j].field")
value = jResp.stringOf("modules[i].custom_view.criteria.group[j].value")
j = j + 1
end
j = 0
count_j = jResp.SizeOfArray("modules[i].custom_view.fields")
while j < count_j
jResp.put_J(j)
strVal = jResp.stringOf("modules[i].custom_view.fields[j]")
j = j + 1
end
i = i + 1
end
Curl Command
curl -X GET
-H "Authorization: Bearer <access_token>"
https://domain.com/crm/v2/settings/modules/Leads
Postman Collection Item JSON
{
"name": "Leads",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "{{access-token}}",
"type": "string"
}
]
},
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/modules/Leads",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"modules",
"Leads"
]
},
"description": "To get the metadata of the Leads Module."
},
"response": [
{
"name": "SUCCESS RESPONSE",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/modules/Leads",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"modules",
"Leads"
]
}
},
"status": "OK",
"code": 200,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Tue, 11 May 2021 12:22:04 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 \"modules\": [\n {\n \"global_search_supported\": true,\n \"kanban_view\": false,\n \"deletable\": true,\n \"description\": null,\n \"creatable\": true,\n \"filter_status\": true,\n \"inventory_template_supported\": false,\n \"modified_time\": \"2021-05-06T06:41:05+00:00\",\n \"plural_label\": \"Leads\",\n \"presence_sub_menu\": true,\n \"triggers_supported\": true,\n \"id\": \"738964000000000125\",\n \"isBlueprintSupported\": true,\n \"related_list_properties\": {\n \"sort_by\": null,\n \"fields\": [\n \"Full_Name\",\n \"Company\",\n \"Email\",\n \"Lead_Source\",\n \"Lead_Status\",\n \"Phone\"\n ],\n \"sort_order\": null\n },\n \"per_page\": 10,\n \"$properties\": [\n \"$converted\",\n \"$approved\",\n \"$approval_state\",\n \"$state\",\n \"$converted_detail\",\n \"$currency_symbol\",\n \"$review\",\n \"$review_process\",\n \"$approval\",\n \"$in_merge\",\n \"$process_flow\",\n \"$orchestration\",\n \"$stop_processing\",\n \"$data_source_details\"\n ],\n \"visibility\": 1,\n \"convertable\": true,\n \"editable\": true,\n \"emailTemplate_support\": true,\n \"profiles\": [\n {\n \"name\": \"Administrator\",\n \"id\": \"738964000000015972\"\n },\n {\n \"name\": \"Standard\",\n \"id\": \"738964000000015975\"\n },\n {\n \"name\": \"Sample\",\n \"id\": \"738964000001348001\"\n }\n ],\n \"filter_supported\": true,\n \"display_field\": \"Full_Name\",\n \"search_layout_fields\": [\n \"Owner\",\n \"Company\",\n \"Email\",\n \"Full_Name\",\n \"Phone\",\n \"Lead_Source\"\n ],\n \"kanban_view_supported\": true,\n \"show_as_tab\": true,\n \"web_link\": null,\n \"sequence_number\": 2,\n \"singular_label\": \"Lead\",\n \"viewable\": true,\n \"api_supported\": true,\n \"api_name\": \"Leads\",\n \"quick_create\": true,\n \"modified_by\": {\n \"name\": \"Patricia Boyle\",\n \"id\": \"738964000000291009\"\n },\n \"generated_type\": \"default\",\n \"feeds_required\": false,\n \"scoring_supported\": true,\n \"webform_supported\": true,\n \"arguments\": [],\n \"module_name\": \"Leads\",\n \"business_card_field_limit\": 5,\n \"custom_view\": {\n \"display_value\": \"My Leads\",\n \"shared_type\": \"all\",\n \"criteria\": {\n \"group_operator\": \"and\",\n \"group\": [\n {\n \"comparator\": \"equal\",\n \"field\": \"Owner\",\n \"value\": \"${CURRENTUSER}\"\n },\n {\n \"comparator\": \"equal\",\n \"field\": \"$converted\",\n \"value\": false\n }\n ]\n },\n \"system_name\": \"MYVIEWS\",\n \"shared_details\": null,\n \"sort_by\": null,\n \"offline\": true,\n \"default\": true,\n \"system_defined\": true,\n \"name\": \"My Leads\",\n \"id\": \"738964000000091563\",\n \"category\": \"shared_with_me\",\n \"fields\": [\n \"Full_Name\",\n \"Company\",\n \"Email\",\n \"Phone\",\n \"Lead_Source\"\n ],\n \"favorite\": null,\n \"sort_order\": null\n },\n \"parent_module\": {}\n }\n ]\n}"
},
{
"name": "INVALID_MODULE",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/modules/Lead",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"modules",
"Lead"
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Tue, 11 May 2021 12:22:27 GMT"
},
{
"key": "Content-Type",
"value": "application/json;charset=utf-8"
},
{
"key": "Content-Length",
"value": "110"
},
{
"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": "X-Download-Options",
"value": "noopen"
},
{
"key": "Content-Language",
"value": "en-US"
}
],
"cookie": [
],
"body": "{\n \"code\": \"INVALID_MODULE\",\n \"details\": {},\n \"message\": \"the module name given seems to be invalid\",\n \"status\": \"error\"\n}"
},
{
"name": "INVALID_URL_PATTERN",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/module/Leads",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"module",
"Leads"
]
}
},
"status": "Not Found",
"code": 404,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Tue, 11 May 2021 12:22:42 GMT"
},
{
"key": "Content-Type",
"value": "application/json;charset=utf-8"
},
{
"key": "Content-Length",
"value": "131"
},
{
"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": "Content-Disposition",
"value": "attachment; filename=response.json"
},
{
"key": "X-Download-Options",
"value": "noopen"
},
{
"key": "Content-Language",
"value": "en-US"
}
],
"cookie": [
],
"body": "{\n \"code\": \"INVALID_URL_PATTERN\",\n \"details\": {},\n \"message\": \"Please check if the URL trying to access is a correct one\",\n \"status\": \"error\"\n}"
},
{
"name": "AUTHENTICATION_FAILURE",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/modules/Leads",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"modules",
"Leads"
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Tue, 11 May 2021 12:22:56 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": "INVALID_REQUEST_METHOD",
"originalRequest": {
"method": "COPY",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/modules/Leads",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"modules",
"Leads"
]
}
},
"status": "Bad Request",
"code": 400,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Tue, 11 May 2021 12:23:19 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": "OAUTH_SCOPE_MISMATCH",
"originalRequest": {
"method": "GET",
"header": [
],
"url": {
"raw": "{{api-domain}}/crm/v2/settings/modules/Leads",
"host": [
"{{api-domain}}"
],
"path": [
"crm",
"v2",
"settings",
"modules",
"Leads"
]
}
},
"status": "Unauthorized",
"code": 401,
"_postman_previewlanguage": "json",
"header": [
{
"key": "Server",
"value": "ZGS"
},
{
"key": "Date",
"value": "Thu, 13 May 2021 08:28:57 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}"
}
]
}