Sort Data by Columns
Sorts the data table based on the selected column.
REQUEST URI
https://<ZohoAnalytics_Server_URI>/restapi/v2/workspaces/<workspace-id>/views/<view-id>/data/sort
Put
oauthscope: ZohoAnalytics.modeling.update
QUERY PARAMETERS
| Description |
|---|---|
| CONFIG | JSONObject Config parameter specifications are available in the below section. |
FIELDS FOR CONFIG JSON
| Key | Description |
|---|---|
| columns | JSONArray Sample: ["column-id-1","column-id-2","column-id-3"] |
| sortOrder | Integer Sorting order (1 → Ascending, 2 → Descending). |
| resetSort | Boolean If true, resets existing sort configuration. Default - false. |
Sample Request:
Copiedcurl https://analyticsapi.zoho.com/restapi/v2/workspaces/<workspace-id>/views/<view-id>/data/sort --data-urlencode 'CONFIG={"columns":[466206000000073014, 466206000000073013],sortOrder":1}'
-X 'PUT'
-H 'ZANALYTICS-ORGID: <org-id>'
-H 'Authorization: Zoho-oauthtoken <access_token>'CopiedorgId = "55522777";
workspaceId = "<workspace-id>";
viewId = "<view-id>";
headersMap = Map();
headersMap.put("ZANALYTICS-ORGID", orgId);
config = Map();
columnsList = {};
columnsList.add(466206000000073014);
columnsList.add(466206000000073013);
config.put("columns", columnsList);
config.put("sortOrder", 1);
paramsMap = Map();
paramsMap.put("CONFIG", config.toString());
response = invokeurl
[
url :"https://analyticsapi.zoho.com/restapi/v2/workspaces/" + workspaceId + "/views/" + viewId + "/data/sort"
type :PUT
parameters:paramsMap
headers:headersMap
connection:"analytics_oauth_connection"
];
info response;Copiedusing System;
using System.Collections.Generic;
using ZohoAnalytics;
using System.Text.Json;
namespace ZohoAnalyticsTest
{
class Program
{
long orgId = 55522777;
long workspaceId = 35130000001055707;
long viewId = 35730000007354002;
public void SortDataByColumns(IAnalyticsClient ac)
{
List<long> columnIds = new()
{
466206000000069003,
466206000000073013
};
int sortOrder = 2; // 1 -> ascending, 2 -> descending
IViewAPI view = ac.GetViewInstance(orgId, workspaceId, viewId);
view.SortDataByColumns(columnIds, sortOrder, false, null);
Console.WriteLine("success");
}
public void SortDataByColumnsReset(IAnalyticsClient ac)
{
IViewAPI view = ac.GetViewInstance(orgId, workspaceId, viewId);
view.SortDataByColumns(null, null, true, 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.SortDataByColumns(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"
viewId = "35130000006299001"
)
func SortDataByColumns(ac ZAnalytics.Client) {
columnIDs := []interface{}{
"466206000000073013",
"466206000000073014",
}
sortOrder := 2 // 1 for ascending, 2 for descending
view := ZAnalytics.GetViewInstance(&ac, orgId, workspaceId, viewId)
exception := view.SortDataByColumns(columnIDs, sortOrder, false, nil)
if exception != nil {
fmt.Println("Error:", exception)
return
}
fmt.Println("success")
}
func SortDataByColumnsReset(ac ZAnalytics.Client) {
view := ZAnalytics.GetViewInstance(&ac, orgId, workspaceId, viewId)
exception := view.SortDataByColumns(nil, 0, true, nil)
if exception != nil {
fmt.Println("Error:", exception)
return
}
fmt.Println("success")
}
func main() {
ac := ZAnalytics.GetAnalyticsClient(clientId, clientSecret, refreshToken)
SortDataByColumns(ac)
}Copiedimport com.zoho.analytics.client.*;
import org.json.*;
public class Test {
private long orgId = 55522777l;
private long workspaceId = 35130000001055707l;
private long viewId = 35130000005594013l;
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.sortDataByColumns(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 sortDataByColumns(AnalyticsClient ac) throws Exception {
JSONArray columnIds = new JSONArray();
columnIds.put("466206000000073014");
columnIds.put("466206000000073013");
int sortOrder = 2; // 1 = ASC, 2 = DESC
ViewAPI view = ac.getViewInstance(orgId, workspaceId, viewId);
view.sortDataByColumns(columnIds, sortOrder, false, null);
System.out.println("success");
}
public void resetSort(AnalyticsClient ac) throws Exception {
ViewAPI view = ac.getViewInstance(orgId, workspaceId, viewId);
view.sortDataByColumns(null, null, true, 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";
public $view_id = "35130000006310013";
function __construct() {
$this->ac = new AnalyticsClient($this->client_id, $this->client_secret, $this->refresh_token);
}
function sortDataByColumns() {
$column_ids = array(
"466206000000073014",
"466206000000073013"
);
$sort_order = 2;
$view = $this->ac->getViewInstance($this->org_id, $this->workspace_id, $this->view_id);
$view->sortDataByColumns($column_ids, $sort_order, false);
echo "success\n";
}
function resetSort() {
$view = $this->ac->getViewInstance($this->org_id, $this->workspace_id, $this->view_id);
$view->sortDataByColumns(NULL, NULL, true);
echo "success\n";
}
}
$test_obj = new Test();
try {
$test_obj->sortDataByColumns();
}
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->getMessage() . "\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"
VIEWID = "35130000006310013"
class Sample:
ac = AnalyticsClient(Config.CLIENTID, Config.CLIENTSECRET, Config.REFRESHTOKEN)
def sort_data_by_columns(self, ac):
column_ids = ["100003000000002010", "100003000000002006"]
sort_order = 2
view = ac.get_view_instance(Config.ORGID, Config.WORKSPACEID, Config.VIEWID)
view.sort_data_by_columns(column_ids, sort_order, False)
print("success")
def sort_data_by_columns_reset(self, ac):
view = ac.get_view_instance(Config.ORGID, Config.WORKSPACEID, Config.VIEWID)
view.sort_data_by_columns(None, None, True)
print("success")
try:
obj = Sample()
obj.sort_data_by_columns(obj.ac)
except Exception as e:
print(str(e))Copiedvar analyticsClient = require('./AnalyticsClient');
var clientId = '';
var clientSecret = '';
var refreshToken = '';
var orgId = '';
var workspaceId = '';
var viewId = '';
var ac = new analyticsClient(clientId, clientSecret, refreshToken);
var columnIds = ["100003000000002010", "100003000000002006"];
var sortOrder = 2;
var view = ac.getViewInstance(orgId, workspaceId, viewId);
view.sortDataByColumns(columnIds, sortOrder, false)
.then(() => {
console.log("success");
})
.catch((error) => {
console.log('errorCode : ' + error.errorCode);
console.log('errorMessage : ' + error.errorMessage);
});Copiedrequire 'zoho_analytics_client'
class Config
CLIENT_ID = "1000.xxxxxxx"
CLIENT_SECRET = "xxxxxxx"
REFRESH_TOKEN = "1000.xxxxxxx.xxxxxxx"
ORG_ID = "55522777"
WORKSPACE_ID = "35130000001055707"
VIEW_ID = "35130000006310013"
end
class Sample
def initialize
@ac = AnalyticsClient.new
.with_data_center("US")
.with_oauth({
"clientId" => Config::CLIENT_ID,
"clientSecret" => Config::CLIENT_SECRET,
"refreshToken" => Config::REFRESH_TOKEN
})
#.with_token_store_path("/home/admin/analytics_ruby_sdk/tokens") # Optional – specify a directory path to securely store the encrypted access token
.build
end
def sort_data_by_columns
column_ids = ["466206000000073013", "466206000000073014"]
sort_order = 1 # 1 = Ascending, 2 = Descending
view = @ac.get_view_instance(Config::ORG_ID, Config::WORKSPACE_ID, Config::VIEW_ID)
view.sort_data_by_columns(column_ids, sort_order, false)
puts "success"
end
def sort_data_by_columns_reset
view = @ac.get_view_instance(Config::ORGID, Config::WORKSPACEID, Config::VIEWID)
view.sort_data_by_columns(nil, nil, true)
puts "success"
end
end
begin
obj = Sample.new
obj.sort_data_by_columns
rescue ServerError => e
puts "Server Error: #{e.response_content}"
rescue StandardError => e
puts e.message
puts e.backtrace.join("\n")
endDownload SDKs: C# | GO | JAVA | PHP | PYTHON | NodeJS | Ruby
Sample value for CONFIG parameter:
Copied{
"columns": [
35130000003942068,
35130000003942070
],
"sortOrder": 2
}Sample Response:
CopiedHTTP/1.1 204 No Content