Integrating Rules
Flow Capabilities

Flow Functions

While your configurable rules are undoubtedly the most valuable pieces Flows expose, we offer several built-in functions to help your team collect data from external sources and run logic conditionally.

We call these "flow functions"– special operations you can use in your flows to perform various actions beyond rule execution. Below are all the available flow function node types– but do try our application or reach out to get information on our latest capabilities.

Continue If

Continue IfEvaluate if an input property is true/truthy and only proceed with specific data if so.

Continue If

Proceed based on one of four selectable conditions:

  • If a specific property is "truthy" (not empty, non-zero, non-null)
  • If a specific property is exactly true
  • If a specific property is exactly false
  • If a specific property is "falsy" (empty list, zero, null, or false)

If the condition is met, the flow continues along the exiting edges. Use two "Continue If" nodes to model if/else logic.

💡

All data you want to proceed with after a Continue If node must be wired in as inputs.

Result Object

Result ObjectNest data in a result object within a specific key to better organize the final output of your flow.

Result Object

The final output of your flow. It collects results from all preceding nodes and returns them as the flow's response.

  • You can use multiple Result Object nodes with unique keys
  • Required: Every flow must end with at least one Result Object node

Lookup Table

Lookup TableMap an input 'key' to any output 'value' based on a table of key & value pairs.

Lookup Table

Look up a value in a table and return a corresponding value if an exact match is found. Works well with Continue If nodes by returning true/false based on lookup results.

Run Code

Run CodeExecute custom JavaScript to perform operations like computing data, making API calls, or integrating with external services.

Run Code

Run custom JavaScript code using data from your flow. Useful for:

  • Making calls to external services
  • Performing complex calculations
  • Custom string formatting or data transformation

Available libraries: fetch, moment, lodash, and more.

Access connected values via the inputs dictionary and return values via the outputs dictionary.

// Example: Calculate discount
const total = inputs.subtotal
const discount = total > 100 ? total * 0.1 : 0
outputs['discount'] = discount
outputs['final_total'] = total - discount

SOAP Request

SOAP RequestConnect to SOAP/XML web services using WSDL to call operations on enterprise systems.

Connect to SOAP/XML web services to integrate with legacy enterprise systems. Upload a WSDL file to auto-discover available operations.

Features:

  • WSDL-based service discovery
  • Support for complex XML request/response structures
  • Built-in authentication options

Database Query

Database QueryQuery a PostgreSQL database to fetch data from an external resource and use it in this flow.

Database Query

Query a PostgreSQL, MSSQL, or MySQL database, and return results. Variables from your flow can be used in the query.

Features:

  • Use rows with a For Each node or send directly to Result Object
  • Built-in 1-minute caching for performance

API Request

API RequestMake an HTTP request to any API to fetch & send data from/to external resources.

API Request

Make HTTP requests to external APIs. Variables from your flow can be used in the URL, headers, and body.

Features:

  • GET, POST, PUT, DELETE methods
  • Custom headers and authentication
  • Built-in 1-minute caching, customizable cache key

For Each

For EachPerform following operations on each available item in a non-empty list of values/objects, and return a list of results.

For Each

Iterate over a list of items and apply a rule to each one. Perfect for:

  • Transforming collections of objects
  • Processing lists of orders, users, or products
  • Batch operations
⚠️

For Each nodes must culminate in a Result Object node. Values inside the loop cannot connect to parts of the flow outside that loop (indicated by different edge colors).

AI Inference

AI InferenceIntelligently parse out structured properties from text using AI models to evaluate rules against.

AI Inference

Extract structured data from text using OpenAI. Useful for:

  • Parsing emails and reports
  • Extracting specific information from documents
  • NLP preprocessing before rule execution

To use:

  1. Connect a text input
  2. Define target labels to extract
  3. Click "Run Inference"

Vault

VaultConnect to secure key vaults to retrieve secrets at runtime without exposing credentials.

Vault

Securely retrieve sensitive information from cloud secrets managers (AWS, GCP, Azure).

Security features:

  • Secrets never appear in clear text in the flow
  • Cannot be logged or returned in output
  • Only accessible within Run Code nodes

Context Operation

Context OperationRead, update, or delete context data. Use for stateful context data operations within flows.

Interact with Rulebricks Contexts directly from your flow. Perfect for:

  • Reading entity data to use in rule evaluation
  • Updating context properties based on flow outcomes
  • Deleting or archiving context records

Context Operations require a configured Context in your workspace. See the Contexts documentation for setup instructions.

Send Notification

Send NotificationSend multi-channel alerts via Email, Slack, Discord, or PagerDuty based on flow data.

Trigger notifications to your team or external systems based on flow outcomes. Supports multiple channels:

  • Email: Send templated emails with flow data
  • Slack: Post messages to channels or DMs
  • Discord: Send webhook messages to Discord servers
  • PagerDuty: Create incidents for on-call alerting
💡

Configure notification channels in your workspace settings before using this node.