Skip to main content
Add these nodes with the pipeline builder: pipeline.add(name="...").<node>(...). Each entry lists the node’s configuration parameters. See the Pipeline reference for add, run, and lifecycle methods.

ai_filter_list

Filter items in a list given a specific AI condition. Example, Filter (Red, White, Boat) by whether it is a color: (Red, White)
pipeline.add(name="node").ai_filter_list(provider="anthropic", ai_condition="...", filter_by=..., list_to_filter=...)
Parameters
filter_mode
str
default:"'single'"
Choose whether to filter a single list or filter by another list One of: another, single
provider
str
required
The model provider
model
str
default:"''"
The specific model for filtering
ai_condition
str
required
Write in natural language the condition to filter each item in the list
filter_by
list[str]
required
The items to filter the list by
list_to_filter
list[str]
required
The list to filter
output_blank_value
bool
default:"False"
If true, output a blank value for values that do not meet the filter condition. If false, nothing will be outputted
sampling
SamplingConfig
max_tokens
Any
temperature
Any
top_p
Any

combine_list

Combine multiple lists into one list. Final list is ordered in the order of the input lists.
pipeline.add(name="node").combine_list(list=...)
Parameters
type
str
default:"'string'"
The type of the list
list
ListType | list[List[Any]] | list[List[List[Any]]]
required
List to be combined

combine_text

Combine text inputs into a singular output.
pipeline.add(name="node").combine_text(text=...)
Parameters
text
list[str]
required

create_list

Create a list from input texts. Final list is ordered in the order of the inputs.
pipeline.add(name="node").create_list(list=...)
Parameters
type
str
default:"'string'"
The type of the list
list
ListType | list[Any] | list[List[Any]]
required
Value to be added to the list

csv_query

Utilizes an LLM agent to query CSV(s). Delimeter for the CSV must be commas.
pipeline.add(name="node").csv_query(query="...", csv=...)
Parameters
query
str
required
csv
AcceptsFile
required
stream
bool
default:"False"

csv_reader

Read the contents from a CSV file and output a list of the data for each column.
pipeline.add(name="node").csv_reader(selected_file=..., sheet="...")
Parameters
file_type
str
default:"'CSV'"
The type of file to read. One of: CSV, EXCEL
is_file_variable
bool
default:"True"
processed_outputs
dict
default:"{}"
selected_file
AcceptsFile
required
The file to read.
sheet
str
required
The Excel sheet to read from.
sheets
list[str]
default:"[]"
manual_columns
ListType | list[ColumnItem] | list[List[Dict[str, Any]]]
default:"[]"
Define the name(s) of the columns that you want to read
columns
ListType | list[ColumnItem]
default:"[]"
Define the name(s) of the columns that you want to read

csv_to_excel

Convert a CSV file into XLSX.
pipeline.add(name="node").csv_to_excel()
Parameters
csv_file
AcceptsFile
horizontal_alignment
str
default:"'left'"
One of: center, centerContinuous, distributed, fill, general, justify, left, right
max_column_width
int
default:"100"
vertical_alignment
str
default:"'top'"
One of: bottom, center, distributed, justify, top
wrap_text
bool
default:"True"

csv_writer

Create a CSV from data.
pipeline.add(name="node").csv_writer()
Parameters
selected_option
str
default:"'new'"
Whether to create a new CSV or update an existing one. One of: new, old
load_option
str
default:"'file'"
Whether to load the CSV from a file or a string. One of: file, text
columns
ListType | list[ListNameTypeValue] | list[List[Dict[str, Any]]]
default:"[]"
The columns to write to the CSV.
selected_file
AcceptsFile
The file to update.
csv_string
str
default:"''"
The CSV string to write.

dataframe_aggregate

Aggregate data from a dataframe.
pipeline.add(name="node").dataframe_aggregate(aggregation_column="...", aggregation_type="AVG", dataframe=..., group_by_columns=...)
Parameters
dataframe_type
str
default:"'table'"
The type of dataframe to be used One of: table
aggregation_column
str
required
Select a numeric column (integer or decimal) to perform aggregation
aggregation_type
str
required
The aggregation to perform One of: AVG, COUNT, MAX, MIN, SUM
dataframe
AcceptsDataframe
required
The dataframe to aggregate
group_by_columns
list[str]
required
The columns to group by

dataframe_get_schema

Get the schema of a dataframe including columns, types, and constraints.
pipeline.add(name="node").dataframe_get_schema(dataframe=...)
Parameters
dataframe_type
str
default:"'table'"
The type of dataframe to be used One of: table
dataframe
AcceptsDataframe
required
The dataframe to get schema from

dataframe_nl_query

Execute natural language queries on dataframes.
pipeline.add(name="node").dataframe_nl_query(dataframe=..., nlquery="...")
Parameters
dataframe_type
str
default:"'table'"
The type of dataframe to be used One of: table
dataframe
AcceptsDataframe
required
The dataframe to query using natural language
nlquery
str
required
Ask a question about your data in natural language. Example: What are the top 10 rows?

dataframe_operations

Dataframe Operations
pipeline.add(name="node").dataframe_operations()
Parameters
sub_type
str
default:"''"

dataframe_raw_query

Execute custom queries on dataframes.
pipeline.add(name="node").dataframe_raw_query(query="...", dataframe=..., preload=True)
Parameters
dataframe_type
str
default:"'table'"
The type of dataframe to be used One of: table
query
str
required
SQL query to execute on the dataframe. Use {df} as the table name placeholder. Example: SELECT * FROM {df} limit 10;
dataframe
AcceptsDataframe
required
The dataframe to query
preload
bool
required
Whether to preload dataframe instead of lazy load

dataframe_read_columns

Read columns from a dataframe.
pipeline.add(name="node").dataframe_read_columns(column_name="...", dataframe=...)
Parameters
column_type
str
default:"'any'"
The expected type of the column values
dataframe_type
str
default:"'table'"
The type of dataframe to be used One of: table
column_name
str
required
The name of the column to read
dataframe
AcceptsDataframe
required

duplicate_list

Create a new list by duplicating a single item with the size of the new list either matching the size of another list, or a specified size.
pipeline.add(name="node").duplicate_list(input_field=..., list_size_to_match=..., list_size=0)
Parameters
specify_list_size
bool
default:"False"
Check this box if you want to manually specify the list size. In this case ‘Match List Size’ will not be used.
type
str
default:"'string'"
The type of the list
input_field
Any | ListType | list[Any]
required
Item to duplicate
list_size_to_match
list[str]
required
The size of the list you want to match
list_size
int
required
The size of the new list

excel_cell_reader

Read data from an Excel cell.
pipeline.add(name="node").excel_cell_reader(cell_index="...", selected_file=..., sheet="...")
Parameters
cell_index
str
required
read_formatting
bool
default:"False"
selected_file
AcceptsFile
required
sheet
str
required

excel_cell_writer

Write data to an Excel cell.
pipeline.add(name="node").excel_cell_writer(cell_index="...", cell_value="...", selected_file=..., sheet="...")
Parameters
set_vertical_alignment
bool
default:"False"
Whether to set the vertical alignment of the cell.
set_horizontal_alignment
bool
default:"False"
Whether to set the horizontal alignment of the cell.
set_fill_color
bool
default:"False"
Whether to set the fill color of the cell.
cell_index
str
required
The cell to read from.
cell_value
str
required
The value to write to the cell.
fill_color
str
default:"'FFFFFF'"
The fill color of the cell.
horizontal_alignment
str
default:"'left'"
The horizontal alignment of the cell. One of: center, centerContinuous, distributed, fill, general, justify, left, right
selected_file
AcceptsFile
required
The file to read from.
sheet
str
required
The sheet to read from.
vertical_alignment
str
default:"'bottom'"
The vertical alignment of the cell. One of: bottom, center, distributed, justify, top

excel_file_reader

Read data from an Excel file.
pipeline.add(name="node").excel_file_reader(selected_file=...)
Parameters
read_single_sheet
bool
default:"True"
Whether to read a single sheet from the Excel file.
read_formatting
bool
default:"False"
Whether to read the formatting of the cell.
read_formula
bool
default:"False"
Whether to read the formula of the cell.
selected_file
AcceptsFile
required
The file to read from.
sheet
str
default:"''"
The sheet to read from.

excel_operations

Process and manipulate Excel files
pipeline.add(name="node").excel_operations()
Parameters
sub_type
str
default:"''"

excel_sheets_reader

Get list of all sheet names from an Excel file.
pipeline.add(name="node").excel_sheets_reader(selected_file=...)
Parameters
selected_file
AcceptsFile
required

excel_writer

Write data to an Excel sheet.
pipeline.add(name="node").excel_writer(cell_start_index="...", cell_values=..., selected_file=..., sheet="...")
Parameters
set_vertical_alignment
bool
default:"False"
Whether to set the vertical alignment of the cells.
set_horizontal_alignment
bool
default:"False"
Whether to set the horizontal alignment of the cells.
set_fill_color
bool
default:"False"
Whether to set the fill color of the cells.
cell_start_index
str
required
The cell to start writing from.
cell_values
list[str]
required
The values to write to the cells.
fill_color
str
default:"'FFFFFF'"
The fill color of the cells.
horizontal_alignment
str
default:"'left'"
The horizontal alignment of the cells. One of: center, centerContinuous, distributed, fill, general, justify, left, right
selected_file
AcceptsFile
required
The file to write to.
sheet
str
required
The sheet to write to.
vertical_alignment
str
default:"'bottom'"
The vertical alignment of the cells. One of: bottom, center, distributed, justify, top

extract_to_table

Extract data to a CSV using AI
pipeline.add(name="node").extract_to_table(file=..., text_for_extraction="...")
Parameters
model
str
default:"'gpt-4o'"
One of: gpt-4o, gpt-4o-2024-08-06, gpt-4o-mini
add_columns_manually
bool
default:"False"
additional_context
str
default:"''"
extract_multiple_rows
bool
default:"True"
file
AcceptsFile
required
manual_columns
ListType | list[ColumnEntry] | list[List[Dict[str, Any]]]
default:"[]"
provider
str
default:"'openai'"
One of: openai
text_for_extraction
str
required

filter_list

Filter items in a list given a specific condition. Example, Filter (Red, White, Blue) by (100, 95, 80)>90 is (Red, White)
pipeline.add(name="node").filter_list(condition_type="Equal", filter_by=..., list_to_filter=..., output_blank_value=True)
Parameters
filter_mode
str
default:"'single'"
Choose whether to filter a single list or filter by another list One of: another, single
type
str
default:"'string'"
The type of the list
condition_type
str
required
The type of condition to apply
condition_value
str
default:"''"
The value to compare the list items against
filter_by
ListType | list[Any] | list[List[Any]]
required
The items to filter the list by
list_to_filter
ListType | list[Any] | list[List[Any]]
required
The list to filter
output_blank_value
bool
required
If true, output a blank value for values that do not meet the filter condition. If false, nothing will be outputted

find_and_replace

Find and replace words in a given text
pipeline.add(name="node").find_and_replace(text_to_manipulate="...")
Parameters
replacements
ListType | list[FindReplace] | list[List[Dict[str, Any]]]
default:"[]"
text_to_manipulate
str
required

flatten_list

Flatten list of lists into a single list. For example, [[a, b], [c, d]] becomes [a,b,c,d].
pipeline.add(name="node").flatten_list(list_of_lists=...)
Parameters
type
str
default:"'string'"
The type of the list
list_of_lists
ListType | list[List[Any]] | list[List[List[Any]]]
required
List of lists to be flattened

generate_chart

Use this to generate a chart from. Convert a tabular file, dataframe or table to a chart or graph visualization. Supports bar, line, pie, scatter, and donut charts/graphs.
pipeline.add(name="node").generate_chart(dataframe=..., dataframe_column_names="...", dataframe_type="csv", title="...")
Parameters
chart_type
str
default:"'bar'"
The type of chart to generate (bar, line, pie, scatter, donut) One of: bar, donut, line, pie, scatter, time_series
aggregation
str
default:"'sum'"
How to aggregate values when there are multiple data points per category One of: average, count, max, min, sum
chart_description
str
default:"''"
A brief description or subtitle explaining what the chart shows
dataframe
AcceptsDataframe
required
The dataframe to visualize as a chart. In case of csv, the input should be a properly formatted valid csv string with appropriate headers. When chaining from a tool that returned a CSV file (e.g. fetch_ratios.table), set dataframe_type=“file” and pass $action.<id>.table — never paste the upstream formatted_text/XML here.
dataframe_column_names
str
required
Actual column names from the dataframe. It should be a string representing the comma separated list of column names.
dataframe_type
str
required
The type of dataframe to be used. Only available options are table, csv, md, json, file. One of: csv, file, json, md, table
legend_orientation
str
default:"'right'"
Where to display the chart legend One of: bottom, hidden, left, right, top
sort_order
str
default:"'ascending'"
The order to sort the data One of: ascending, descending
title
str
required
The title to display on the chart
x_axis_field
str
required
The column name to use for the X-axis (categories). Must EXACTLY match (case-sensitive) one of the column names from the CSV header.
x_axis_label
str
default:"''"
The label to display on the X-axis. Defaults to the field name if not provided.
y_axis_fields
str
required
Column name(s) for Y-axis values. Must EXACTLY match (case-sensitive) column name(s) from the CSV header. For multi-series charts (multiple lines/bars), use comma-separated names like ‘revenue,profit,cost’.
y_axis_label
str
default:"''"
The label to display on the Y-axis
currency_symbol
str
default:"''"
Currency symbol (only used with currency format) One of: “, eur, gbp, jpy, usd
default_time_period
str
default:"'max'"
Initial time period tab selection One of: 1m, 1y, 5y, 6m, max, ytd
number_format
str
default:"'number'"
How to format values One of: currency, number, percent, ratio
series_icon_urls
str
default:"''"
Comma-separated icon URLs for each series (company logos, game art, product images, etc.), in same order as y_axis_fields. Leave empty for no icons.
series_labels
str
default:"''"
Comma-separated display names for each Y-axis field, in same order as y_axis_fields (e.g. ‘MSFT,NVDA’ for tickers, ‘Halo,Fortnite’ for games, ‘US,EU,APAC’ for regions).
show_percent_change
str
default:"'false'"
Set to ‘true’ to show Original/% Change toggle
unit_suffix
str
default:"''"
Scale suffix for values One of: “, b, k, m, t

get_list_item

Get a value from a list given an index. The first item in the list is index 0.
pipeline.add(name="node").get_list_item(index=0, list=...)
Parameters
type
str
default:"'string'"
The type of the list
index
int
required
The index of the item to retrieve
list
ListType | list[Any] | list[List[Any]]
required
The list to retrieve the item from

join_list_item

Join a list of items into a single piece of text. For example, with / as the separator, [‘a’, ‘b’, ‘c’] becomes ‘a/b/c’
pipeline.add(name="node").join_list_item(list=...)
Parameters
join_by_newline
bool
default:"False"
Separate each line in the final output with a new line
type
str
default:"'string'"
The type of the list
join_characters
str
default:"''"
Use a specified character to join list items into a single string
list
ListType | list[Any] | list[List[Any]]
required
List of items to be joined

json_operations

Read, create, and update JSON data
pipeline.add(name="node").json_operations()
Parameters
sub_type
str
default:"''"

list_deduplicator

Remove duplicate items from a list. Outputs a list of unique items.
pipeline.add(name="node").list_deduplicator(list=...)
Parameters
type
str
default:"'string'"
The type of the list One of: bool, float, int32, string, timestamp
list
ListType | list[Any] | list[List[Any]]
required
The list to deduplicate

list_operations

Process and manipulate lists
pipeline.add(name="node").list_operations()
Parameters
sub_type
str
default:"''"

list_trimmer

Trim a list to just the sections you want. Enter enter the number of items or specify the section of the list that you want to keep.
pipeline.add(name="node").list_trimmer(end_index=0, list=..., start_index=0, item_to_keep=0)
Parameters
specify_section
bool
default:"False"
Check this to specify a section of the list to keep. Leave unchecked to keep a specified number of items from the start.
type
str
default:"'string'"
The type of the list
end_index
int
required
The ending index of the section to keep (exclusive).
list
ListType | list[Any] | list[List[Any]]
required
The list to trim
start_index
int
required
The starting index of the section to keep (inclusive). The first item of the list is index 0.
item_to_keep
int
required
Check this to specify a section of the list to keep. Leave unchecked to keep a specified number of items.

read_json_values

Read values from a JSON object based on a provided key(s).
pipeline.add(name="node").read_json_values(json_string="...", keys=..., processed_outputs=...)
Parameters
json_string
str
required
keys
ListType | list[KeyItem] | list[List[Dict[str, Any]]]
required
processed_outputs
dict
required

sort_csv

Sort a CSV based on a column
pipeline.add(name="node").sort_csv(file=...)
Parameters
is_file_variable
bool
default:"True"
Whether the file is a variable.
has_headers
bool
default:"True"
Whether the CSV has headers.
column_index
int
default:"0"
The index of the column to sort by.
file
AcceptsFile
required
The CSV file to sort.
reverse_sort
bool
default:"False"
Whether to reverse the sort.
column_to_sort_by
str
default:"''"
The column to sort by.

split_text

Takes input text and separate it into a List of texts based on the delimiter.
pipeline.add(name="node").split_text(text="...", character="...")
Parameters
delimiter
str
default:"'space'"
The delimiter to split the text on One of: character(s), newline, space
text
str
required
The text to split
character
str
required
The character(s) to split the text on

table

Table
pipeline.add(name="node").table()
Parameters
sub_type
str
default:"''"

table_add_columns

Add one or more columns to a table.
pipeline.add(name="node").table_add_columns(table=..., columns=...)
Parameters
table
AcceptsTable
required
columns
dict
required

table_add_row

Add New Row to Table.
pipeline.add(name="node").table_add_row(table=...)
Parameters
table
AcceptsTable
required

table_aggregate

Aggregate data from a table.
pipeline.add(name="node").table_aggregate(aggregation_column="...", aggregation_type="AVG", dataframe=..., group_by_columns=...)
Parameters
aggregation_column
str
required
aggregation_type
str
required
One of: AVG, COUNT, MAX, MIN, SUM
dataframe
AcceptsTable
required
group_by_columns
list[str]
required

table_delete_columns

Delete one or more columns from a table.
pipeline.add(name="node").table_delete_columns(table=..., columns=...)
Parameters
table
AcceptsTable
required
columns
list[str]
required

table_delete_values

Delete rows matching a filter.
pipeline.add(name="node").table_delete_values(table=..., filters="...")
Parameters
table
AcceptsTable
required
filters
str
required

table_read_columns

Select column in table to read as list.
pipeline.add(name="node").table_read_columns(column_name="...", dataframe=...)
Parameters
column_type
str
default:"'any'"
The expected type of the column values
column_name
str
required
The name of the column to read
dataframe
AcceptsTable
required
The table to read from

table_rename_column

Rename a column in a table.
pipeline.add(name="node").table_rename_column(table=..., column="...", new_name="...")
Parameters
table
AcceptsTable
required
column
str
required
new_name
str
required

table_update_values

Update the values in rows matching a filter.
pipeline.add(name="node").table_update_values(table=..., filters="...", values=...)
Parameters
table
AcceptsTable
required
filters
str
required
values
dict
required

text_formatter

Format text based off a specified formatter
pipeline.add(name="node").text_formatter(text="...", max_num_token=0)
Parameters
formatter
str
default:"'To Uppercase'"
The formatter to apply to the text One of: To Lowercase, To Propercase, To Uppercase, Trim Spaces, Truncate
text
str
required
The text to format
max_num_token
int
required
The maximum number of tokens to truncate the text to

text_manipulation

Process and manipulate text
pipeline.add(name="node").text_manipulation()
Parameters
sub_type
str
default:"''"

write_json_value

Update a specific value in a JSON.
pipeline.add(name="node").write_json_value(json_string="...")
Parameters
selected
str
default:"'new'"
Whether to update the JSON value or create a new JSON One of: new, old
fields
ListType | list[KeyValue] | list[List[Dict[str, Any]]]
default:"[]"
json_string
str
required
The JSON to update