Remove Share

Remove shared views for the specified users.

REQUEST URI

https://<ZohoAnalytics_Server_URI>/restapi/v2/workspaces/<workspace-id>/share

Delete

oauthscopeZohoAnalytics.share.delete

QUERY PARAMETERS

 

Parameter Name
Description
CONFIG*JSONObject

Config parameter specifications are available in the below section.

FIELDS FOR CONFIG JSON

KeyDescription
emailIds*JSONArray

The email address of the users to whom the sharing need to be removed.

Sample: ["emailId1", "emailId2"]
viewIdsJSONArray

View ids whose sharing needs to be removed.

Sample: ["viewId1", "viewId2"]
removeAllViewsBoolean

To remove all the shared views for the specified users.
domainNameString

Name of the domain.
To remove the shared views from the white label domain.
groupIdsJSONArray

The ids of the groups to which the the sharing need to be removed.

POSSIBLE ERROR CODES

7103, 7104, 7301, 7387, 8060, 8078, 8079, 8083, 8504, 8518, 8535

Sample Request:

Copiedcurl https://analyticsapi.zoho.com/restapi/v2/workspaces/<workspace-id>/share?CONFIG=<encoded_json_value> 
-X 'DELETE' 
-H 'ZANALYTICS-ORGID: <org-id>' 
-H 'Authorization: Zoho-oauthtoken <access_token>'
Copiedusing System;
using System.Collections.Generic;
using ZohoAnalytics;

namespace ZohoAnalyticsTest
{
    class Program
    {
        long orgId = 55522777;
        long workspaceId = 35130000001055707;

        public void RemoveShare(IAnalyticsClient ac)
        {
            List<long> viewIds = new List<long>();
            viewIds.Add(35730000007354002);
            List<string> emailIds = new List<string>();
            emailIds.Add("testuser+1@zoho.com");
            IWorkspaceAPI ws = ac.GetWorkspaceInstance(orgId, workspaceId);
            ws.RemoveShare(viewIds, emailIds, null);
            Console.WriteLine("success");
        }

        static void Main(string[] args)
        {
            string clientId = "1000.xxxxxxx";
            string clientSecret = "xxxxxxx";
            string refreshToken = "1000.xxxxxxx.xxxxxxx";

            try
            {
                IAnalyticsClient ac = new AnalyticsClient(clientId, clientSecret, refreshToken);
                Program obj = new Program();
                obj.RemoveShare(ac);
            }
            catch (ServerException ex)
            {
                Console.WriteLine("Server exception - " + ex.GetErrorMessage());
            }
            catch (Exception ex)
            {
                Console.WriteLine("Other exception - " + ex.Message);
            }
        }
    }
}
Copiedpackage main

import (
    "fmt"
    ZAnalytics "zoho/pkg/analyticsclient"
)

var(
    clientId = "1000.xxxxxxx"
    clientSecret = "xxxxxxx"
    refreshToken = "1000.xxxxxxx.xxxxxxx"

    orgId = "55522777"
    workspaceId = "35130000001055707"
)

func RemoveShare(ac ZAnalytics.Client) {

    viewids := [1]string{}
    viewids[0] = "35130000001354002"

    emailids := [1]string{}
    emailids[0] = "user+1@zoho.com"

    config := map[string]interface{}{}

    workspace := ZAnalytics.GetWorkspaceInstance(&ac, orgId, workspaceId)
    err := workspace.RemoveShare(viewids, emailids, config)
    if(err != nil){
        fmt.Println("Error - " + err.ErrorMessage)
    }else{
        fmt.Println("success")
    }
}

func main() {

    ac := ZAnalytics.GetAnalyticsClient(clientId, clientSecret, refreshToken)
    RemoveShare(ac)

}
Copiedimport com.zoho.analytics.client.*;
import org.json.*;

public class Test {

    private long orgId = 55522777l;
    private long workspaceId = 35130000001055707l;

    public static void main(String args[]){

        String clientId = "1000.xxxxxxx";
        String clientSecret = "xxxxxxx";
        String refreshToken = "1000.xxxxxxx.xxxxxxx";

        Test tObj = new Test();
        AnalyticsClient ac = new AnalyticsClient(clientId, clientSecret, refreshToken);

        try {
            tObj.removeShare(ac);
        }
        catch (ServerException ex) {
            System.out.println("Server exception - ErrorCode : " + ex.getErrorCode() + ", ErrorMessage : "  + ex.getErrorMessage());
        }
        catch (ParseException ex) {
            System.out.println("Parser exception - ErrorMessage : "  + ex.getResponseMessage());
        }
        catch (Exception ex) {
            System.out.println("Other exception - ");
            ex.printStackTrace();
        }
    }

    public void removeShare(AnalyticsClient ac) throws Exception {
        WorkspaceAPI workspace = ac.getWorkspaceInstance(orgId, workspaceId);
        JSONArray emailIds = new JSONArray();
        emailIds.put("user+2@zoho.com");
        JSONArray viewIds = new JSONArray();
        viewIds.put("35730000007354002");
        workspace.removeShare(viewIds, emailIds, null);
        System.out.println("success");
    }
}
Copied<?php

    require 'AnalyticsClient.php';

    class Test
    {
        public $ac = NULL;
        public $client_id = "1000.xxxxxxx";
        public $client_secret = "xxxxxxx";
        public $refresh_token = "1000.xxxxxxx.xxxxxxx";

        public $org_id = "55522777";
        public $workspace_id = "35130000001055707";

        function __construct() {
            $this->ac =  new AnalyticsClient($this->client_id, $this->client_secret, $this->refresh_token);
        }

        function removeShare() {

            $view_ids = array("35130000001080001", "35130000001080082");
            $email_ids = array("user+1@zoho.com", "user+2@zoho.com");

            $workspace = $this->ac->getWorkspaceInstance($this->org_id, $this->workspace_id);
            $workspace->removeShare($view_ids, $email_ids);
            echo "success\n";
        }
    }

    $test_obj = new Test();

    try {
        $test_obj->removeShare();
    }
    catch(ServerException $se) {
        echo "Server exception : " . $se->getErrorMessage() . "\n";
    }
    catch(IOException $ioe) {
        echo "IO exception : " . $ioe->getErrorMessage() . "\n";
    }
    catch(ParseException $pe) {
        echo "Parser exception : " . $pe->getErrorMessage() . "\n";
    }
    catch(Exception $e) {
        echo "Exception : " . $e->getErrorMessage() . "\n";
    }
?>
Copiedfrom __future__ import with_statement
from AnalyticsClient import AnalyticsClient
import sys
import json

class Config:

    CLIENTID = "1000.xxxxxxx";
    CLIENTSECRET = "xxxxxxx";
    REFRESHTOKEN = "1000.xxxxxxx.xxxxxxx";

    ORGID = "55522777";
    WORKSPACEID = "35130000001055707";

class sample:

    ac = AnalyticsClient(Config.CLIENTID, Config.CLIENTSECRET, Config.REFRESHTOKEN)

    def remove_share(self, ac):
        view_ids = []
        view_ids.append("35730000007354002")

        email_ids = []
        email_ids.append("user+1@zoho.com")

        permissions = {}
        permissions["read"] = True
        workspace = ac.get_workspace_instance(Config.ORGID, Config.WORKSPACEID)
        workspace.remove_share(view_ids, email_ids)
        print("success")

try:
    obj = sample()
    obj.remove_share(obj.ac);

except Exception as e:
    print(str(e))
Copiedvar analyticsClient = require('./AnalyticsClient');

var clientId = '1000.xxxxxxx';
var clientSecret = 'xxxxxxx';
var refreshtoken = '1000.xxxxxxx.xxxxxxx';
var orgId = '55522777';
var workspaceId = '35130000001055707';

var viewIds = [];
var emailIds = [];

var ac = new analyticsClient(clientId, clientSecret, refreshtoken);

var config = {};

viewIds.push('');
viewIds.push('');

emailIds.push('');
emailIds.push('');
var workspace = ac.getWorkspaceInstance(orgId, workspaceId);
workspace.removeShare(viewIds, emailIds, config).catch((error) => {
    console.log('errorCode : '+error.errorCode);
    console.log('errorMessage : '+error.errorMessage);
});
CopiedorgId = "55522777";
workspaceId = "35130000001055707";

headersMap = Map();
headersMap.put("ZANALYTICS-ORGID",orgId);

emailIds = {};
emailIds.add("user+1@zoho.com");
emailIds.add("user+2@zoho.com");
viewIds = {};
viewIds.add("35130000001354002");
viewIds.add("35130000001355005");

config = Map();
config.put("emailIds",emailIds);
config.put("viewIds",viewIds);
paramsMap = Map();
paramsMap.put("CONFIG",config.toString());

response = invokeurl
[
  url :"https://analyticsapi.zoho.com/restapi/v2/workspaces/" + workspaceId + "/share"
  type :DELETE
  parameters:paramsMap
  headers:headersMap
  connection:"analytics_oauth_connection"
];

Download client libraries:  C# | GO | JAVA | PHP | PYTHON | NodeJS

Sample value for CONFIG parameter:

Copied{
  "emailIds": ["<email-id1>", "<email-id2>"],
  "removeAllViews": "true"
}

Sample Response:

CopiedHTTP/1.1 204 No Content