core.table.*.
Use them when your workflows need durable, queryable records such as asset inventories, user allowlists, enrichment results, or investigation evidence.
Common workflow pattern
- Create the table once with a schema that fits your data and a unique index on the upsert column.
- Insert or upsert rows as new events arrive.
- Look up, search, or export rows later from another workflow step.
Column schema
core.table.create_table takes columns as a JSON array of column objects.
This is the same schema you use for tables that you later link to cases.
name: Required string. Use letters, numbers, and underscores, and start with a letter or underscore.type: Required uppercase string. UseTEXT,INTEGER,NUMERIC,BOOLEAN,DATE,TIMESTAMPTZ,JSONB,SELECT, orMULTI_SELECT.nullable: Optional boolean. Defaults totrue.default: Optional value. It must match the column type.options: Optional array of strings. Required forSELECTandMULTI_SELECT, and invalid for other types.
type values match the custom tables picker, and case custom fields use the same storage types.
The case field picker surfaces raw JSONB through the URL kind and layers Long text on top of TEXT.
Create a table with a SELECT column:
FAQ
How do I insert more than 1000 rows into a table?
How do I insert more than 1000 rows into a table?
Split large imports into batches upstream, then run one
insert_rows action per batch.core.table.create_table
Create a new lookup table with optional columns.
columns takes the column objects described in
Column schema.Inputs
string
required
The name of the table to create.
array[object] | null
List of column definitions. Each item is an object with required
name and uppercase type, plus optional nullable, default, and options fields. Use TEXT, INTEGER, NUMERIC, BOOLEAN, DATE, TIMESTAMPTZ, JSONB, SELECT, or MULTI_SELECT. options is required for SELECT and MULTI_SELECT, and invalid for other types.Default: null.boolean
If true, raise an error if the table already exists.Default:
true.Examples
Create and inspect a tablecore.table.list_tables
Get a list of all available tables in the workspace.
Inputs
This action does not take input fields.Examples
Create and inspect a tablecore.table.get_table_metadata
Get a table’s metadata by name. This includes the columns and whether they are indexed.
Inputs
string
required
The name of the table to get.
Examples
Create and inspect a tablecore.table.update_table
Rename a table by name.
Inputs
string
required
The current name of the table to update.
string
required
The new table name.