# Data tables
Use the endpoints below to manage data tables programmatically.
# Quick reference
Type | Resource | Description |
---|---|---|
GET | /api/data_tables | List all data tables. |
GET | /api/data_tables | Get data table by ID. |
POST | /api/data_tables | Creates a data table. |
PUT | /api/data_tables | Updates a data table. |
DELETE | /api/data_tables | Deletes a data table. |
POST | /api/data_tables | Truncates a data table. |
# List data tables
Returns a list of all data tables in your workspace.
GET /api/data_tables/
# URL parameters
Name | Type | Description |
---|---|---|
page | integer optional | Page number of the data tables to fetch. Defaults to 1. |
per page | integer optional | Page size. Defaults to 100. Maximum is 100. |
# Sample request
curl -X GET 'https://www.workato.com/api/data_tables'
-H 'Authorization: Bearer <api_token>'
# Response
{
"data": [
{
"id": "f4d2e85d-c7f4-4877-8f16-6643a4b3fb23",
"name": "Resume screening",
"schema": [
{
"type": "string",
"name": "application_id",
"optional": true,
"field_id": "8f4a57d6-f524-47f2-ae59-be1a80dc2dd5",
"hint": "Greenhouse application ID",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "candidate_id",
"optional": true,
"field_id": "b3f6f50a-6431-4cd4-af2c-f88a7b291bce",
"hint": "Greenhouse candidate ID",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "job_id",
"optional": true,
"field_id": "cdf319f0-2bde-4048-bde6-4c862e7737bd",
"hint": "Greenhouse job ID",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "department",
"optional": true,
"field_id": "25256ad2-5297-46e3-960b-f340af9d292f",
"hint": "Hiring department",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "recruiter",
"optional": true,
"field_id": "38a85051-a12c-4f0b-a308-7e8cd5c68e78",
"hint": "Recruiter name",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "task_name",
"optional": true,
"field_id": "a305f5b1-df86-4f3f-a434-db142c9f5b95",
"hint": "Workflow stage",
"metadata": {},
"multivalue": false
}
],
"folder_id": 24468824,
"created_at": "2025-04-04T11:35:04.544-07:00",
"updated_at": "2025-04-04T11:55:50.473-07:00"
},
{
"id": "fb0b03f3-2e5a-4a05-a483-4ee3092805c5",
"name": "Intake form",
"schema": [
{
"type": "string",
"name": "Description",
"optional": true,
"field_id": "b3545fa7-600c-4ed0-ab04-6e4a866db158",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "Review comments",
"optional": true,
"field_id": "9db1ae98-01f2-4da5-9003-058d8ce80475",
"metadata": {},
"multivalue": false
},
{
"type": "number",
"name": "Rate",
"optional": true,
"field_id": "7b98b819-f8bc-4376-9eb1-ef18c5ca9ae1",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "Notes",
"optional": true,
"field_id": "35885b91-ee7e-453e-a4f9-d41c88e74521",
"metadata": {},
"multivalue": false
},
{
"type": "boolean",
"name": "pass",
"optional": true,
"field_id": "4b0f3ac7-0dad-4628-85a8-85583c9a09d9",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "Reviewer",
"optional": true,
"field_id": "a1913ee5-6342-4176-8e25-8c4787286fee",
"metadata": {},
"multivalue": false
},
{
"type": "file",
"name": "Resume",
"optional": true,
"field_id": "8853cfa6-9e69-4b57-98cb-5264497b1dac",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "Email",
"optional": true,
"field_id": "fea109b6-95c2-41a9-9075-000aa4e54b6a",
"metadata": {},
"multivalue": false
}
],
"folder_id": 21138015,
"created_at": "2024-10-04T08:40:24.349-07:00",
"updated_at": "2025-04-03T10:02:37.905-07:00"
},
{
"id": "d263710a-e7cc-418f-bbc5-aacf76667418",
"name": "PTO requests",
"schema": [
{
"type": "string",
"name": "Name",
"optional": false,
"field_id": "4cd59a12-ae0c-40fa-8896-fd259b271fd9",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "Description",
"optional": true,
"field_id": "06e65f37-81eb-4093-8219-f8b14b2b23e8",
"metadata": {},
"multivalue": false
},
{
"type": "string",
"name": "Review comments",
"optional": true,
"field_id": "cb1589c6-2537-43f8-bd5d-6776b310d080",
"metadata": {},
"multivalue": false
}
],
"folder_id": 17415752,
"created_at": "2024-09-26T20:49:04.147-07:00",
"updated_at": "2024-09-26T20:49:04.222-07:00"
}
]
}
# Get data table by ID
Returns the data table associated with the ID you specify.
GET /api/data_tables/:data_table_id
# URL parameters
Name | Type | Description |
---|---|---|
data_table_id | integer required | Provide the ID of a specific data table. |
# Sample request
curl -X GET 'https://www.workato.com/api/data_tables/db4b8544-8de8-4c6d-83bd-e487f6616ccc'
-H 'Authorization: Bearer <api_token>'
# Response
{
"data": {
"id": "db4b8544-8de8-4c6d-83bd-e487f6616ccc",
"name": "Expense reports",
"schema": [
{
"type": "string",
"name": "Expense type",
"optional": false,
"field_id": "1ec0c3c7-abcd-4bca-bab5-efa51da56635",
"metadata": {},
"multivalue": false
},
{
"type": "number",
"name": "Cost",
"optional": true,
"field_id": "b3545fa7-600c-4ed0-ab04-6e4a866db158",
"metadata": {},
"multivalue": false
},
{
"type": "date",
"name": "Date of purchase",
"optional": true,
"field_id": "9db1ae98-01f2-4da5-9003-058d8ce80475",
"metadata": {},
"multivalue": false
},
{
"type": "integer",
"name": "Priority",
"optional": true,
"field_id": "7b98b819-f8bc-4376-9eb1-ef18c5ca9ae1",
"metadata": {},
"multivalue": false
},
],
"folder_id": 1124996,
"created_at": "2025-05-16T13:30:09.835+08:00",
"updated_at": "2025-05-16T13:30:09.835+08:00"
}
}
# Create data table
Creates a data table in a folder you specify.
POST /api/data_tables
# Payload
Name | Type | Description |
---|---|---|
name | string required | The name of the data table to create. |
folder_id | integer required | Provide the ID of the folder where you plan to create the data table. |
schema | array required | Supply an array of nested elements to define your table structure. You must supply the column name, data type, and whether the column is required. |
schema[type] | boolean, date, date_time, integer, number, string, file, relation required | The data type of the column you plan to create. |
schema[name] | string required | The name of the column you plan to create. |
schema[optional] | integer, boolean required | Indicates if the column is required or optional. Must be either true , false , 1 , or 0 . |
schema[field_id] | Must match regular expression: /\h{8}-\h{4}-\h{4}-\h{4}-\h{12}/ optional | Unique Universal Identifier (UUID) of the column. Must follow this format: f47ac10b-58cc-4372-a567-0e02b2c3d479 . |
schema[hint] | string optional | Provide a hint to help your end users populate entries in a data column. The hint displays as a tooltip when you hover over the column in the user interface. |
schema[default_value] | variable optional | The default value of the column. Must match the data type of the column specified in the request. |
schema[metadata] | hash optional | Data table metadata. |
schema[relation] | hash optional | Indicates that this table links to another data table. |
schema[relation][table_id] | string optional | The ID of the data table linked to this table. |
schema[relation][field_id] | string required | The column ID of a linked data table. |
schema[multivalue] | boolean optional | Indicates whether the column accepts multi-value input. |
# Sample request
curl -X POST 'https://www.workato.com/api/data_tables' \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"name": "Expense reports 4",
"folder_id": 75509,
"schema": [
{
"type": "string",
"name": "Expense type",
"optional": false,
"multivalue": true
},
{
"type": "date",
"name": "Date",
"optional": true
},
{
"type": "boolean",
"name": "Status",
"optional": true
},
{
"type": "date_time",
"name": "Check-in",
"optional": true
},
{
"type": "file",
"name": "Reciept",
"optional": true
},
{
"type": "integer",
"name": "Days at hotel",
"optional": true
},
{
"type": "number",
"name": "Cost",
"optional": true
},
{
"type": "relation",
"name": "Budget",
"optional": true,
"relation": {
"table_id": "2507a39a-6847-4857-88ed-c3b9c8302e02",
"field_id": "900454f4-5b3d-4670-bc3c-d640915156f2"
}
}
]
}
# Response
{
"data": {
"id": "52d97443-1dbd-4ae0-9cd9-99ac2d020977",
"name": "Expense reports 4",
"schema": [
{
"type": "string",
"name": "Expense type",
"optional": false,
"field_id": "76ddbd6f-35ea-4884-bb97-cecac5d4abc7",
"default_value": [],
"metadata": {},
"multivalue": true
},
{
"type": "date",
"name": "Date",
"optional": true,
"field_id": "c6e0ee37-827c-4d41-9e1a-7cac79e07678",
"metadata": {},
"multivalue": false
},
{
"type": "boolean",
"name": "Status",
"optional": true,
"field_id": "e170b117-d744-44ba-9f65-0a616646056a",
"metadata": {},
"multivalue": false
},
{
"type": "date_time",
"name": "Check-in",
"optional": true,
"field_id": "f289a693-a97f-41bb-b0e0-96dc532ccd0c",
"metadata": {},
"multivalue": false
},
{
"type": "file",
"name": "Reciept",
"optional": true,
"field_id": "b92fa6c1-f6ed-4ff2-98dd-a774cf560ec0",
"metadata": {},
"multivalue": false
},
{
"type": "integer",
"name": "Days at hotel",
"optional": true,
"field_id": "bf3ec7b5-0b41-453f-810a-5d53b1582b65",
"metadata": {},
"multivalue": false
},
{
"type": "number",
"name": "Cost",
"optional": true,
"field_id": "566307b9-bfda-4f77-af55-3c258359f656",
"metadata": {},
"multivalue": false
},
{
"type": "relation",
"name": "Budget",
"optional": true,
"field_id": "d7f4d5dd-2cb6-45d5-95c1-8d14339a50ba",
"metadata": {},
"relation": {
"table_id": "2507a39a-6847-4857-88ed-c3b9c8302e02",
"field_id": "900454f4-5b3d-4670-bc3c-d640915156f2"
},
"multivalue": false
}
],
"folder_id": 75509,
"created_at": "2025-05-21T14:56:49.173-07:00",
"updated_at": "2025-05-21T14:56:49.173-07:00"
}
}
# Update data table
Updates a data table you specify.
PUT /api/data_tables/:data_table_id
# URL parameters
Name | Type | Description |
---|---|---|
data_table_id | string | The ID of the data table you plan to update. You can use the List data tables endpoint to retrieve data table IDs. |
# Payload
Name | Type | Description |
---|---|---|
name | string required | The name of the data table to create. |
folder_id | string optional | Provide the ID of the folder where you plan to create the data table. |
schema | array required | Supply an array of nested elements to define your table structure. You must supply the column name, data type, and whether the column is required. |
schema[type] | boolean, date, date_time, integer, number, string, file, relation required | The data type of the column you plan to create. |
schema[name] | string required | The name of the column you plan to create. |
schema[optional] | integer, boolean required | Indicates if the column is required or optional. Must be either true , false , 1 , or 0 . |
schema[field_id] | Must match regular expression: /\h{8}-\h{4}-\h{4}-\h{4}-\h{12}/ optional | Unique Universal Identifier (UUID) of the column. Must follow this format: f47ac10b-58cc-4372-a567-0e02b2c3d479 . |
schema[hint] | string optional | Provide a hint to help your end users populate entries in a data column. The hint displays as a tooltip when you hover over the column in the user interface. |
schema[default_value] | variable optional | The default value of the column. Must match the data type of the column specified in the request. |
schema[metadata] | hash optional | Data table metadata. |
schema[relation] | hash optional | Indicates that this table links to another data table. |
schema[relation][table_id] | string optional | The ID of the data table linked to this table. |
schema[relation][field_id] | string required | The column ID of a linked data table. |
schema[multivalue] | boolean optional | Indicates whether the column accepts multi-value input. |
# Sample request
curl -X POST 'https://www.workato.com/api/data_tables' \
-H 'Authorization: Bearer <api_token>' \
-H 'Content-Type: application/json' \
-d '{
"name": "Expense reports updated",
"folder_id": 75509,
"schema": [
{
"type": "string",
"name": "Expense type",
"optional": false,
"multivalue": true
},
{
"type": "date",
"name": "Date",
"optional": true
},
{
"type": "boolean",
"name": "Status",
"optional": true
},
{
"type": "date_time",
"name": "Check-in",
"optional": true
},
{
"type": "file",
"name": "Reciept",
"optional": true
},
{
"type": "integer",
"name": "Length of stay in days",
"optional": true
},
{
"type": "number",
"name": "Cost",
"optional": true
},
{
"type": "relation",
"name": "Budget",
"optional": true,
"relation": {
"table_id": "2507a39a-6847-4857-88ed-c3b9c8302e02",
"field_id": "900454f4-5b3d-4670-bc3c-d640915156f2"
}
}
]
}
# Response
{
"data": {
"id": "52d97443-1dbd-4ae0-9cd9-99ac2d020977",
"name": "Expense reports updated",
"schema": [
{
"type": "string",
"name": "Expense type",
"optional": false,
"field_id": "318b18ca-bb5f-426c-adb1-74eb2fc06641",
"default_value": [],
"metadata": {},
"multivalue": true
},
{
"type": "date",
"name": "Date",
"optional": true,
"field_id": "97a960ee-022b-4a69-bcdb-74bb4c3d524d",
"metadata": {},
"multivalue": false
},
{
"type": "boolean",
"name": "Status",
"optional": true,
"field_id": "66b7f251-b874-4d87-a974-c18260a6a8fb",
"metadata": {},
"multivalue": false
},
{
"type": "date_time",
"name": "Check-in",
"optional": true,
"field_id": "6c119dad-3d08-427d-bac2-27536aedebad",
"metadata": {},
"multivalue": false
},
{
"type": "file",
"name": "Reciept",
"optional": true,
"field_id": "a6e5360f-5b5e-4261-9967-4160bd80e1a0",
"metadata": {},
"multivalue": false
},
{
"type": "integer",
"name": "Length of stay in days",
"optional": true,
"field_id": "bea282f0-fc78-4847-b7c8-a93587835faa",
"metadata": {},
"multivalue": false
},
{
"type": "number",
"name": "Cost",
"optional": true,
"field_id": "7d438888-5e04-4b70-b7b1-e54cdc42e877",
"metadata": {},
"multivalue": false
},
{
"type": "relation",
"name": "Budget",
"optional": true,
"field_id": "ebe23be4-d388-42fd-922b-0fb4e57abc08",
"metadata": {},
"relation": {
"table_id": "2507a39a-6847-4857-88ed-c3b9c8302e02",
"field_id": "900454f4-5b3d-4670-bc3c-d640915156f2"
},
"multivalue": false
}
],
"folder_id": 75509,
"created_at": "2025-05-21T14:56:49.173-07:00",
"updated_at": "2025-05-21T15:36:23.701-07:00"
}
}
# Delete data table
Deletes a data table you specify.
DELETE /api/data_tables/:data_table_id
# URL parameters
Name | Type | Description |
---|---|---|
data_table_id | integer required | Data table ID. |
# Sample request
curl -X DELETE 'https://www.workato.com/api/data_tables/e9498300-1ea3-4bf0-bdea-ffe58c101bcf'
-H 'Authorization: Bearer <api_token>'
# Response
{
"data": {
"status": "success"
}
}
# Truncate data table
Truncates a data table you specify. Truncating a data table deletes all data from a data table, but doesn't effect the table structure.
POST /api/data_tables/:data_table_id/truncate
# URL parameters
Name | Type | Description |
---|---|---|
data_table_id | integer required | Data table ID. |
# Sample request
curl -X POST 'https://www.workato.com/api/data_tables/58408ccc-e209-491b-9873-4549b5fa48df/truncate'
-H 'Authorization: Bearer <api_token>'
# Response
{
"data": {
"status": "success"
}
}
Last updated: 5/23/2025, 7:33:56 AM