List of Available APIs
Purpose
To retrieve the list of supported APIs in the current API version, with the option to filter the APIs based on their request methods, OAuth scopes and credit limits.
Endpoints
Request Details
Request URL
{api-domain}/crm/{version}/__apis
Header
Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52
Scope
scope = ZohoCRM.apis.READ
Parameter
- filtersstring, optional
The parameter allows you to filter the supported APIs for the version specified in the URL. You can filter based on three criteria: Module, OAuth scope, and Method. By default, all supported APIs are displayed for the specified API version.
The “filters” parameter structure should be:
{
"field": {
"api_name": "{{value}}"
},
"comparator": "equals",
"value": "{{value}}"
}
Note: Encode the value of the filters parameter before sending a request.
Example : {"field": {"api_name": "operation_types.method"},"comparator": "equals","value": "POST"}
Explanation :
It filters only the POST request method APIs, i.e., the value "POST" in the "value" key depends on the value given in the "api_name" key in the field JSON object. It filters only the POST request method APIs, i.e., the value "POST" in the "value" key depends on the value given in the "api_name" key in the field JSON object. - fieldsJSON object, mandatory
Represents the attribute to filter with.
Supported attributes : Module, OAuth scope, and Request Method.
- api_namestring, mandatory
Represents the API name of the filter to query. Supported filters include:
- operation_types.oauth_scope - to filter OAuth scope-specific available APIs.
- operation_types.method - to filter method-specific supported APIs.
- module(including custom module) - to filter module-specific supported APIs.
Note: Each filter criterion is explained below with a sample request and response.
- comparatorstring, mandatory
Represents the comparison operator used for filtering. Supported value: equals.
- valuestring, mandatory
Contains the value to be compared with the corresponding attribute of the "api_name" key in the field JSON object.
Notes
- Encode the value of the filters parameter before sending a request.
- The "filters" parameter supports :
- A single criteria.
- The "equals" comparator.
- The API will be supported from version 2.
- The credit limit for this API is 1.
Sample Request
Copiedcurl "https://www.zohoapis.com/crm/v7/__apis"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Sample Response
Copied{
"__apis": [
{
"path": "/crm/v7/Quotes/{{id}}/actions/send_mail",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.send_mail.quotes.CREATE",
"max_credits": 20,
"min_credits": 20
},
{
"method": "PUT",
"oauth_scope": "ZohoCRM.send_mail.quotes.CREATE",
"max_credits": 20,
"min_credits": 20
}
]
},
{
"path": "/crm/v7/Accounts/{{id}}/photo",
"operation_types": [
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.accounts.READ",
"max_credits": 1,
"min_credits": 1
},
{
"method": "DELETE",
"oauth_scope": "ZohoCRM.modules.accounts.DELETE",
"max_credits": 1,
"min_credits": 1
},
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.accounts.CREATE",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Deals/{{id}}/Attachments",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.deals.CREATE",
"max_credits": 1,
"min_credits": 1
},
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.deals.READ",
"max_credits": 1,
"min_credits": 1
},
{
"method": "PUT",
"oauth_scope": "ZohoCRM.modules.deals.UPDATE",
"max_credits": 1,
"min_credits": 1
},
{
"method": "DELETE",
"oauth_scope": "ZohoCRM.modules.deals.DELETE",
"max_credits": 1,
"min_credits": 1
}
]
},
.
.
.
]
}
The "filters" parameter with "OAuth Scope" value
- "api_name": "operation_types.oauth_scope"
To filter OAuth scope-specific available APIs.
The “filters” parameter structure should be:
filters : {"field": {"api_name": "operation_types.oauth_scope"}, "comparator": "equals" "value": "{{scope_name}}"}
The supported scope name values are settings, modules, users, templates, org, mass_convert, features, mass_delete, mass_update, share, change_owner, send_mail, bulk, composite_requests, notifications, and coql.
To know the individual module-specific supported APIs, you can give the value such as "modules.leads", "modules.contacts", and so on.
To know the individual metadata-specific supported APIs, you should specify the value as "settings.territories", "settings.custom_views", "settings.fields", and so on.
Sample request using the "filters" parameter to fetch "OAuth scope" related APIs
Copiedcurl "https://www.zohoapis.com/crm/v7/__apis?filters=%7B%22field%22%3A%20%7B%22api_name%22%3A%20%22operation_types.oauth_scope%22%7D%2C%22comparator%22%3A%20%22equals%22%2C%22value%22%3A%20%22send_mail%22%7D"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Sample Response
Copied{
"__apis": [
{
"path": "/crm/v7/Quotes/{{id}}/actions/send_mail",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.send_mail.quotes.CREATE",
"max_credits": 20,
"min_credits": 20
},
{
"method": "PUT",
"oauth_scope": "ZohoCRM.send_mail.quotes.CREATE",
"max_credits": 20,
"min_credits": 20
}
]
},
{
"path": "/crm/v7/Invoices/{{id}}/actions/send_mail",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.send_mail.invoices.CREATE",
"max_credits": 20,
"min_credits": 20
},
{
"method": "PUT",
"oauth_scope": "ZohoCRM.send_mail.invoices.CREATE",
"max_credits": 20,
"min_credits": 20
}
]
},
{
"path": "/crm/v7/Sales_Orders/{{id}}/actions/send_mail",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.send_mail.salesorders.CREATE",
"max_credits": 20,
"min_credits": 20
},
{
"method": "PUT",
"oauth_scope": "ZohoCRM.send_mail.salesorders.CREATE",
"max_credits": 20,
"min_credits": 20
}
]
},
.
.
.
]
}
The "filters" parameter with "Method" value
- "api_name": "operation_types.method"
To filter method-specific available APIs.
The “filters” parameter structure should be:
filters - {"field": {"api_name": "operation_types.method"},"comparator": "equals","value": "{{request_method_as_value}}"}
Supported values: GET, POST, PUT, PATCH, and DELETE.
Notes
- The supported methods are case-sensitive.
Sample request using the "filters" parameter to fetch "method" specific APIs
Copiedcurl "https://www.zohoapis.com/crm/v7/__apis?filters=%7B%22field%22%3A%20%7B%22api_name%22%3A%20%22operation_types.method%22%7D%2C%22comparator%22%3A%20%22equals%22%2C%22value%22%3A%20%22POST%22%7D"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Sample Response
Copied{
"__apis": [
{
"path": "/crm/v7/Quotes/{{id}}/actions/send_mail",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.send_mail.quotes.CREATE",
"max_credits": 20,
"min_credits": 20
}
]
},
{
"path": "/crm/v7/Accounts/{{id}}/photo",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.accounts.CREATE",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Deals/upsert",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.deals.CREATE",
"max_credits": 10,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Deals/{{id}}/Attachments",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.deals.CREATE",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Events",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.events.CREATE",
"max_credits": 10,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Deals/{{id}}/actions/assign_territories",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.deals.UPDATE",
"max_credits": 1,
"min_credits": 1
}
]
},
.
.
.
]
}
The "filters" parameter with "Module" value
- "api_name": "module"
To filter module-specific supported APIs.
The “filters” parameter structure should be:
filters : {"field": {"api_name": "module"},"comparator": "equals","value": "{{module_api_name}}"}
Supported modules are system-defined modules such as Leads, Accounts, Contacts, Deals, Campaigns, Tasks, Cases, Meetings, Calls, Solutions, Products, Vendors, Price Books, Quotes, Sales Orders, Purchase Orders, Invoices, Appointments, Appointments Rescheduled History, and Services.
The "filters" parameter with "Custom Module" value
- "api_name": "module"
To filter available custom module-specific APIs.
The “filters” parameter structure should be:
{"field": {"api_name": "module"},"comparator": "equals","value": "custom"}
Supported value: custom
Module-specific notes
- You can specify only the system-defined modules.
Custom module-specific notes
- The system does not allow directly specifying actual custom module names in the "value" key. Instead, use the value "custom". The system will list the available APIs related to custom modules.
The response for a custom module API endpoint looks like : /crm/{{version}}/{{module}}/actions/add_tags. For more samples, refer to the sample response of the custom module.
Sample request using the "filters" parameter to fetch "module" specific APIs
Copiedcurl "https://www.zohoapis.com/crm/v7/__apis?filters=%7B%22field%22%3A%20%7B%22api_name%22%3A%20%22operation_types.method%22%7D%2C%22comparator%22%3A%20%22equals%22%2C%22value%22%3A%20%22POST%22%7D"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Sample Response
Copied{
"__apis": [
{
"path": "/crm/v7/Leads/{{id}}/actions/merge",
"operation_types": [
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.leads.READ",
"max_credits": 1,
"min_credits": 1
},
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.leads.CREATE",
"max_credits": 50,
"min_credits": 50
}
]
},
{
"path": "/crm/v7/Leads/{{id}}/actions/download_fields_attachment",
"operation_types": [
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.leads.READ",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Leads/{{id}}/__emails_sharing_details",
"operation_types": [
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.leads.READ",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/Leads/actions/add_tags",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.leads.UPDATE",
"max_credits": 50,
"min_credits": 1
}
]
},
.
.
.
]
}
Sample request using the "filters" parameter to fetch "Custom Module" related APIs
Copiedcurl "https://www.zohoapis.com/crm/v7/__apis?filters=%7B%22field%22%3A%20%7B%22api_name%22%3A%20%22operation_types.method%22%7D%2C%22comparator%22%3A%20%22equals%22%2C%22value%22%3A%20%22POST%22%7D"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Response JSON Keys
- __apisJSON array
Contains the details of supported APIs for each endpoint up to the specified API version in the request URL.
- pathstring
Represents the API endpoint for the specified API version in the request URL.
- operation_typesstring
Represents the allowed operations on a specific path.
- methodstring
Represents the request method.
- oauth_scopestring
Represents the OAuth scope required to perform this operation.
- max_creditsinteger
Represents the maximum credits that the API consumes.
- min_creditsinteger
Represents the minimum credits that the API consumes.
Possible Errors
- INVALID_DATAHTTP 400
- Invalid JSON passed as parameter
Resolution: Specify a valid JSON to the filters parameter. Refer to the Parameter sections above. - The given api_name seems to be invalid
Resolution: Specify a valid input. Possible values are operation_types.oauth_scope, operation_types.method, and module. - The given value is invalid given in the "value" key
Resolutions: Specify a valid value.- For the "api_name" : "operation_types.oauth_scope", the values can be modules, settings, share, change_owner, mass_update, mass_delete, mass_convert, and so on.
- For the "api_name" : "operation_types.method", the values can be GET, POST, PUT, PATCH, and DELETE.
- For the "api_name" : "module", the values should be the system-defined modules such as Leads, Contacts, Accounts, and so on. Refer to the Parameter sections above.
- For custom module, the value should be custom.
- The given comparator is not supported
Resolution: Supported comparator is equals. - The given method value is not supported
Resolution: The given method value is case-sensitive. Supported methods are GET, POST, PUT, PATCH, and DELETE.
- Invalid JSON passed as parameter
- DEPENDENT_FIELD_MISSINGHTTP 400
Dependent Field missing
Resolution: Specify the dependent fields for the filter parameter. Refer to the Parameter sections above. - MANDATORY_NOT_FOUNDHTTP 400
One ore more mandatory keys are missing in the parameter value
Resolution: Specify all mandatory fields. Refer to the Parameter sections above. - 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 the endpoints section above. - OAUTH_SCOPE_MISMATCHHTTP 401
Unauthorized
Resolution: The client does not have a valid scope to retrieve supported APIs. Create a new token with valid scope. Refer to scope section above. - AUTHENTICATION_FAILUREHTTP 401
Authentication failed
Resolution: Pass the access token in the request header of the API call. - 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 the request URL section above. - INTERNAL_ERRORHTTP 500
Internal Server Error
Resolution: Unexpected and unhandled exception in the server. Contact support team.
Sample Response
Copied{
"__apis": [
{
"path": "/crm/v7/{{module}}/actions/add_tags",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.custom.UPDATE",
"max_credits": 50,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/{{module}}/{{id}}/Locking_Information__s/{{id}}",
"operation_types": [
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.custom.READ",
"max_credits": 1,
"min_credits": 1
},
{
"method": "PUT",
"oauth_scope": "ZohoCRM.modules.custom.UPDATE",
"max_credits": 1,
"min_credits": 1
},
{
"method": "DELETE",
"oauth_scope": "ZohoCRM.modules.custom.DELETE",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/{{module}}/{{id}}/actions/remove_territories",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.custom.UPDATE",
"max_credits": 1,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/{{module}}/upsert",
"operation_types": [
{
"method": "POST",
"oauth_scope": "ZohoCRM.modules.custom.CREATE",
"max_credits": 10,
"min_credits": 1
}
]
},
{
"path": "/crm/v7/{{module}}/deleted",
"operation_types": [
{
"method": "GET",
"oauth_scope": "ZohoCRM.modules.custom.READ",
"max_credits": 2,
"min_credits": 2
}
]
},
.
.
.
]
}