List of Available APIs

Purpose

To retrieve the list of supported APIs in a specific API version, with the option to filter the APIs based on their request methods or OAuth scopes.

Endpoints

  • GET /__apis

Request Details

Request URL

{api-domain}/crm/{version}/__apis

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

Scope

ZohoCRM.apis.READ

Parameter

  • filtersstring, optional

    This 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. When you do not include this parameter, all supported APIs are displayed for the specified API version, by default.

    Structure for the filters parameter:
    {
       "field": {
           "api_name": "{{value}}"
       },
       "comparator": "equals",
       "value": "{{value}}"
    }   
    Note: You must encode the value of the filters parameter before sending the request. You can have only one criterion for this parameter.

    Example: {"field": {"api_name": "operation_types.method"},"comparator": "equals","value": "POST"} 
    This fetches all the APIs whose request method is POST.

  • 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:

      Each filter criterion is explained with a sample request and response in the following sections.

  • comparatorstring, mandatory

    Represents the comparator used for filtering. The supported value is equals.

  • valuestring, mandatory

    Contains the value to be compared with the corresponding attribute of the api_name key in the field JSON object.

Note

  • Encode the value of the filters parameter before sending a request.
  • The filters parameter supports:
    • A single criterion.
    • The equals comparator.
  • This API is supported from version 2.
  • This API consumes 1 credit.

Sample Request

Copiedcurl "https://www.zohoapis.com/crm/v8/__apis"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"

Sample Response

Copied{
    "__apis": [
        {
            "path": "/crm/v8/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/v8/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/v8/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 the value "oauth_scope"

  • "api_name": "operation_types.oauth_scope"

    To filter the APIs based on a specific OAuth scope.

    The filters parameter structure is:

    filters : {"field": {"api_name": "operation_types.oauth_scope"}, "comparator": "equals", "value": "{{scope_name}}"}

    • Supported scope names - settings, modules, users, templates, org, mass_convert, features, mass_delete, mass_update, share, change_owner, send_mail, bulk, composite_requests, notifications, and coql.
    • To fetch the individual module-specific APIs, include the module name like "modules.leads", "modules.contacts", and so on.
    • To fetch the individual metadata-specific APIs, specify the value as "settings.territories", "settings.custom_views", "settings.fields", and so on.

Sample request using the "filters" parameter with the value "oauth_scope"

Copiedcurl "https://www.zohoapis.com/crm/v8/__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/v8/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/v8/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/v8/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 the value "method"

  • "api_name": "operation_types.method" 

    To filter the APIs based on a request method.

    The filters parameter structure is:

    filters - {"field": {"api_name": "operation_types.method"},"comparator": "equals","value": "{{request_method_as_value}}"}

    Supported values: GET, POST, PUT, PATCH, and DELETE. These values are case-sensitive.

Sample request using the "filters" parameter with the value "method"

Copiedcurl "https://www.zohoapis.com/crm/v8/__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/v8/Quotes/{{id}}/actions/send_mail",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.send_mail.quotes.CREATE",
                    "max_credits": 20,
                    "min_credits": 20
                }
            ]
        },
        {
            "path": "/crm/v8/Accounts/{{id}}/photo",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.accounts.CREATE",
                    "max_credits": 1,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/Deals/upsert",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.deals.CREATE",
                    "max_credits": 10,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/Deals/{{id}}/Attachments",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.deals.CREATE",
                    "max_credits": 1,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/Events",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.events.CREATE",
                    "max_credits": 10,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/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 the value "module"

  • "api_name": "module"

    To filter the APIs based on supported modules.

    The filters parameter structure is:

    filters : {"field": {"api_name": "module"},"comparator": "equals","value": "{{module_api_name}}"}

    Supported values 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.

Sample request using the "filters" parameter with the value "module"

Copiedcurl "https://www.zohoapis.com/crm/v8/__apis?filters=%7B%22field%22%3A%20%7B%22api_name%22%3A%20%22module%22%7D%2C%22comparator%22%3A%20%22equals%22%2C%22value%22%3A%20%22Deals%22%7D"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"

Sample Response

Copied{
    "__apis": [
        {
            "path": "/crm/v8/Deals/upsert",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.deals.CREATE",
                    "max_credits": 10,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/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
                }
            ]
        },
        {
            "path": "/crm/v8/Deals/{{id}}/actions/assign_territories",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.deals.UPDATE",
                    "max_credits": 1,
                    "min_credits": 1
                }
            ]
        },
        .
        .
        .
        
    ]
}

Sample request using the "filters" parameter with value "custom"

Copiedcurl "https://www.zohoapis.com/crm/v8/__apis?filters=%7B%22field%22%3A%20%7B%22api_name%22%3A%20%22module%22%7D%2C%22comparator%22%3A%20%22equals%22%2C%22value%22%3A%20%22custom%22%7D"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"

Response JSON Keys

  • __apisJSON array

    Contains the details of supported APIs in the API version given in the request URL.

    • pathstring

      Represents the API endpoint for the API version in the request URL.

    • operation_typesstring

      Represents the allowed operations for that API in that version.

      • methodstring

        Represents the supported request method for that API.

      • 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
    • You have passed an invalid JSON as value to the filters parameter.
      Resolution: Specify a valid JSON to the filters parameter. Refer to the Parameter section for the right format.
    • You have given an invalid value to the api_name attribute in the filters parameter. 
      Resolution: Specify a valid value to the api_name attribute. Possible values are operation_types.oauth_scope, operation_types.method, and module.
    • You have given an invalid value for the value key in the filters parameter.
      Resolutions:
      • For "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 "api_name" : "operation_types.method", the values can be GET, POST, PUT, PATCH, and DELETE.
      • For "api_name" : "module", the value should be any of the system-defined modules such as Leads, Contacts, Accounts, and so on. Refer to the Parameter section for the supported values.
      • For custom module, the value should be custom.
    • The comparator you have used is not supported.
      Resolution: The supported comparator is equals.
    • The given method value is not supported.
      Resolution: The method value is case-sensitive. The supported methods are GET, POST, PUT, PATCH, and DELETE.
  • DEPENDENT_FIELD_MISSINGHTTP 400

    You have not specified one or more dependent values in the parameter.
    Resolution: Specify the dependent fields for the filter parameter. Refer to the Parameter section for the mandatory and optional attributes.

  • MANDATORY_NOT_FOUNDHTTP 400

    One ore more mandatory keys are missing in the parameter value.
    Resolution: Specify all mandatory fields. Refer to the Parameter section.

  • INVALID_REQUEST_METHODHTTP 400

    The request method is incorrect.
    Resolution: Use the HTTP GET method to make this API call. Any other request method will result in this error.

  • OAUTH_SCOPE_MISMATCHHTTP 401

    The access token you have used to make this API call does not have the required scope.
    Resolution: Generate a new access token with the scope ZohoCRM.apis.READ and try this API again.

  • AUTHENTICATION_FAILUREHTTP 401

    You have not authorized the API call with valid access token.
    Resolution: Include a valid access token in the request header to authorize the API call.

  • INVALID_URL_PATTERNHTTP 404

    The request URL is incorrect.
    Resolution: Specify a valid request URL. Refer to the request URL section.
     

  • INTERNAL_ERRORHTTP 500

    Unexpected and unhandled exception in the server. 
    Resolution: Contact the support team at support@zohocrm.com.

Sample Response

Copied{
    "__apis": [
        {
            "path": "/crm/v8/{{module}}/actions/add_tags",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.custom.UPDATE",
                    "max_credits": 50,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/{{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/v8/{{module}}/{{id}}/actions/remove_territories",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.custom.UPDATE",
                    "max_credits": 1,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/{{module}}/upsert",
            "operation_types": [
                {
                    "method": "POST",
                    "oauth_scope": "ZohoCRM.modules.custom.CREATE",
                    "max_credits": 10,
                    "min_credits": 1
                }
            ]
        },
        {
            "path": "/crm/v8/{{module}}/deleted",
            "operation_types": [
                {
                    "method": "GET",
                    "oauth_scope": "ZohoCRM.modules.custom.READ",
                    "max_credits": 2,
                    "min_credits": 2
                }
            ]
        },
        .
        .
        .
    ]
}