Related Lists Meta Data
Purpose
To get the related list data of a particular module.
Request Details
Request URL
{api-domain}/crm/{version}/settings/related_lists?module={module_api_name}
Supported modules
Leads, Accounts, Contacts, Deals, Campaigns, Tasks, Cases, Events, Calls, Solutions, Products, Vendors, Price Books, Quotes, Sales Orders, Purchase Orders, Invoices, and Custom
Header
Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52
Scope
scope=ZohoCRM.settings.related_lists.READ
(or)
scope=ZohoCRM.settings.related_lists.ALL
(or)
scope=ZohoCRM.settings.ALL
Parameters
- modulestring, mandatory
Specify the API name of the required module. For example, Leads, Contacts, Accounts, Deals, and so on.
The "href" attribute in the response must be used in the URL to call the related list API. For example, the URL for calling the related list API must be: https://www.zohoapis.com/crm/v2.1/Leads/{ENTITYID}/Notes.
Sample Request
Copiedcurl "https://www.zohoapis.com/crm/v2.1/settings/related_lists?module=Leads"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
CopiedString moduleAPIName = "Leads";
//Get instance of RelatedListsOperations Class that takes moduleAPIName as parameter
RelatedListsOperations relatedListsOperations = new RelatedListsOperations(moduleAPIName);
//Call getRelatedLists method
APIResponse < ResponseHandler > response = relatedListsOperations.getRelatedLists();
Copiedpackage com.zoho.crm.api.sample.restapi.metadata;
import javax.net.ssl.SSLContext;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.conn.ssl.NoopHostnameVerifier;
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
public class RelatedListsMetaData
{
private static void getRelatedLists()
{
try
{
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
SSLContext sslContext = SSLContext.getDefault();
SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE);
CloseableHttpClient httpclient = httpClientBuilder.setSSLSocketFactory(sslConnectionSocketFactory).build();
URIBuilder uriBuilder = new URIBuilder("https://www.zohoapis.com/crm/v2/settings/related_lists");
uriBuilder.addParameter("module", "Leads");
HttpUriRequest requestObj = new HttpGet(uriBuilder.build());
requestObj.addHeader("Authorization", "Zoho-oauthtoken 1000.xxxxxxx.xxxxxxx");
HttpResponse response = httpclient.execute(requestObj);
HttpEntity responseEntity = response.getEntity();
System.out.println("HTTP Status Code : " + response.getStatusLine().getStatusCode());
if(responseEntity != null)
{
Object responseObject = EntityUtils.toString(responseEntity);
String responseString = responseObject.toString();
System.out.println(responseString);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
private static void getRelatedList()
{
try
{
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
SSLContext sslContext = SSLContext.getDefault();
SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE);
CloseableHttpClient httpclient = httpClientBuilder.setSSLSocketFactory(sslConnectionSocketFactory).build();
URIBuilder uriBuilder = new URIBuilder("https://www.zohoapis.com/crm/v2/settings/related_lists/34770610015122");
uriBuilder.addParameter("module", "Leads");
HttpUriRequest requestObj = new HttpGet(uriBuilder.build());
requestObj.addHeader("Authorization", "Zoho-oauthtoken 1000.xxxxxxx.xxxxxxx");
HttpResponse response = httpclient.execute(requestObj);
HttpEntity responseEntity = response.getEntity();
System.out.println("HTTP Status Code : " + response.getStatusLine().getStatusCode());
if(responseEntity != null)
{
Object responseObject = EntityUtils.toString(responseEntity);
String responseString = responseObject.toString();
System.out.println(responseString);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
public static void main(String[] args)
{
getRelatedLists();
getRelatedList();
}
}
Copied//Get instance of RelatedListsOperations Class that takes moduleAPIName as parameter
$relatedListsOperations = new RelatedListsOperations($moduleAPIName);
//Call getRelatedLists method which takes relatedListId as parameter
$response = $relatedListsOperations->getRelatedList($relatedListId);
Copiedpackage com.zoho.crm.api.sample.restapi.metadata;
import javax.net.ssl.SSLContext;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.client.utils.URIBuilder;
import org.apache.http.conn.ssl.NoopHostnameVerifier;
import org.apache.http.conn.ssl.SSLConnectionSocketFactory;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder;
import org.apache.http.util.EntityUtils;
public class RelatedListsMetaData
{
private static void getRelatedLists()
{
try
{
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
SSLContext sslContext = SSLContext.getDefault();
SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE);
CloseableHttpClient httpclient = httpClientBuilder.setSSLSocketFactory(sslConnectionSocketFactory).build();
URIBuilder uriBuilder = new URIBuilder("https://www.zohoapis.com/crm/v2/settings/related_lists");
uriBuilder.addParameter("module", "Leads");
HttpUriRequest requestObj = new HttpGet(uriBuilder.build());
requestObj.addHeader("Authorization", "Zoho-oauthtoken 1000.xxxxxxx.xxxxxxx");
HttpResponse response = httpclient.execute(requestObj);
HttpEntity responseEntity = response.getEntity();
System.out.println("HTTP Status Code : " + response.getStatusLine().getStatusCode());
if(responseEntity != null)
{
Object responseObject = EntityUtils.toString(responseEntity);
String responseString = responseObject.toString();
System.out.println(responseString);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
private static void getRelatedList()
{
try
{
HttpClientBuilder httpClientBuilder = HttpClientBuilder.create();
SSLContext sslContext = SSLContext.getDefault();
SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslContext, NoopHostnameVerifier.INSTANCE);
CloseableHttpClient httpclient = httpClientBuilder.setSSLSocketFactory(sslConnectionSocketFactory).build();
URIBuilder uriBuilder = new URIBuilder("https://www.zohoapis.com/crm/v2/settings/related_lists/34770610015122");
uriBuilder.addParameter("module", "Leads");
HttpUriRequest requestObj = new HttpGet(uriBuilder.build());
requestObj.addHeader("Authorization", "Zoho-oauthtoken 1000.xxxxxxx.xxxxxxx");
HttpResponse response = httpclient.execute(requestObj);
HttpEntity responseEntity = response.getEntity();
System.out.println("HTTP Status Code : " + response.getStatusLine().getStatusCode());
if(responseEntity != null)
{
Object responseObject = EntityUtils.toString(responseEntity);
String responseString = responseObject.toString();
System.out.println(responseString);
}
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
public static void main(String[] args)
{
getRelatedLists();
getRelatedList();
}
}
Copied//Get instance of RelatedListsOperations Class that takes moduleAPIName as parameter
RelatedListsOperations relatedListsOperations = new RelatedListsOperations(moduleAPIName);
//Call GetRelatedLists method
APIResponse<ResponseHandler> response = relatedListsOperations.GetRelatedLists();
Copiedusing System;
using System.IO;
using System.Net;
namespace Com.Zoho.Crm.API.Sample.RestAPI.MetaData
{
public class RelatedListsMetaData
{
public static void GetRelatedLists()
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.zohoapis.com/crm/v2/settings/related_lists?module=Leads");
request.Method = "GET";
request.Headers["Authorization"] = "Zoho-oauthtoken 1000.abfeXXXXXXXXXXX2asw.XXXXXXXXXXXXXXXXXXsdc2";
request.KeepAlive = true;
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException e)
{
if (e.Response == null) { throw; }
response = (HttpWebResponse)e.Response;
}
HttpWebResponse responseEntity = response;
Console.WriteLine("HTTP Status Code : " + (int)response.StatusCode);
string responsestring = new StreamReader(responseEntity.GetResponseStream()).ReadToEnd();
responseEntity.Close();
Console.WriteLine(responsestring);
}
public static void GetRelatedList()
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.zohoapis.com/crm/v2/settings/related_lists/347706115122?module=Leads");
request.Method = "GET";
request.Headers["Authorization"] = "Zoho-oauthtoken 1000.abfeXXXXXXXXXXX2asw.XXXXXXXXXXXXXXXXXXsdc2";
request.KeepAlive = true;
HttpWebResponse response;
try
{
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException e)
{
if (e.Response == null) { throw; }
response = (HttpWebResponse)e.Response;
}
HttpWebResponse responseEntity = response;
Console.WriteLine("HTTP Status Code : " + (int)response.StatusCode);
string responsestring = new StreamReader(responseEntity.GetResponseStream()).ReadToEnd();
responseEntity.Close();
Console.WriteLine(responsestring);
}
}
}
Copied# Get instance of RelatedListsOperations Class that takes module_api_name as parameter
related_lists_operations = RelatedListsOperations(module_api_name)
# Call get_related_lists method
response = related_lists_operations.get_related_lists()
# Get instance of RelatedListsOperations Class that takes module_api_name as parameter
related_lists_operations = RelatedListsOperations(module_api_name)
# Call get_related_list method which takes related_list_id as parameter
response = related_lists_operations.get_related_list(related_list_id)
Copieddef get_related_lists():
import requests
url = 'https://www.zohoapis.com/crm/v2/settings/related_lists'
headers = {
'Authorization': 'Zoho-oauthtoken 1000.04be928e4a96XXXXXXXXXXXXX68.0b9eXXXXXXXXXXXX60396e268'
}
parameters = {
'module': 'Leads',
}
response = requests.get(url=url, params=parameters, headers=headers)
if response is not None:
print("HTTP Status Code : " + str(response.status_code))
print(response.json())
get_related_lists()
def get_related_list():
import requests
url = 'https://www.zohoapis.com/crm/v2/settings/related_lists/3409643000000003771'
headers = {
'Authorization': 'Zoho-oauthtoken 1000.04be928e4a96XXXXXXXXXXXXX68.0b9eXXXXXXXXXXXX60396e268'
}
parameters = {
'module': 'Leads',
}
response = requests.get(url=url, params=parameters, headers=headers)
if response is not None:
print("HTTP Status Code : " + str(response.status_code))
print(response.json())
get_related_list()
Copied//Get instance of RelatedListsOperations Class that takes moduleAPIName as parameter
let relatedListsOperations = new RelatedListsOperations(moduleAPIName);
//Call getRelatedLists method
let response = await relatedListsOperations.getRelatedLists();
Copiedasync function getRelatedLists() {
const got = require("got");
let url = 'https://www.zohoapis.com/crm/v2/settings/related_lists'
let headers = {
Authorization : "Zoho-oauthtoken 1000.354df3680XXXXXXXXXXXXX3.aae0efXXXXXXXXXXXXXXXXXX9"
}
let parameters = {
module : 'Leads'
}
let requestDetails = {
method : "GET",
headers : headers,
searchParams : parameters,
throwHttpErrors : false
}
let response = await got(url, requestDetails)
if(response != null) {
console.log(response.statusCode);
console.log(response.body);
}
}
getRelatedLists()
async function getRelatedList() {
const got = require("got");
let url = 'https://www.zohoapis.com/crm/v2/settings/related_lists/3409643000000003771'
let headers = {
Authorization : "Zoho-oauthtoken 1000.354df3680XXXXXXXXXXXXX3.aae0efXXXXXXXXXXXXXXXXXX9"
}
let parameters = {
module : 'Leads'
}
let requestDetails = {
method : "GET",
headers : headers,
searchParams : parameters,
throwHttpErrors : false
}
let response = await got(url, requestDetails)
if(response != null) {
console.log(response.statusCode);
console.log(response.body);
}
}
getRelatedList()
Copied# Get instance of RelatedListsOperations Class that takes module_api_name as parameter
rlo = RelatedLists::RelatedListsOperations.new(module_api_name)
# Call get_related_list method which takes related_list_id as parameter
response = rlo.get_related_list(related_list_id)
Copiedasync function getRelatedLists() {
const got = require("got");
let url = 'https://www.zohoapis.com/crm/v2/settings/related_lists'
let headers = {
Authorization : "Zoho-oauthtoken 1000.354df3680XXXXXXXXXXXXX3.aae0efXXXXXXXXXXXXXXXXXX9"
}
let parameters = {
module : 'Leads'
}
let requestDetails = {
method : "GET",
headers : headers,
searchParams : parameters,
throwHttpErrors : false
}
let response = await got(url, requestDetails)
if(response != null) {
console.log(response.statusCode);
console.log(response.body);
}
}
getRelatedLists()
async function getRelatedList() {
const got = require("got");
let url = 'https://www.zohoapis.com/crm/v2/settings/related_lists/3409643000000003771'
let headers = {
Authorization : "Zoho-oauthtoken 1000.354df3680XXXXXXXXXXXXX3.aae0efXXXXXXXXXXXXXXXXXX9"
}
let parameters = {
module : 'Leads'
}
let requestDetails = {
method : "GET",
headers : headers,
searchParams : parameters,
throwHttpErrors : false
}
let response = await got(url, requestDetails)
if(response != null) {
console.log(response.statusCode);
console.log(response.body);
}
}
getRelatedList()
Copiedresponse = invokeurl
[
url: "https://www.zohoapis.com/crm/v2.1/settings/related_lists?module=Leads"
type: GET
connection:"crm_oauth_connection"
];
info response;
Response JSON Keys
- sequence_numberinteger
Represents the position of the related list in the module, in CRM.
- display_labelstring
Represents the display name of the related list.
- api_namestring
Represents the API name of the related list.
- modulestring
Represents the API name of the module to which the related list belongs to.
- namestring
Represents the display name of the module to which the related list belongs to.
- idstring
Represents the unique ID of the related list.
- hrefstring
Represents the URL reference to access the current related list.
- typestring
Represents the type of the current related list. The value can be either default or multiselectlookup.
- connectedmodulestring
If the related list is a multi-select lookup, the key represents the API name of the related module.
- linkingmodulestring
Represents the API name of the linking module.
Possible Errors
- REQUIRED_PARAM_MISSINGHTTP 400
Bad Request
Resolution: You have not specified the mandatory parameter. Refer to parameters section above. - INVALID_MODULEHTTP 400
The module name given seems to be invalid
Resolution: You have specified an invalid module name or there is no tab permission, or the module could have been removed from the available modules. Specify a valid module API name. - INVALID_MODULEHTTP 400
The given module is not supported in API
Resolution: The modules such as Documents and Projects are not supported in the current API. (This error will not be shown, once these modules are been supported). Specify a valid module API name. - INVALID_URL_PATTERNHTTP 404
Please check if the URL trying to access is a correct one
Resolution: The request URL specified is incorrect. Specify a valid request URL. Refer to request URL section above. - OAUTH_SCOPE_MISMATCHHTTP 401
Unauthorized
Resolution: Client does not have ZohoCRM.settings.related_lists.READ scope. Create a new client with valid scope. Refer to scope section above. - NO_PERMISSIONHTTP 403
Permission denied to read
Resolution: The user does not have permission to read related lists data. Contact your system administrator. - INTERNAL_ERRORHTTP 500
Internal Server Error
Resolution: Unexpected and unhandled exception in Server. Contact support team. - INVALID_REQUEST_METHODHTTP 400
The http request method type is not a valid one
Resolution: You have specified an invalid HTTP method to access the API URL. Specify a valid request method. Refer to endpoints section above. - AUTHORIZATION_FAILEDHTTP 400
User does not have sufficient privilege to read related lists data
Resolution: The user does not have the permission to retrieve related lists data. Contact your system administrator.
Sample Response
Copied{
"related_lists": [
{
"sequence_number": "1",
"display_label": "Notes",
"api_name": "Notes",
"module": "Notes",
"name": "Notes",
"action": null,
"id": "3652397000000015122",
"href": "Leads/{ENTITYID}/Notes",
"type": "default"
},
{
"sequence_number": "2",
"display_label": "Attachments",
"api_name": "Attachments",
"module": "Attachments",
"name": "Attachments",
"action": null,
"id": "3652397000000003771",
"href": "Leads/{ENTITYID}/Attachments",
"type": "default"
},
{
"sequence_number": "3",
"display_label": "Products",
"api_name": "Products",
"module": "Products",
"name": "Products",
"action": null,
"id": "3652397000000003773",
"href": "Leads/{ENTITYID}/Products",
"type": "default"
},
{
"sequence_number": "4",
"display_label": "Open Activities",
"api_name": "Activities",
"module": "Activities",
"name": "Activities",
"action": null,
"id": "3652397000000003769",
"href": "Leads/{ENTITYID}/Activities",
"type": "default"
},
{
"sequence_number": "5",
"display_label": "Closed Activities",
"api_name": "Activities_History",
"module": "Activities",
"name": "Activities History",
"action": null,
"id": "3652397000000003767",
"href": "Leads/{ENTITYID}/Activities_History",
"type": "default"
},
{
"sequence_number": "6",
"display_label": "Invited Events",
"api_name": "Invited_Events",
"module": "Events",
"name": "Invited Events",
"action": null,
"id": "3652397000000062001",
"href": "Leads/{ENTITYID}/Invited_Events",
"type": "default"
},
{
"sequence_number": "6",
"display_label": "Emails",
"api_name": "Emails",
"module": "Emails",
"name": "Emails",
"action": null,
"id": "3652397000000014410",
"href": null,
"type": "default"
},
{
"sequence_number": "7",
"display_label": "Zoho Desk",
"api_name": "Zoho_Support",
"module": null,
"name": "Zoho Support",
"action": null,
"id": "3652397000000209001",
"href": null,
"type": "default"
},
{
"sequence_number": "8",
"display_label": "Campaigns",
"api_name": "Campaigns",
"module": "Campaigns",
"name": "Campaigns",
"action": null,
"id": "3652397000000040017",
"href": "Leads/{ENTITYID}/Campaigns",
"type": "default"
},
{
"sequence_number": "9",
"display_label": "Social",
"api_name": "Social",
"module": "Social",
"name": "Social",
"action": null,
"id": "3652397000000065003",
"href": null,
"type": "default"
},
{
"sequence_number": "10",
"display_label": "Checklists",
"api_name": "CheckLists",
"module": "CheckLists",
"name": "CheckLists",
"action": null,
"id": "3652397000000141005",
"href": "Leads/{ENTITYID}/CheckLists",
"type": "default"
},
{
"sequence_number": "11",
"display_label": "Zoho Survey",
"api_name": "Zoho_Survey",
"module": null,
"name": "Zoho Survey",
"action": null,
"id": "3652397000000209037",
"href": null,
"type": "default"
},
{
"sequence_number": "12",
"display_label": "Zoho - {1} SalesIQ",
"api_name": "Visits_Zoho_Livedesk",
"module": "Visits",
"name": "Visits - Zoho Livedesk",
"action": null,
"id": "3652397000000213048",
"href": "Leads/{ENTITYID}/Visits_Zoho_Livedesk",
"type": "default"
},
{
"sequence_number": "13",
"display_label": "Related List Name 1",
"api_name": "Related_List_Name_1",
"module": "Accounts",
"name": "Related List Name 1",
"action": null,
"id": "3652397000000381023",
"href": "Leads/{ENTITYID}/Related_List_Name_1",
"type": "custom_lookup"
}
]
}