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

Structures

Build whole structures in one call — mindmaps, flowcharts, kanban boards, stacks, and tables.

Create a flowchart from node and edge graph specifications
OperationCREATE
Rate limit30 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
percent_bounds object Optional preferred region as zone percentage
payload REQUIRED object Flowchart graph specification (required)
absolute_bounds object Optional preferred region in absolute canvas units
target object Optional insertion target (defaults to ZONE_ROOT)
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/flowchart" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "nodes": [
      {
        "text": "Hello Vani",
        "node_id": "60712000000123456",
        "preferred_shape": "PROCESS"
      }
    ],
    "edges": [
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      },
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      }
    ],
    "layout_direction": "TOP_DOWN",
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/flowchart"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "nodes": [
      {
        "text": "Hello Vani",
        "node_id": "60712000000123456",
        "preferred_shape": "PROCESS"
      }
    ],
    "edges": [
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      },
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      }
    ],
    "layout_direction": "TOP_DOWN",
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/flowchart'),
  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": {
    "nodes": [
      {
        "text": "Hello Vani",
        "node_id": "60712000000123456",
        "preferred_shape": "PROCESS"
      }
    ],
    "edges": [
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      },
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      }
    ],
    "layout_direction": "TOP_DOWN",
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/flowchart"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"nodes\":[{\"text\":\"Hello Vani\",\"node_id\":\"60712000000123456\",\"preferred_shape\":\"PROCESS\"}],\"edges\":[{\"from_node_id\":\"60712000000123456\",\"to_node_id\":\"60712000000123456\",\"start_marker\":\"NONE\",\"connector_type\":\"ELBOW\",\"label\":\"string\",\"end_marker\":\"NONE\"},{\"from_node_id\":\"60712000000123456\",\"to_node_id\":\"60712000000123456\",\"start_marker\":\"NONE\",\"connector_type\":\"ELBOW\",\"label\":\"string\",\"end_marker\":\"NONE\"}],\"layout_direction\":\"TOP_DOWN\",\"title\":\"string\"},\"percent_bounds\":{\"right_pct\":1.5,\"top_pct\":1.5,\"bottom_pct\":1.5,\"left_pct\":1.5},\"absolute_bounds\":{\"x\":1.5,\"width\":1.5,\"y\":1.5,\"height\":1.5},\"target\":{\"insert_index\":1,\"target_type\":\"ZONE_ROOT\",\"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}/create/flowchart";

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

requestData = {"payload": {"nodes": {{"text": "Hello Vani", "node_id": "60712000000123456", "preferred_shape": "PROCESS"}}, "edges": {{"from_node_id": "60712000000123456", "to_node_id": "60712000000123456", "start_marker": "NONE", "connector_type": "ELBOW", "label": "string", "end_marker": "NONE"}, {"from_node_id": "60712000000123456", "to_node_id": "60712000000123456", "start_marker": "NONE", "connector_type": "ELBOW", "label": "string", "end_marker": "NONE"}}, "layout_direction": "TOP_DOWN", "title": "string"}, "percent_bounds": {"right_pct": 1.5, "top_pct": 1.5, "bottom_pct": 1.5, "left_pct": 1.5}, "absolute_bounds": {"x": 1.5, "width": 1.5, "y": 1.5, "height": 1.5}, "target": {"insert_index": 1, "target_type": "ZONE_ROOT", "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}/create/flowchart"
    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": {
    "nodes": [
      {
        "text": "Hello Vani",
        "node_id": "60712000000123456",
        "preferred_shape": "PROCESS"
      }
    ],
    "edges": [
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      },
      {
        "from_node_id": "60712000000123456",
        "to_node_id": "60712000000123456",
        "start_marker": "NONE",
        "connector_type": "ELBOW",
        "label": "string",
        "end_marker": "NONE"
      }
    ],
    "layout_direction": "TOP_DOWN",
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/flowchart"
}
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}/create/flowchart",
  "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}/create/flowchart",
  "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}/create/flowchart",
  "status": "error"
}
Rate limit exceeded - this operation allows 30 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 30 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/flowchart",
  "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}/create/flowchart",
  "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 30 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Create a new table on the board by parsing raw CSV, TSV or pipe-delimited text, with optional header row, whitespace trimming and ragged-row padding. Use for a plain layout table; use createDatabaseTable for a typed, queryable one.
OperationCREATE
Rate limit30 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
percent_bounds object Optional preferred region as zone percentage
payload REQUIRED object Table data specification (required)
absolute_bounds object Optional preferred region in absolute canvas units
target object Optional insertion target (defaults to ZONE_ROOT)
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/table" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/table"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/table'),
  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": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/table"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"input\":{\"raw_text\":\"Hello Vani\",\"pad_missing_cells\":true,\"format_hint\":\"AUTO\",\"first_row_is_header\":true,\"trim_whitespace\":true},\"title\":\"string\"},\"percent_bounds\":{\"right_pct\":1.5,\"top_pct\":1.5,\"bottom_pct\":1.5,\"left_pct\":1.5},\"absolute_bounds\":{\"x\":1.5,\"width\":1.5,\"y\":1.5,\"height\":1.5},\"target\":{\"insert_index\":1,\"target_type\":\"ZONE_ROOT\",\"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}/create/table";

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

requestData = {"payload": {"input": {"raw_text": "Hello Vani", "pad_missing_cells": true, "format_hint": "AUTO", "first_row_is_header": true, "trim_whitespace": true}, "title": "string"}, "percent_bounds": {"right_pct": 1.5, "top_pct": 1.5, "bottom_pct": 1.5, "left_pct": 1.5}, "absolute_bounds": {"x": 1.5, "width": 1.5, "y": 1.5, "height": 1.5}, "target": {"insert_index": 1, "target_type": "ZONE_ROOT", "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}/create/table"
    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": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "title": "string"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/table"
}
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}/create/table",
  "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}/create/table",
  "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}/create/table",
  "status": "error"
}
Rate limit exceeded - this operation allows 30 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 30 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/table",
  "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}/create/table",
  "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 30 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Create a stack structure from an ordered list of item specifications
OperationCREATE
Rate limit30 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
percent_bounds object Optional preferred region as zone percentage
spacing object Optional spacing configuration
title string Optional stack title (max length 1000)
absolute_bounds object Optional preferred region in absolute canvas units
items REQUIRED array of object Ordered item specifications (required, at least 1) (min 1, max 1)
layout_hint string Stack orientation (defaults to STACK_VERTICAL) (max length 30)
STACK_VERTICALSTACK_HORIZONTAL
target object Optional insertion target (defaults to ZONE_ROOT)
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/stack" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "items": [
    {
      "content": {
        "notes": "string",
        "link_url": "string",
        "text": "Hello Vani",
        "tags": [
          "string",
          "string"
        ]
      }
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "STACK_VERTICAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/stack"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "items": [
    {
      "content": {
        "notes": "string",
        "link_url": "string",
        "text": "Hello Vani",
        "tags": [
          "string",
          "string"
        ]
      }
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "STACK_VERTICAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/stack'),
  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({
  "items": [
    {
      "content": {
        "notes": "string",
        "link_url": "string",
        "text": "Hello Vani",
        "tags": [
          "string",
          "string"
        ]
      }
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "STACK_VERTICAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/stack"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"items\":[{\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}}],\"percent_bounds\":{\"right_pct\":1.5,\"top_pct\":1.5,\"bottom_pct\":1.5,\"left_pct\":1.5},\"spacing\":{\"manual_spacing\":1.5,\"auto_spacing\":{}},\"title\":\"string\",\"absolute_bounds\":{\"x\":1.5,\"width\":1.5,\"y\":1.5,\"height\":1.5},\"layout_hint\":\"STACK_VERTICAL\",\"target\":{\"insert_index\":1,\"target_type\":\"ZONE_ROOT\",\"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}/create/stack";

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

requestData = {"items": {{"content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}, "percent_bounds": {"right_pct": 1.5, "top_pct": 1.5, "bottom_pct": 1.5, "left_pct": 1.5}, "spacing": {"manual_spacing": 1.5, "auto_spacing": {}}, "title": "string", "absolute_bounds": {"x": 1.5, "width": 1.5, "y": 1.5, "height": 1.5}, "layout_hint": "STACK_VERTICAL", "target": {"insert_index": 1, "target_type": "ZONE_ROOT", "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}/create/stack"
    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");
}
{
  "items": [
    {
      "content": {
        "notes": "string",
        "link_url": "string",
        "text": "Hello Vani",
        "tags": [
          "string",
          "string"
        ]
      }
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "STACK_VERTICAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/stack"
}
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}/create/stack",
  "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}/create/stack",
  "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}/create/stack",
  "status": "error"
}
Rate limit exceeded - this operation allows 30 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 30 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/stack",
  "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}/create/stack",
  "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 30 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Create a kanban board structure from column and item specifications
OperationCREATE
Rate limit30 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
percent_bounds object Optional preferred region as zone percentage
spacing object Optional spacing configuration
columns REQUIRED array of object Kanban column specifications (required, at least 1) (min 1, max 1)
title string Optional kanban board title (max length 1000)
absolute_bounds object Optional preferred region in absolute canvas units
layout_hint string Board orientation (defaults to HORIZONTAL) (max length 20)
HORIZONTALVERTICAL
target object Optional insertion target (defaults to ZONE_ROOT)
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/kanban" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "columns": [
    {
      "title": "string",
      "items": [
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        },
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        }
      ]
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "HORIZONTAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/kanban"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "columns": [
    {
      "title": "string",
      "items": [
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        },
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        }
      ]
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "HORIZONTAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/kanban'),
  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({
  "columns": [
    {
      "title": "string",
      "items": [
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        },
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        }
      ]
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "HORIZONTAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/kanban"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"columns\":[{\"title\":\"string\",\"items\":[{\"due_date_text\":\"Hello Vani\",\"assignee\":\"string\",\"priority\":\"string\",\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]},\"status\":\"string\"},{\"due_date_text\":\"Hello Vani\",\"assignee\":\"string\",\"priority\":\"string\",\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]},\"status\":\"string\"}]}],\"percent_bounds\":{\"right_pct\":1.5,\"top_pct\":1.5,\"bottom_pct\":1.5,\"left_pct\":1.5},\"spacing\":{\"manual_spacing\":1.5,\"auto_spacing\":{}},\"title\":\"string\",\"absolute_bounds\":{\"x\":1.5,\"width\":1.5,\"y\":1.5,\"height\":1.5},\"layout_hint\":\"HORIZONTAL\",\"target\":{\"insert_index\":1,\"target_type\":\"ZONE_ROOT\",\"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}/create/kanban";

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

requestData = {"columns": {{"title": "string", "items": {{"due_date_text": "Hello Vani", "assignee": "string", "priority": "string", "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}, "status": "string"}, {"due_date_text": "Hello Vani", "assignee": "string", "priority": "string", "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}, "status": "string"}}}}, "percent_bounds": {"right_pct": 1.5, "top_pct": 1.5, "bottom_pct": 1.5, "left_pct": 1.5}, "spacing": {"manual_spacing": 1.5, "auto_spacing": {}}, "title": "string", "absolute_bounds": {"x": 1.5, "width": 1.5, "y": 1.5, "height": 1.5}, "layout_hint": "HORIZONTAL", "target": {"insert_index": 1, "target_type": "ZONE_ROOT", "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}/create/kanban"
    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");
}
{
  "columns": [
    {
      "title": "string",
      "items": [
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        },
        {
          "due_date_text": "Hello Vani",
          "assignee": "string",
          "priority": "string",
          "content": {
            "notes": "string",
            "link_url": "string",
            "text": "Hello Vani",
            "tags": [
              "string",
              "string"
            ]
          },
          "status": "string"
        }
      ]
    }
  ],
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "title": "string",
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "layout_hint": "HORIZONTAL",
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/kanban"
}
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}/create/kanban",
  "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}/create/kanban",
  "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}/create/kanban",
  "status": "error"
}
Rate limit exceeded - this operation allows 30 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 30 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/kanban",
  "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}/create/kanban",
  "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 30 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Create a mindmap structure from a hierarchical outline specification
OperationCREATE
Rate limit30 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
percent_bounds object Optional preferred region as zone percentage
spacing object Optional spacing configuration
top object Top branch (single-direction layout)
left object Left branch (single-direction layout)
bottom object Bottom branch (single-direction layout)
root REQUIRED object Root node content (required)
top_down object Top-down dual-direction layout
right object Right branch (single-direction layout)
title string Optional mindmap title (max length 1000)
absolute_bounds object Optional preferred region in absolute canvas units
left_right object Left-right dual-direction layout
target object Optional insertion target (defaults to ZONE_ROOT)
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/mindmap" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "root": {
    "notes": "string",
    "link_url": "string",
    "text": "Hello Vani",
    "tags": [
      "string",
      "string"
    ]
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "top": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "left": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "bottom": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "top_down": {
    "top": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ],
    "bottom": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "right": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  }
}'
import requests

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

data = {
  "root": {
    "notes": "string",
    "link_url": "string",
    "text": "Hello Vani",
    "tags": [
      "string",
      "string"
    ]
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "top": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "left": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "bottom": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "top_down": {
    "top": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ],
    "bottom": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "right": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "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}/create/mindmap'),
  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({
  "root": {
    "notes": "string",
    "link_url": "string",
    "text": "Hello Vani",
    "tags": [
      "string",
      "string"
    ]
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "top": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "left": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "bottom": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "top_down": {
    "top": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ],
    "bottom": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "right": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "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}/create/mindmap"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"root\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]},\"percent_bounds\":{\"right_pct\":1.5,\"top_pct\":1.5,\"bottom_pct\":1.5,\"left_pct\":1.5},\"spacing\":{\"manual_spacing\":1.5,\"auto_spacing\":{}},\"top\":{\"children\":[{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}}]},\"left\":{\"children\":[{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}}]},\"bottom\":{\"children\":[{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}}]},\"top_down\":{\"top\":[{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}},{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}}],\"bottom\":[{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}},{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"string\",\"string\"]}}]},\"right\":{\"children\":[{\"children\":[{},{}],\"content\":{\"notes\":\"string\",\"link_url\":\"string\",\"text\":\"Hello Vani\",\"tags\":[\"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}/create/mindmap";

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

requestData = {"root": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}, "percent_bounds": {"right_pct": 1.5, "top_pct": 1.5, "bottom_pct": 1.5, "left_pct": 1.5}, "spacing": {"manual_spacing": 1.5, "auto_spacing": {}}, "top": {"children": {{"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}}, "left": {"children": {{"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}}, "bottom": {"children": {{"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}}, "top_down": {"top": {{"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}, {"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}, "bottom": {{"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}, {"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}}, "right": {"children": {{"children": {{}, {}}, "content": {"notes": "string", "link_url": "string", "text": "Hello Vani", "tags": {"string", "string"}}}}}};

response = invokeurl
[
    url: "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/mindmap"
    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");
}
{
  "root": {
    "notes": "string",
    "link_url": "string",
    "text": "Hello Vani",
    "tags": [
      "string",
      "string"
    ]
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "spacing": {
    "manual_spacing": 1.5,
    "auto_spacing": {}
  },
  "top": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "left": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "bottom": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "top_down": {
    "top": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ],
    "bottom": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      },
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  },
  "right": {
    "children": [
      {
        "children": [
          {},
          {}
        ],
        "content": {
          "notes": "string",
          "link_url": "string",
          "text": "Hello Vani",
          "tags": [
            "string",
            "string"
          ]
        }
      }
    ]
  }
}
Successful response
{
  "status": "success",
  "data": {},
  "message": "Request completed successfully",
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/mindmap"
}
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}/create/mindmap",
  "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}/create/mindmap",
  "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}/create/mindmap",
  "status": "error"
}
Rate limit exceeded - this operation allows 30 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 30 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/mindmap",
  "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}/create/mindmap",
  "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 30 requests per minute per user
500  Internal server error - the request was well-formed but could not be completed
Create a typed database_table from raw tabular text data
OperationCREATE
Rate limit30 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
percent_bounds object Optional preferred region as zone percentage
payload REQUIRED object Database-table data specification (required)
absolute_bounds object Optional preferred region in absolute canvas units
target object Optional insertion target (defaults to ZONE_ROOT)
curl -X POST "https://api.app.vanihq.com/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/database-table" \
  -H "Authorization: Zoho-oauthtoken YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "payload": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "name": "Sample name"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/database-table"
headers = {
    "Authorization": "Zoho-oauthtoken YOUR_ACCESS_TOKEN",
    "Content-Type": "application/json"
}

data = {
  "payload": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "name": "Sample name"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/database-table'),
  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": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "name": "Sample name"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/database-table"))
            .header("Authorization", "Zoho-oauthtoken YOUR_ACCESS_TOKEN")
            .timeout(Duration.ofSeconds(30));

            .header("Content-Type", "application/json")
        String requestBody = "{\"payload\":{\"input\":{\"raw_text\":\"Hello Vani\",\"pad_missing_cells\":true,\"format_hint\":\"AUTO\",\"first_row_is_header\":true,\"trim_whitespace\":true},\"name\":\"Sample name\"},\"percent_bounds\":{\"right_pct\":1.5,\"top_pct\":1.5,\"bottom_pct\":1.5,\"left_pct\":1.5},\"absolute_bounds\":{\"x\":1.5,\"width\":1.5,\"y\":1.5,\"height\":1.5},\"target\":{\"insert_index\":1,\"target_type\":\"ZONE_ROOT\",\"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}/create/database-table";

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

requestData = {"payload": {"input": {"raw_text": "Hello Vani", "pad_missing_cells": true, "format_hint": "AUTO", "first_row_is_header": true, "trim_whitespace": true}, "name": "Sample name"}, "percent_bounds": {"right_pct": 1.5, "top_pct": 1.5, "bottom_pct": 1.5, "left_pct": 1.5}, "absolute_bounds": {"x": 1.5, "width": 1.5, "y": 1.5, "height": 1.5}, "target": {"insert_index": 1, "target_type": "ZONE_ROOT", "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}/create/database-table"
    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": {
    "input": {
      "raw_text": "Hello Vani",
      "pad_missing_cells": true,
      "format_hint": "AUTO",
      "first_row_is_header": true,
      "trim_whitespace": true
    },
    "name": "Sample name"
  },
  "percent_bounds": {
    "right_pct": 1.5,
    "top_pct": 1.5,
    "bottom_pct": 1.5,
    "left_pct": 1.5
  },
  "absolute_bounds": {
    "x": 1.5,
    "width": 1.5,
    "y": 1.5,
    "height": 1.5
  },
  "target": {
    "insert_index": 1,
    "target_type": "ZONE_ROOT",
    "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}/create/database-table",
  "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}/create/database-table",
  "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}/create/database-table",
  "status": "error"
}
Rate limit exceeded - this operation allows 30 requests per minute per user
{
  "error": {
    "details": {
      "error_code": "IAM1055",
      "message": "Rate limit exceeded - this operation allows 30 requests per minute per user"
    }
  },
  "request_uri": "/sdk/v1/editions/{edition_id}/spaces/{space_id}/zones/{zone_id}/create/database-table",
  "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}/create/database-table",
  "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 30 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