Components
34 components. One envelope format.
Every component reads envelopes and writes envelopes, so any of them can follow any other. Settings take fixed values or expressions on the envelope, like $order.total.
Query, insert, upsert, update, delete or run any SQL, once per envelope or in batches, each statement in its own transaction.
SQL Server QuerySQL Server InsertSQL Server UpdateSQL Server DeleteSQL Server Execute
Redshift QueryRedshift InsertRedshift UpsertRedshift DeleteRedshift Execute
MongoDB PipelineMongoDB UpsertMongoDB Delete
-- Redshift Query, once per incoming envelope
SELECT id, customer_id, total
FROM orders
WHERE created_at > $since
Reshape, route and combine envelopes without writing code.
MapperFilterRouterLookupAggregateSplitSortDistinctLimitData Grid
Loops with Next, Break and Continue with; call other flows and wait for them, or fire and forget.
LoopNextBreakContinue withFlow InvokerWaitLogDiscard
HTTP Request sends one call per envelope: method, URL, headers and body from the envelope, secrets included, through REST, OAuth 2.0 or SOAP connections.
HTTP Request
When one expression is not enough, write TypeScript, or call a function from the project's own scripts.
async function process($input) {
if (!$input.email) throw new Error("missing email")
return { ...$input, email: $input.email.toLowerCase() }
}