Share Records

In Zoho CRM, we have different levels of data sharing. One of them is record-level data sharing, where the users can share individual records with other users in the organization. The records can be shared with or without the related lists.

Purpose

To get the details of a shared record.

Request Details

Request URL

{api-domain}/crm/{version}/{module_api_name}/{record_id}/actions/share

Supported modules

Leads, Accounts, Contacts, Deals, Campaigns, Cases, Solutions, Products, Vendors, Price Books, Quotes, Sales Orders, Purchase Orders, Invoices, and Custom.

Header

Authorization: Zoho-oauthtoken d92d4xxxxxxxxxxxxx15f52

Scope

scope=ZohoCRM.share.{module_name}.{operation_type}

Possible module names

leads, accounts, contacts, deals, campaigns, cases, solutions, products, vendors, pricebooks, quotes, salesorders, purchaseorders, invoices, and custom.

Possible operation types

ALL - Full access to the record
READ - Get shared record's details

Sample Request

Copiedcurl "https://www.zohoapis.com/crm/v3/Contacts/3652397000000649013/actions/share"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Copiedresponse = invokeurl
[
	url: "https://www.zohoapis.com/crm/v3/Contacts/3652397000000649013/actions/share"
	type: GET
	connection:"crm_oauth_connection"
];
info response;

Parameters

  • sharedTostring, optional

    Pass the current user’s ID to know the details like the ID and the module of the records shared with that user.

  • viewstring, optional

    Represents the details of the shared records that you want to retrieve. This parameter takes the value summary.

Sample Request with sharedTo parameter

Copiedcurl "https://www.zohoapis.com/crm/v3/Contacts/3652397000000649013/actions/share?view=summary&sharedTo=4150868000001199001"
-X GET
-H "Authorization: Zoho-oauthtoken 1000.8cb99dxxxxxxxxxxxxx9be93.9b8xxxxxxxxxxxxxxxf"
Note
  • The response differs based on the access permissions of the user with whom the record is shared. If the user already has full permission over the shared record via role, territory, data sharing, user-lookup field, the response will entail the "user" key representing the users with whom the record is shared.

  • The result is sorted based on the following criteria in the order mentioned below:

    • The order in which the records are shared. For instance, if a record is shared to user A and then to user B, in the result, user B's details will be displayed first.

    • Whether the record is shared alone or with related list. The records that are shared alone have higher precedence.

    • The permissions given to the user. The order of precedence is from high to low, Full Access, Read-Write, Read-only.

    • The time at which the record was shared. The order of precedence is from oldest to latest.

Sample Response when the user gains access only via record-level sharing

Copied{
    "share": [
        {
            "shared_with": {
                "name": “Jane Smith",
                "id": "3652397000000281001",
                "type": "users",
                "zuid": "679952958"
            },
            "share_related_records": true,
            "shared_through": {
                "module": {
                    "name": "Contacts",
                    "id": "3652397000000002179"
                },
                "id": "3652397000000649013"
            },
            "permission": "full_access",
            "type": "private"
        }
    ]
}

Possible Errors

  • OAUTH_SCOPE_MISMATCHHTTP 401

    invalid oauth scope to access this URLe
    Resolution: The client does not have the scope to ZohoCRM.share.{module_name}.READ
    (or)
    The module name given in the URL is either Events, Calls, Tasks or any Linking module.
    (or)
    The module name given in the URL is invalid.

  • INVALID_URL_PATTERNHTTP 404

    Please check if the URL trying to access is a correct one
    Resolution: The request URL has syntactical errors.

  • INVALID_DATAHTTP 400

    ENTITY_ID_INVALID
    Resolution: The record ID given in the URL is either invalid
    (or)
    does not belong to the module mentioned.

  • INVALID_DATAHTTP 400

    Scheduler is running.
    Resolution: The record is either being shared or revoked currently.

  • INVALID_MODULEHTTP 400

    the module name given seems to be invalid
    Resolution: The module name specified is incorrect. Refer to supported modules section above and specify a valid module API name.

  • PATTERN_NOT_MATCHEDHTTP 400

    Please check whether the input values are correct
    Resolution: The value specified in 'view' parameter is incorrect. Refer to parameters section above and specify valid input.

  • NO_PERMISSIONHTTP 403

    Permission denied to read
    Resolution: The user does not have permission to read details of a shared record. 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.
    Resolution: The user does not have the permission to read details of a shared record. Contact your system administrator.

Sample Response when the user already has full permission to access the record

Copied{
    "share": [
        {
            "shared_with": {
                "name": “Jane Smith“,
                "id": "3652397000000281001",
                "type": "users",
                "zuid": "679952958"
            },
            "share_related_records": true,
            "shared_through": {
                "module": {
                    "name": "Contacts",
                    "id": "3652397000000002179"
                },
                "name": "Patricia",
                "id": "3652397000000649013"
            },
            "shared_time": "2022-03-01T11:25:28+05:30",
            "permission": "full_access",
            "shared_by": {
                "name": "Patricia Boyle",
                "id": "3652397000000186017",
                "zuid": "678521418"
            },
            "type": "private"
        }
    ]
}