Update Custom Module

Purpose

To update a custom module in your Zoho CRM.

Request Details

Request URL

{api-domain}/crm/{version}/settings/modules/{module_id}    (or) 
{api-domain}/crm/{version}/settings/modules/{module_api_name}

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

Scope

scope = ZohoCRM.settings.modules.UPDATE   (or)
scope = ZohoCRM.settings.modules.ALL   (or)
scope = ZohoCRM.settings.ALL 

Sample Request

Copiedcurl "https://www.zohoapis.com/crm/v6/settings/modules/2423488000000834002"
-X PUT
-d "@input.json"
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"

Input JSON Keys

  • plural_labelstring, mandatory

    Represents the unique plural name of the module. A maximum of 25 characters, including spaces, is allowed. Note that the value of this field should not be empty, and only letters, numbers, and spaces are supported.

  • singular_labelstring, mandatory

    Represents the unique singular name of the module. A maximum of 25 characters, including spaces, is allowed. Note that the value of this field should not be empty, and only letters, numbers, and spaces are supported.

  • profilesstring, mandatory

    Specify the profiles that should have access to the module. It is mandatory to specify at least one profile.  Refer to the GET Profiles API to retrieve the profiles available in your org.

Notes

  • The module API name can be updated  only through the UI.
  • To create or update custom modules, you need  the Enterprise edition or higher.
  • You can update one module in a single API call.
  • Assign at least one profile to each module.

Sample Input

Copied{
    "modules": [
        {
             "plural_label": "Digital Marketings",
             "singular_label": "Digital Marketing",
            
            "profiles": [
                {
                    "id": "2423488000000015972",
                      "_delete": null
                },
               
                {
                    "id": "2423488000000015975"
                }
            
        ]
    }
]
}

Possible Errors

  • INVALID_MODULEHTTP 400

    The URL contains invalid module data
    Resolution: Specify the correct API name or module ID in the URL. Refer to the GET Modules API to retrieve the module details.

  • NOT_ALLOWEDHTTP 400

    API name cannot be updated for module
    Resolution: The module API name can be updated  only through the UI.

  • MINIMUM_DATA_NOT_FOUNDHTTP 400

    Minimum one profile is needed
    Resolution: The profile key should not be empty or null. Assign atleast one profile to update a module.

  • 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 update a custom module. Create a new token with the required scopes. Refer to scope section above.

  • MANDATORY_NOT_FOUNDHTTP 400

    Mandatory fields are missing 
    Resolution: Specify all the mandatory fields to create a custom module. Refer to the aboveInput JSON Keys.

  • 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{
    "modules": [
        {
            "code": "SUCCESS",
            "details": {
                "id": "2423488000000834002"
            },
            "message": "module updated successfully",
            "status": "success"
        }
    ]
}