API reference

Activity catalogue

All 84 Kiwi Flow activity types by category, with what each does.

Flow Current 10 min read Updated

Kiwi Flow ships 84 activity types. Each is referenced in a workflow by its type string. The tables below list every type, grouped by category. For the inputs, outputs and operations of each one, see the activity reference.

Flow Control (10)#

Type Description
approval (Approval) Pause the run until a person (or a member of a role/group) approves or rejects it
delay (Delay) Pause workflow execution for a fixed or dynamic duration
external_task (External Task) Pause the run until external or manually-completed work reports back, with data
foreach (For Each) Iterate over an array and execute a set of activities for each item sequentially
if_else (If / Else) Evaluate a list of conditions top-to-bottom and route execution to the first matching branch
merge (Merge) Consolidate outputs from multiple upstream activities into a single value using a merge strategy
parallel (Parallel) Execute two or more activity branches concurrently and collect their outputs at the join point
repeat_while (Repeat While) Repeatedly execute a set of activities while a condition holds true
sub_workflow (Sub-Workflow) Execute a reusable child workflow and map its final global state as outputs
switch (Switch) Resolve a variable bag path and route execution to the case whose value matches it

Standard / Integrations (19)#

Type Description
email (Email) Send, read, search, delete, and manage emails. Supports SMTP, IMAP, Microsoft 365 Graph API, SendGrid, Mailgun, and AWS SES.
excel (Excel) Read, write, and append .xlsx workbooks — table data, single cells, and sheet listing.
excel_online (Excel Online) Read, write, append, clear, and manage sheets in an Excel workbook stored in OneDrive/SharePoint via a connected Microsoft account.
google_oauth2 (Google (OAuth2)) Shared Google OAuth2 connection used by Google Drive and other Google activities. Bring your own OAuth Client ID/Secret from a Google Cloud project, then click Connect to sign in with a real Google account.
google_calendar (Google Calendar) List, get, create, update, and delete events in Google Calendar via a connected Google account.
google_drive (Google Drive) Upload, download, list, search, and manage files/folders in Google Drive via a connected Google account.
google_sheets (Google Sheets) Read, write, append, clear, and manage sheets in Google Sheets via a connected Google account.
html_scrape (HTML Scrape) Scrape structured data from plain-text HTML using CSS selectors. Bind the 'html' input to the response body of a preceding http_request activity.
http_request (HTTP Request) Send an HTTP request to a remote endpoint and capture the response body, status code, and headers
jira (Jira) Interact with Jira via the REST API. Supports issues (CRUD, transitions, assignment, search), comments, worklogs, attachments, projects, Agile boards and sprints, fix versions, and metadata.
microsoft_oauth2 (Microsoft (OAuth2)) Shared Microsoft OAuth2 connection used by OneDrive and other Microsoft 365 activities. Bring your own Azure AD app registration's Client ID/Secret, then click Connect to sign in with a real Microsoft account.
ocr_extract (OCR Extract) Extract text and structured fields from images using Tesseract OCR. Bind the 'imageBase64' input to base64-encoded image content from a preceding activity.
onedrive (OneDrive) Upload, download, list, search, and manage files/folders in OneDrive via a connected Microsoft account.
outlook_calendar (Outlook Calendar) List, get, create, update, and delete events in Outlook/Microsoft 365 Calendar via a connected Microsoft account.
pdf (PDF) PDF operations: inspect structure (info), extract embedded text (extract_text), rasterize pages to images (render_page / render_pages), pull AcroForm field values (extract_fields), extract embedded images (extract_images), split into single-page PDFs (split), or combine multiple PDFs (merge). Input pdfBase64 from a preceding file read_base64 activity.
salesforce (Salesforce) Interact with Salesforce via the REST API. Supports full CRUD on any sObject, SOQL/SOSL query, Bulk API v2, file uploads, Apex REST, and org limits.
servicenow (ServiceNow) Interact with ServiceNow via the Table API. Supports full CRUD on any table, ITSM convenience wrappers (Incident, Change, Service Request), CMDB CI lookup, attachments, user lookup, and Scripted REST.
shell_command (Shell Command) Execute a shell command locally on the worker node. Automatically selects cmd/PowerShell on Windows, bash/sh on Linux, zsh/bash on macOS.
string_op (String Operation) String manipulation activities: transform case, split, join, replace, match regex, format templates, and more

Databases (14)#

Type Description
aws_documentdb_connection (AWS DocumentDB Connection) Opens an AWS DocumentDB client (with optional multi-document transaction and retry) for later AWS DocumentDB Operation activities to reuse.
aws_documentdb (AWS DocumentDB Operation) Find, insert, update, delete, upsert, or run an aggregation pipeline against an AWS DocumentDB collection (MongoDB-API-compatible).
aws_dynamodb_connection (AWS DynamoDB Connection) Opens an AWS DynamoDB client (with optional retry) for later AWS DynamoDB Operation activities to reuse.
aws_dynamodb (AWS DynamoDB Operation) Get, put, update, delete, query, or scan items in an AWS DynamoDB table.
azure_cosmosdb_connection (Azure CosmosDB Connection) Opens an Azure CosmosDB client (with optional retry) for later Azure CosmosDB Operation activities to reuse.
azure_cosmosdb (Azure CosmosDB Operation) Read, insert, upsert, update, delete, or query items in an Azure CosmosDB container (Core SQL API).
cassandra_connection (Cassandra Connection) Opens an Apache Cassandra session (with optional retry) for later Cassandra Operation activities to reuse.
cassandra (Cassandra Operation) Select, insert, update, delete, or execute raw CQL against an Apache Cassandra keyspace.
couchbase_connection (Couchbase Connection) Opens a Couchbase cluster connection (with optional retry) for later Couchbase Operation activities to reuse.
couchbase (Couchbase Operation) Get, insert, upsert, replace, remove, or query documents in a Couchbase bucket.
mongodb_connection (MongoDB Connection) Opens a MongoDB client (with optional multi-document transaction and retry) for later MongoDB Operation activities to reuse.
mongodb (MongoDB Operation) Find, insert, update, delete, upsert, or run an aggregation pipeline against a MongoDB collection.
sql_database_connection (SQL Connection) Opens a relational database connection (with optional transaction, isolation level, retry, and session settings) for later SQL Operation activities to reuse.
sql_database (SQL Operation) Select, insert, update, delete, upsert, or execute raw SQL against a relational database — SQL Server, PostgreSQL, MySQL, MariaDB, SQLite, Oracle, Firebird, DB2, SAP HANA, Informix, or MS Access.

Cloud Provider Services (12)#

Type Description
aws_s3 (AWS S3) Upload, download, delete, list, copy, and check objects in Amazon S3
aws_sns (AWS SNS) Publish messages, manage subscriptions, and list subscriptions in Amazon SNS topics
aws_sqs (AWS SQS) Send, receive, delete, and manage messages in Amazon SQS queues
aws_secrets (AWS Secrets Manager) Get, set, delete, and list secrets in AWS Secrets Manager
azure_blob (Azure Blob Storage) Upload, download, delete, list, copy, and check objects in Azure Blob Storage
azure_keyvault (Azure Key Vault) Get, set, delete, and list secrets in Azure Key Vault
azure_queue (Azure Queue Storage) Send, receive, peek, delete, and manage messages in Azure Storage Queues
azure_servicebus (Azure Service Bus) Send, receive, peek, complete, dead-letter, and abandon messages on Azure Service Bus queues and topics
azure_table (Azure Table Storage) Get, upsert, delete, and query entities in Azure Table Storage
gcp_storage (GCP Cloud Storage) Upload, download, delete, list, copy, and check objects in Google Cloud Storage
gcp_pubsub (GCP Pub/Sub) Publish messages to Google Cloud Pub/Sub topics; pull from subscriptions and acknowledge messages
gcp_secrets (GCP Secret Manager) Get, set, delete, and list secrets in Google Cloud Secret Manager

Messaging (6)#

Type Description
messenger (Facebook Messenger) Send messages via the Facebook Messenger Platform API. Supports text messages, approved templates, media attachments, and user profile retrieval.
google_chat (Google Chat) Send messages to Google Chat via Incoming Webhooks or the Chat REST API. Supports plain text, Card v2 messages, space creation, and space retrieval.
teams (Microsoft Teams) Send messages to Microsoft Teams via Incoming Webhooks or the Microsoft Graph API. Supports plain text, Adaptive Cards, channel messages, and meeting creation.
slack (Slack) Interact with Slack via the Web API. Post messages, send Block Kit layouts, upload files, add emoji reactions, and look up users.
telegram (Telegram) Interact with Telegram via the Bot API. Send text, photos, documents, and polls; pin messages; and retrieve chat information.
whatsapp (WhatsApp) Send messages via the WhatsApp Business Cloud API. Supports text, approved templates, media (image/video/audio/document), interactive messages, reactions, and read receipts.

SSH / Remote Execution (3)#

Type Description
ssh_command (SSH Command) Execute a command on a remote machine over SSH. No agent or special software required on the target — standard SSH access only.
ssh_dir (SSH Directory) Remote directory operations over SSH/SFTP: list, create, delete, copy, and check existence
ssh_file (SSH File) Remote file operations over SSH/SFTP: upload, download, read, write, delete, copy, and check existence

LLM / AI (4)#

Type Description
llm_decision (LLM Decision) Prompt a language model to return a structured JSON decision. The response is validated against an output schema before mapping to activity outputs.
llm_image (LLM Image) Analyse an image with a multimodal language model. Accepts a base64-encoded image or a publicly accessible image URL.
llm_rag (LLM RAG) Retrieval-Augmented Generation — search a vector corpus for relevant context chunks and answer a query with grounded, cited responses
llm_text (LLM Text) Generate or transform text using a language model. Supports built-in operations (summarize, translate, extract, classify, sentiment, rewrite, qa) or a fully custom prompt.

File & Storage (3)#

Type Description
file (File) Local file operations on the worker node: read text, read as base64 (for binary/image files), write, append, copy, move, delete, check existence, and get file info
file_reference (File Reference) Builds a governed reference (Storage + Storage Area + relative path) to a file, from a filename/path template evaluated exactly once when this activity runs. Pass the result to a downstream File/Folder/Excel activity's "File Reference" input instead of configuring Storage/Area/path separately there.
folder (Folder) Local directory operations on the worker node: create, delete, list, copy, check existence, and get directory info

Caching (2)#

Type Description
memcached_cache (Memcached Cache) Interact with a Memcached cache: get, set, add, replace, delete, and check existence
redis_cache (Redis Cache) Interact with a Redis cache: get, set, delete, check existence, manage expiry, increment, and decrement values

Custom Scripting (1)#

Type Description
js_script (JavaScript Script) Execute a sandboxed JavaScript snippet via the Jint engine. Inputs are injected as named variables; write results to the output object.

DevOps (1)#

Type Description
git (Git) Clone, pull, push, commit, and inspect Git repositories (backed by libgit2 — no external git executable required)

Diagnostics (1)#

Type Description
log (Log) Write a structured message to this run execution log. The canonical first step of an error-handling chain (see error.* fields resolvable after an onError.goto), but usable anywhere a real log entry — not a notification — is needed.

Kiwi Fabric Integration (5)#

Type Description
kiwi_fabric_saga (Kiwi Distributed Transaction) Execute a multi-step distributed transaction (SAGA) via Kiwi Fabric, with automatic compensation on failure.
kiwi_fabric_connection (Kiwi Fabric Connection) Opens a connection to a Kiwi Fabric instance for later Kiwi Federated Query / Kiwi Distributed Transaction activities to reuse.
kiwi_fabric_datasource (Kiwi Fabric Data Source) Register a Kiwi Fabric data source and/or a queryable capability (table) on it — makes an uploaded file, or any other source, queryable by name.
kiwi_fabric_file (Kiwi Fabric File) Upload a file into Kiwi Fabric's managed storage, or list/delete previously uploaded files.
kiwi_fabric_query (Kiwi Federated Query) Run a SQL query that transparently federates across Kiwi Fabric's registered data sources.

Kiwi Distro Integration (3)#

Type Description
kiwi_distro_connection (Kiwi Distro Connection) Opens a connection to a Kiwi Distro middleware instance for later Kiwi Distro Invoke activities to reuse.
kiwi_distro_invoke (Kiwi Distro Invoke) Call a method on a Kiwi Distro service via the middleware.
kiwi_distro_script (Kiwi Distro Script) Run a registered Kiwi Distro script on a service and wait for it to finish.