Vani Logo Vani / API Docs v1
Access Vani
Zone Operations / Tables

Tables

Cell, row, and column operations on table objects, and typed database_table records and schema.

Tables

Insert and delete table rows and columns, merge cells, and read cell text.
Get paragraph text for a table cell by paragraph index range
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters table_query
NameTypeDescription
table_queryREQUIRED string (JSON) `table_query` — JSON-encoded GetCellParagraphText request: table, cell, payload.text.range. Send this value as a JSON string, not as a JSON object — URL-encode the encoded JSON.
STRING CARRYING JSON URL-encode before sending
Decoded
{
  "payload": {
    "text": {
      "range": {
        "end_paragraph_index": "42",
        "start_paragraph_index": "42"
      }
    }
  }
}
URL-encoded, as sent
%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22end_paragraph_index%22%3A%2242%22%2C%22start_paragraph_index%22%3A%2242%22%7D%7D%7D%7D"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphtext",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Report a table object's current dimensions as a row count and a column count. Call it first to bound row and column indexes before reading, editing, inserting or deleting.
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters table_query
NameTypeDescription
table_queryREQUIRED string (JSON) `table_query` — JSON-encoded GetTableSize request: table. Send this value as a JSON string, not as a JSON object — URL-encode the encoded JSON.
STRING CARRYING JSON URL-encode before sending
Decoded
{
  "table": {
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "object_id": "60712000000123456",
    "frame_id": "60712000000123456"
  }
}
URL-encoded, as sent
%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size?table_query=%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size?table_query=%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size?table_query=%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size?table_query=%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size?table_query=%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size?table_query=%7B%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/size",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Report how many paragraphs one table cell's text contains. Use to bound a paragraph index before getTableCellParagraphText.
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters table_query
NameTypeDescription
table_queryREQUIRED string (JSON) `table_query` — JSON-encoded GetCellParagraphCount request: table, cell. Send this value as a JSON string, not as a JSON object — URL-encode the encoded JSON.
STRING CARRYING JSON URL-encode before sending
Decoded
{
  "cell": {
    "row_index": "42",
    "column_index": "42"
  },
  "table": {
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "object_id": "60712000000123456",
    "frame_id": "60712000000123456"
  }
}
URL-encoded, as sent
%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/paragraphcount",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Report the character count of one table cell's text without returning the text itself. Use to bound a character range before reading or mutating that cell.
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters table_query
NameTypeDescription
table_queryREQUIRED string (JSON) `table_query` — JSON-encoded GetCellTextLength request: table, cell. Send this value as a JSON string, not as a JSON object — URL-encode the encoded JSON.
STRING CARRYING JSON URL-encode before sending
Decoded
{
  "cell": {
    "row_index": "42",
    "column_index": "42"
  },
  "table": {
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "object_id": "60712000000123456",
    "frame_id": "60712000000123456"
  }
}
URL-encoded, as sent
%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength?table_query=%7B%22cell%22%3A%7B%22row_index%22%3A%2242%22%2C%22column_index%22%3A%2242%22%7D%2C%22table%22%3A%7B%22zone_id%22%3A%22f47ac10b-58cc-4372-a567-0e02b2c3d479%22%2C%22object_id%22%3A%2260712000000123456%22%2C%22frame_id%22%3A%2260712000000123456%22%7D%7D"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/textlength",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Read the plain text held in one table cell, addressed by row and column index, either whole or over a character range. Returns text with formatting flattened away.
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters table_query
NameTypeDescription
table_queryREQUIRED string (JSON) `table_query` — JSON-encoded GetCellText request: table, cell, optional payload.text (range or all_text). Send this value as a JSON string, not as a JSON object — URL-encode the encoded JSON.
STRING CARRYING JSON URL-encode before sending
Decoded
{
  "payload": {
    "text": {
      "range": {
        "start_index": "42",
        "end_index": "42"
      }
    }
  }
}
URL-encoded, as sent
%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text?table_query=%7B%22payload%22%3A%7B%22text%22%3A%7B%22range%22%3A%7B%22start_index%22%3A%2242%22%2C%22end_index%22%3A%2242%22%7D%7D%7D%7D"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Merge a rectangular block of table cells into a single cell, given start and end row and column indexes. Reverse it with unmergeTableCells.
OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object MergeCells payload
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "range": {
      "end_column_index": 1,
      "start_column_index": 1,
      "start_row_index": 1,
      "end_row_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "range": {
      "end_column_index": 1,
      "start_column_index": 1,
      "start_row_index": 1,
      "end_row_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "range": {
      "end_column_index": 1,
      "start_column_index": 1,
      "start_row_index": 1,
      "end_row_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"range\":{\"end_column_index\":1,\"start_column_index\":1,\"start_row_index\":1,\"end_row_index\":1}},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"range": {"end_column_index": 1, "start_column_index": 1, "start_row_index": 1, "end_row_index": 1}}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "range": {
      "end_column_index": 1,
      "start_column_index": 1,
      "start_row_index": 1,
      "end_row_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/merge",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Insert rows before or after an anchor row index
OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object InsertRows payload
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"anchor_index\":1,\"count\":1,\"position\":\"INSERT_POSITION_UNSPECIFIED\"},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"anchor_index": 1, "count": 1, "position": "INSERT_POSITION_UNSPECIFIED"}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/insert",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Remove a contiguous band of table rows given a half-open row index range (start inclusive, end exclusive). Rows below shift up, so re-read the table size before the next index-based call.
OperationDELETE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object DeleteRows payload
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"range\":{\"start_index\":1,\"end_index\":1}},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"range": {"start_index": 1, "end_index": 1}}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/rows/delete",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Apply text mutation (range/cursor/all_text) to a table cell
OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object EditCellText payload
cell REQUIRED object Target cell reference
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "text": {
      "cursor": {
        "cursor_index": 1,
        "operation": "CURSOR_TEXT_OPERATION_UNSPECIFIED",
        "text": "Hello Vani"
      }
    }
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "text": {
      "cursor": {
        "cursor_index": 1,
        "operation": "CURSOR_TEXT_OPERATION_UNSPECIFIED",
        "text": "Hello Vani"
      }
    }
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "text": {
      "cursor": {
        "cursor_index": 1,
        "operation": "CURSOR_TEXT_OPERATION_UNSPECIFIED",
        "text": "Hello Vani"
      }
    }
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"text\":{\"cursor\":{\"cursor_index\":1,\"operation\":\"CURSOR_TEXT_OPERATION_UNSPECIFIED\",\"text\":\"Hello Vani\"}}},\"cell\":{\"row_index\":1,\"column_index\":1},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"text": {"cursor": {"cursor_index": 1, "operation": "CURSOR_TEXT_OPERATION_UNSPECIFIED", "text": "Hello Vani"}}}, "cell": {"row_index": 1, "column_index": 1}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "text": {
      "cursor": {
        "cursor_index": 1,
        "operation": "CURSOR_TEXT_OPERATION_UNSPECIFIED",
        "text": "Hello Vani"
      }
    }
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/edittext",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Insert columns before or after an anchor column index
OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object InsertColumns payload
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"anchor_index\":1,\"count\":1,\"position\":\"INSERT_POSITION_UNSPECIFIED\"},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"anchor_index": 1, "count": 1, "position": "INSERT_POSITION_UNSPECIFIED"}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "anchor_index": 1,
    "count": 1,
    "position": "INSERT_POSITION_UNSPECIFIED"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/insert",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Unmerge a merged region of table cells

Pass the table reference and payload.cell ({row_index, column_index}) identifying any cell inside the merged area. The payload takes a single cell reference, not a range.

OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object UnmergeCell payload. Must contain 'cell' ({row_index, column_index}) — do NOT use 'range'. Example: {"cell": {"row_index": 0, "column_index": 1}}
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "cell": {
      "row_index": 1,
      "column_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "cell": {
      "row_index": 1,
      "column_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "cell": {
      "row_index": 1,
      "column_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"cell\":{\"row_index\":1,\"column_index\":1}},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"cell": {"row_index": 1, "column_index": 1}}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "cell": {
      "row_index": 1,
      "column_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cells/unmerge",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Delete columns in a specified column index range
OperationDELETE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object DeleteColumns payload
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"range\":{\"start_index\":1,\"end_index\":1}},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"range": {"start_index": 1, "end_index": 1}}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "range": {
      "start_index": 1,
      "end_index": 1
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/columns/delete",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Overwrite one table cell's entire text with a supplied string. Whole-cell replacement - use editTableCellText for a range, cursor or otherwise partial mutation.
OperationUPDATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.UPDATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
payload REQUIRED object SetCellText payload
cell REQUIRED object Target cell reference
table REQUIRED object Table object reference
curl -X PUT "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "text": "Hello Vani"
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "text": "Hello Vani"
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.put(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text'),
  method: 'PUT',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "payload": {
    "text": "Hello Vani"
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"text\":\"Hello Vani\"},\"cell\":{\"row_index\":1,\"column_index\":1},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .PUT(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"payload": {"text": "Hello Vani"}, "cell": {"row_index": 1, "column_index": 1}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text"
    type: PUT
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "payload": {
    "text": "Hello Vani"
  },
  "cell": {
    "row_index": 1,
    "column_index": 1
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/table/cell/text",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed

Database Tables

Manage typed database_table columns, records, schema, and queries.
Dry-run a column type change: feasibility and convertible/incompatible counts
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters object_id · column_id · target_type
NameTypeDescription
object_idREQUIRED string Database table object id
column_idREQUIRED string Column id to test
target_typeREQUIRED string Target ColumnType enum name (e.g. NUMBER)
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility?object_id=60712000000123456&column_id=60712000000123456&target_type=string" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility?object_id=60712000000123456&column_id=60712000000123456&target_type=string"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility?object_id=60712000000123456&column_id=60712000000123456&target_type=string'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility?object_id=60712000000123456&column_id=60712000000123456&target_type=string"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility?object_id=60712000000123456&column_id=60712000000123456&target_type=string";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility?object_id=60712000000123456&column_id=60712000000123456&target_type=string"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/type/feasibility",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Read database_table column schema (id, type, name, option lists) and row count
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.READ
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Query parameters object_id
NameTypeDescription
object_idREQUIRED string Database table object id (mint-time UUID)
curl -X GET "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema?object_id=60712000000123456" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json"
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema?object_id=60712000000123456"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

response = requests.get(url, headers=headers)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema?object_id=60712000000123456'),
  method: 'GET',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema?object_id=60712000000123456"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        HttpRequest request = requestBuilder
            .GET(HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema?object_id=60712000000123456";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema?object_id=60712000000123456"
    type: GET
    headers: headers
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/schema",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Add a column (appended); applies its default to existing rows
OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
column REQUIRED object Column spec (name, type, options, default, constraints)
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "column": {
    "lookup": {
      "source_column_id": "60712000000123456",
      "relation_column_id": "60712000000123456"
    },
    "unique": true,
    "name": "Sample name",
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ],
    "default_value": {
      "value": {
        "date": "string",
        "select": "string",
        "rating": 1,
        "toggle": true,
        "url": "string",
        "relation": {
          "row_ids": [
            "string",
            "string"
          ]
        },
        "number": 1.5,
        "multi_select": {
          "option_ids": [
            "string",
            "string"
          ]
        }
      }
    },
    "type": "TEXT",
    "required": true,
    "relation": {
      "reciprocal_column_id": "60712000000123456",
      "allow_multiple": true,
      "related_table_id": "60712000000123456"
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "column": {
    "lookup": {
      "source_column_id": "60712000000123456",
      "relation_column_id": "60712000000123456"
    },
    "unique": true,
    "name": "Sample name",
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ],
    "default_value": {
      "value": {
        "date": "string",
        "select": "string",
        "rating": 1,
        "toggle": true,
        "url": "string",
        "relation": {
          "row_ids": [
            "string",
            "string"
          ]
        },
        "number": 1.5,
        "multi_select": {
          "option_ids": [
            "string",
            "string"
          ]
        }
      }
    },
    "type": "TEXT",
    "required": true,
    "relation": {
      "reciprocal_column_id": "60712000000123456",
      "allow_multiple": true,
      "related_table_id": "60712000000123456"
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "column": {
    "lookup": {
      "source_column_id": "60712000000123456",
      "relation_column_id": "60712000000123456"
    },
    "unique": true,
    "name": "Sample name",
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ],
    "default_value": {
      "value": {
        "date": "string",
        "select": "string",
        "rating": 1,
        "toggle": true,
        "url": "string",
        "relation": {
          "row_ids": [
            "string",
            "string"
          ]
        },
        "number": 1.5,
        "multi_select": {
          "option_ids": [
            "string",
            "string"
          ]
        }
      }
    },
    "type": "TEXT",
    "required": true,
    "relation": {
      "reciprocal_column_id": "60712000000123456",
      "allow_multiple": true,
      "related_table_id": "60712000000123456"
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"column\":{\"lookup\":{\"source_column_id\":\"60712000000123456\",\"relation_column_id\":\"60712000000123456\"},\"unique\":true,\"name\":\"Sample name\",\"options\":[{\"color\":{\"hsb\":{\"saturation\":1.5,\"brightness\":1.5,\"hue\":1.5}},\"id\":\"60712000000123456\",\"value\":\"string\"},{\"color\":{\"hsb\":{\"saturation\":1.5,\"brightness\":1.5,\"hue\":1.5}},\"id\":\"60712000000123456\",\"value\":\"string\"}],\"default_value\":{\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}},\"type\":\"TEXT\",\"required\":true,\"relation\":{\"reciprocal_column_id\":\"60712000000123456\",\"allow_multiple\":true,\"related_table_id\":\"60712000000123456\"}},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"column": {"lookup": {"source_column_id": "60712000000123456", "relation_column_id": "60712000000123456"}, "unique": true, "name": "Sample name", "options": {{"color": {"hsb": {"saturation": 1.5, "brightness": 1.5, "hue": 1.5}}, "id": "60712000000123456", "value": "string"}, {"color": {"hsb": {"saturation": 1.5, "brightness": 1.5, "hue": 1.5}}, "id": "60712000000123456", "value": "string"}}, "default_value": {"value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}, "type": "TEXT", "required": true, "relation": {"reciprocal_column_id": "60712000000123456", "allow_multiple": true, "related_table_id": "60712000000123456"}}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "column": {
    "lookup": {
      "source_column_id": "60712000000123456",
      "relation_column_id": "60712000000123456"
    },
    "unique": true,
    "name": "Sample name",
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ],
    "default_value": {
      "value": {
        "date": "string",
        "select": "string",
        "rating": 1,
        "toggle": true,
        "url": "string",
        "relation": {
          "row_ids": [
            "string",
            "string"
          ]
        },
        "number": 1.5,
        "multi_select": {
          "option_ids": [
            "string",
            "string"
          ]
        }
      }
    },
    "type": "TEXT",
    "required": true,
    "relation": {
      "reciprocal_column_id": "60712000000123456",
      "allow_multiple": true,
      "related_table_id": "60712000000123456"
    }
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Delete all records matching the (non-empty) filters
OperationDELETE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
filter REQUIRED object Non-empty filter selecting rows to delete
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "filter": {
    "mode": "AND",
    "conditions": [
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      },
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      }
    ]
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "filter": {
    "mode": "AND",
    "conditions": [
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      },
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      }
    ]
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "filter": {
    "mode": "AND",
    "conditions": [
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      },
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      }
    ]
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"filter\":{\"mode\":\"AND\",\"conditions\":[{\"column\":{\"column_id\":\"60712000000123456\"},\"text_match\":{\"op\":\"CONTAINS\",\"case_sensitive\":true,\"text\":\"Hello Vani\"},\"comparison\":{\"op\":\"EQ\",\"operand\":{\"column\":{\"column_id\":\"60712000000123456\"},\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}}}},\"emptiness\":{\"op\":\"IS_EMPTY\"},\"membership\":{\"mode\":\"HAS_ANY\",\"values\":[{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}},{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}}]},\"between\":{\"high\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}},\"low\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}}},{\"column\":{\"column_id\":\"60712000000123456\"},\"text_match\":{\"op\":\"CONTAINS\",\"case_sensitive\":true,\"text\":\"Hello Vani\"},\"comparison\":{\"op\":\"EQ\",\"operand\":{\"column\":{\"column_id\":\"60712000000123456\"},\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}}}},\"emptiness\":{\"op\":\"IS_EMPTY\"},\"membership\":{\"mode\":\"HAS_ANY\",\"values\":[{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}},{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}}]},\"between\":{\"high\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}},\"low\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}}}]},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"filter": {"mode": "AND", "conditions": {{"column": {"column_id": "60712000000123456"}, "text_match": {"op": "CONTAINS", "case_sensitive": true, "text": "Hello Vani"}, "comparison": {"op": "EQ", "operand": {"column": {"column_id": "60712000000123456"}, "value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}}}, "emptiness": {"op": "IS_EMPTY"}, "membership": {"mode": "HAS_ANY", "values": {{"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}, {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}}}, "between": {"high": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}, "low": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}}, {"column": {"column_id": "60712000000123456"}, "text_match": {"op": "CONTAINS", "case_sensitive": true, "text": "Hello Vani"}, "comparison": {"op": "EQ", "operand": {"column": {"column_id": "60712000000123456"}, "value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}}}, "emptiness": {"op": "IS_EMPTY"}, "membership": {"mode": "HAS_ANY", "values": {{"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}, {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}}}, "between": {"high": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}, "low": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}}}}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "filter": {
    "mode": "AND",
    "conditions": [
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      },
      {
        "column": {
          "column_id": "60712000000123456"
        },
        "text_match": {
          "op": "CONTAINS",
          "case_sensitive": true,
          "text": "Hello Vani"
        },
        "comparison": {
          "op": "EQ",
          "operand": {
            "column": {
              "column_id": "60712000000123456"
            },
            "value": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        "emptiness": {
          "op": "IS_EMPTY"
        },
        "membership": {
          "mode": "HAS_ANY",
          "values": [
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          ]
        },
        "between": {
          "high": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          },
          "low": {
            "date": "string",
            "select": "string",
            "rating": 1,
            "toggle": true,
            "url": "string",
            "relation": {
              "row_ids": [
                "string",
                "string"
              ]
            },
            "number": 1.5,
            "multi_select": {
              "option_ids": [
                "string",
                "string"
              ]
            }
          }
        }
      }
    ]
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/delete",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Sparse update of an existing record's cells (set or clear)
OperationUPDATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
cells REQUIRED array of object Cell assignments to set or clear (min 1, max 1)
record REQUIRED object Record ref (row id)
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ],
  "record": {
    "row_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ],
  "record": {
    "row_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ],
  "record": {
    "row_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"cells\":[{\"column_id\":\"60712000000123456\",\"column\":{\"column_id\":\"60712000000123456\"},\"clear\":{},\"value\":{\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}}}],\"record\":{\"row_id\":\"60712000000123456\"},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"cells": {{"column_id": "60712000000123456", "column": {"column_id": "60712000000123456"}, "clear": {}, "value": {"value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}}}, "record": {"row_id": "60712000000123456"}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ],
  "record": {
    "row_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records/update",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Apply one change to a column: rename, retype, set options, default, or constraints
OperationUPDATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
set_constraints object Set-constraints change (required/unique)
retype object Retype change (target type)
rename string New column name (rename change) (max length 2000)
column REQUIRED object Column ref (column id)
table REQUIRED object Table object reference
set_options object Set-options change (full option list)
set_default object Set-default change: the default cell value itself
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "set_constraints": {
    "unique": true,
    "required": true
  },
  "retype": {
    "new_type": "TEXT"
  },
  "rename": "Sample name",
  "set_options": {
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ]
  },
  "set_default": {
    "value": {
      "date": "string",
      "select": "string",
      "rating": 1,
      "toggle": true,
      "url": "string",
      "relation": {
        "row_ids": [
          "string",
          "string"
        ]
      },
      "number": 1.5,
      "multi_select": {
        "option_ids": [
          "string",
          "string"
        ]
      }
    }
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "set_constraints": {
    "unique": true,
    "required": true
  },
  "retype": {
    "new_type": "TEXT"
  },
  "rename": "Sample name",
  "set_options": {
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ]
  },
  "set_default": {
    "value": {
      "date": "string",
      "select": "string",
      "rating": 1,
      "toggle": true,
      "url": "string",
      "relation": {
        "row_ids": [
          "string",
          "string"
        ]
      },
      "number": 1.5,
      "multi_select": {
        "option_ids": [
          "string",
          "string"
        ]
      }
    }
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "set_constraints": {
    "unique": true,
    "required": true
  },
  "retype": {
    "new_type": "TEXT"
  },
  "rename": "Sample name",
  "set_options": {
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ]
  },
  "set_default": {
    "value": {
      "date": "string",
      "select": "string",
      "rating": 1,
      "toggle": true,
      "url": "string",
      "relation": {
        "row_ids": [
          "string",
          "string"
        ]
      },
      "number": 1.5,
      "multi_select": {
        "option_ids": [
          "string",
          "string"
        ]
      }
    }
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"column\":{\"column_id\":\"60712000000123456\"},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\"set_constraints\":{\"unique\":true,\"required\":true},\"retype\":{\"new_type\":\"TEXT\"},\"rename\":\"Sample name\",\"set_options\":{\"options\":[{\"color\":{\"hsb\":{\"saturation\":1.5,\"brightness\":1.5,\"hue\":1.5}},\"id\":\"60712000000123456\",\"value\":\"string\"},{\"color\":{\"hsb\":{\"saturation\":1.5,\"brightness\":1.5,\"hue\":1.5}},\"id\":\"60712000000123456\",\"value\":\"string\"}]},\"set_default\":{\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"column": {"column_id": "60712000000123456"}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}, "set_constraints": {"unique": true, "required": true}, "retype": {"new_type": "TEXT"}, "rename": "Sample name", "set_options": {"options": {{"color": {"hsb": {"saturation": 1.5, "brightness": 1.5, "hue": 1.5}}, "id": "60712000000123456", "value": "string"}, {"color": {"hsb": {"saturation": 1.5, "brightness": 1.5, "hue": 1.5}}, "id": "60712000000123456", "value": "string"}}}, "set_default": {"value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "set_constraints": {
    "unique": true,
    "required": true
  },
  "retype": {
    "new_type": "TEXT"
  },
  "rename": "Sample name",
  "set_options": {
    "options": [
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      },
      {
        "color": {
          "hsb": {
            "saturation": 1.5,
            "brightness": 1.5,
            "hue": 1.5
          }
        },
        "id": "60712000000123456",
        "value": "string"
      }
    ]
  },
  "set_default": {
    "value": {
      "date": "string",
      "select": "string",
      "rating": 1,
      "toggle": true,
      "url": "string",
      "relation": {
        "row_ids": [
          "string",
          "string"
        ]
      },
      "number": 1.5,
      "multi_select": {
        "option_ids": [
          "string",
          "string"
        ]
      }
    }
  }
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/update",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Query database_table rows, or group and aggregate, in one call
OperationREAD
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
query object Query spec (filter / selection / page)
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "query": {
    "filter": {
      "mode": "AND",
      "conditions": [
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        }
      ]
    }
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "query": {
    "filter": {
      "mode": "AND",
      "conditions": [
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        }
      ]
    }
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "query": {
    "filter": {
      "mode": "AND",
      "conditions": [
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        }
      ]
    }
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\"query\":{\"filter\":{\"mode\":\"AND\",\"conditions\":[{\"column\":{\"column_id\":\"60712000000123456\"},\"text_match\":{\"op\":\"CONTAINS\",\"case_sensitive\":true,\"text\":\"Hello Vani\"},\"comparison\":{\"op\":\"EQ\",\"operand\":{\"column\":{\"column_id\":\"string\"},\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{},\"number\":1,\"multi_select\":{}}}},\"emptiness\":{\"op\":\"IS_EMPTY\"},\"membership\":{\"mode\":\"HAS_ANY\",\"values\":[{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{},\"number\":1,\"multi_select\":{}},{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{},\"number\":1,\"multi_select\":{}}]},\"between\":{\"high\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}},\"low\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}}}},{\"column\":{\"column_id\":\"60712000000123456\"},\"text_match\":{\"op\":\"CONTAINS\",\"case_sensitive\":true,\"text\":\"Hello Vani\"},\"comparison\":{\"op\":\"EQ\",\"operand\":{\"column\":{\"column_id\":\"string\"},\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{},\"number\":1,\"multi_select\":{}}}},\"emptiness\":{\"op\":\"IS_EMPTY\"},\"membership\":{\"mode\":\"HAS_ANY\",\"values\":[{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{},\"number\":1,\"multi_select\":{}},{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{},\"number\":1,\"multi_select\":{}}]},\"between\":{\"high\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}},\"low\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[]},\"number\":1.5,\"multi_select\":{\"option_ids\":[]}}}}]}}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}, "query": {"filter": {"mode": "AND", "conditions": {{"column": {"column_id": "60712000000123456"}, "text_match": {"op": "CONTAINS", "case_sensitive": true, "text": "Hello Vani"}, "comparison": {"op": "EQ", "operand": {"column": {"column_id": "string"}, "value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {}, "number": 1, "multi_select": {}}}}, "emptiness": {"op": "IS_EMPTY"}, "membership": {"mode": "HAS_ANY", "values": {{"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {}, "number": 1, "multi_select": {}}, {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {}, "number": 1, "multi_select": {}}}}, "between": {"high": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}, "low": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}}}, {"column": {"column_id": "60712000000123456"}, "text_match": {"op": "CONTAINS", "case_sensitive": true, "text": "Hello Vani"}, "comparison": {"op": "EQ", "operand": {"column": {"column_id": "string"}, "value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {}, "number": 1, "multi_select": {}}}}, "emptiness": {"op": "IS_EMPTY"}, "membership": {"mode": "HAS_ANY", "values": {{"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {}, "number": 1, "multi_select": {}}, {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {}, "number": 1, "multi_select": {}}}}, "between": {"high": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}, "low": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {}}, "number": 1.5, "multi_select": {"option_ids": {}}}}}}}}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "query": {
    "filter": {
      "mode": "AND",
      "conditions": [
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        },
        {
          "column": {
            "column_id": "60712000000123456"
          },
          "text_match": {
            "op": "CONTAINS",
            "case_sensitive": true,
            "text": "Hello Vani"
          },
          "comparison": {
            "op": "EQ",
            "operand": {
              "column": {
                "column_id": "string"
              },
              "value": {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            }
          },
          "emptiness": {
            "op": "IS_EMPTY"
          },
          "membership": {
            "mode": "HAS_ANY",
            "values": [
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              },
              {
                "date": "string",
                "select": "string",
                "rating": 1,
                "toggle": true,
                "url": "string",
                "relation": {},
                "number": 1,
                "multi_select": {}
              }
            ]
          },
          "between": {
            "high": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            },
            "low": {
              "date": "string",
              "select": "string",
              "rating": 1,
              "toggle": true,
              "url": "string",
              "relation": {
                "row_ids": []
              },
              "number": 1.5,
              "multi_select": {
                "option_ids": []
              }
            }
          }
        }
      ]
    }
  }
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/query",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Append a record from keyed cell assignments (partial allowed)
OperationCREATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
cells array of object Keyed cell assignments (partial allowed) (min 2, max 2)
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    },
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ]
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    },
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ]
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    },
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ]
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\"cells\":[{\"column_id\":\"60712000000123456\",\"column\":{\"column_id\":\"60712000000123456\"},\"clear\":{},\"value\":{\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}}},{\"column_id\":\"60712000000123456\",\"column\":{\"column_id\":\"60712000000123456\"},\"clear\":{},\"value\":{\"value\":{\"date\":\"string\",\"select\":\"string\",\"rating\":1,\"toggle\":true,\"url\":\"string\",\"relation\":{\"row_ids\":[\"string\",\"string\"]},\"number\":1.5,\"multi_select\":{\"option_ids\":[\"string\",\"string\"]}}}}]}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}, "cells": {{"column_id": "60712000000123456", "column": {"column_id": "60712000000123456"}, "clear": {}, "value": {"value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}}, {"column_id": "60712000000123456", "column": {"column_id": "60712000000123456"}, "clear": {}, "value": {"value": {"date": "string", "select": "string", "rating": 1, "toggle": true, "url": "string", "relation": {"row_ids": {"string", "string"}}, "number": 1.5, "multi_select": {"option_ids": {"string", "string"}}}}}}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "cells": [
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    },
    {
      "column_id": "60712000000123456",
      "column": {
        "column_id": "60712000000123456"
      },
      "clear": {},
      "value": {
        "value": {
          "date": "string",
          "select": "string",
          "rating": 1,
          "toggle": true,
          "url": "string",
          "relation": {
            "row_ids": [
              "string",
              "string"
            ]
          },
          "number": 1.5,
          "multi_select": {
            "option_ids": [
              "string",
              "string"
            ]
          }
        }
      }
    }
  ]
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/records",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Delete a column (and its cells across all rows)
OperationDELETE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.CREATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
column REQUIRED object Column ref (column id)
table REQUIRED object Table object reference
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}

response = requests.post(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete'),
  method: 'POST',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"column\":{\"column_id\":\"60712000000123456\"},\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"}}";
        HttpRequest request = requestBuilder
            .POST(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"column": {"column_id": "60712000000123456"}, "table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete"
    type: POST
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "column": {
    "column_id": "60712000000123456"
  },
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/delete",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Reorder the table's columns to the given full order
OperationUPDATE
Rate limit60 requests / minute · per user
OAuth scopesVani.spaces.UPDATE
Path parameters edition_id · space_id · zone_id
NameTypeDescription
edition_idREQUIRED string The unique identifier of the edition
space_idREQUIRED string The unique identifier of the space
zone_idREQUIRED string The unique identifier of the zone
Request body application/json
Tick a field to put it in the sample payload, and set what it carries in the Value column. Every field is optional unless it is marked REQUIRED, and those are always sent.
FieldTypeDescriptionValue
table REQUIRED object Table object reference
order REQUIRED array of object Full desired column order (column refs) (min 1, max 1)
curl -X PUT "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "order": [
    {
      "column_id": "60712000000123456"
    }
  ]
}'
import requests

url = "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "order": [
    {
      "column_id": "60712000000123456"
    }
  ]
}

response = requests.put(url, headers=headers, json=data)
data = response.json()
print(data)
const https = require('https');
const url = require('url');

const options = {
  ...url.parse('https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder'),
  method: 'PUT',
  headers: {
    'Authorization': 'Zoho-oauthtoken YOUR_ACCESS_TOKEN',
    'Content-Type': 'application/json'
  }
};

const req = https.request(options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => {
    const result = JSON.parse(data);
    // Process the response data
  });
});

req.write(JSON.stringify({
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "order": [
    {
      "column_id": "60712000000123456"
    }
  ]
}));
req.end();
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.URI;
import java.time.Duration;

public class ApiClient {
    public static void main(String[] args) throws Exception {
        HttpClient client = HttpClient.newBuilder()
            .connectTimeout(Duration.ofSeconds(10))
            .build();

        HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
            .uri(URI.create("https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"table\":{\"object_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"zone_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\",\"frame_id\":\"f47ac10b-58cc-4372-a567-0e02b2c3d479\"},\"order\":[{\"column_id\":\"60712000000123456\"}]}";
        HttpRequest request = requestBuilder
            .PUT(HttpRequest.BodyPublishers.ofString(requestBody))
            .build();

        HttpResponse<String> response = client.send(request,
            HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
info "Making API request to: https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder";

headers = Map();
headers.put("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN");
headers.put("Content-Type", "application/json");

requestData = {"table": {"object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479", "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"}, "order": {{"column_id": "60712000000123456"}}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder"
    type: PUT
    headers: headers
    parameters: requestData
];

if (response.get("status_code") == 200) {
    info "Request successful";
    responseData = response.get("response");
    info responseData;
} else {
    info "Request failed with status: " + response.get("status_code");
    info response.get("response");
}
{
  "table": {
    "object_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "zone_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
    "frame_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479"
  },
  "order": [
    {
      "column_id": "60712000000123456"
    }
  ]
}
Successful response
{
  "status": "string",
  "data": {},
  "message": "string",
  "request_uri": "string"
}
Invalid request - validation failed
{
  "error": {
    "details": {
      "error_code": "IAM1031",
      "message": "Invalid request - validation failed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder",
  "status": "error"
}
Unauthorized - missing or invalid access token
{
  "error": {
    "details": {
      "error_code": "IAM1100",
      "message": "Unauthorized - missing or invalid access token"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder",
  "status": "error"
}
Not found - a resource named in the path does not exist, or is not visible to the caller
{
  "error": {
    "details": {
      "error_code": "IAM1001",
      "message": "Not found - a resource named in the path does not exist, or is not visible to the caller"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder",
  "status": "error"
}
Rate limit exceeded - this operation allows 60 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 60 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder",
  "status": "error"
}
Internal server error - the request was well-formed but could not be completed
{
  "error": {
    "details": {
      "error_code": "U1001",
      "message": "Internal server error - the request was well-formed but could not be completed"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/database-table/columns/reorder",
  "status": "error"
}
400  Invalid request - validation failed
401  Unauthorized - missing or invalid access token
404  Not found - a resource named in the path does not exist, or is not visible to the caller
429  Rate limit exceeded - this operation allows 60 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
© 2026 Zoho Corporation Pvt. Ltd. Help