Starts another blueprint by key. Useful for breaking logic into smaller, reusable parts. Run blueprint block

Overview

The Run blueprint block allows you to call another blueprint from within your current workflow. This enables modular, reusable logic and lets you break complex workflows into smaller, manageable pieces. You can specify the blueprint to run and pass input parameters. The output of the called blueprint is available for use in subsequent blocks.

Common use cases

  • Reusing logic across multiple workflows
  • Breaking up large blueprints into smaller, maintainable components
  • Creating shared utility blueprints
  • Running conditional or dynamic workflows

How it works

  1. Blueprint Key: Select the blueprint to run by its key. The blueprint must have a key set in its settings. If the blueprint doesn’t have a key, it does not show in the list of available blueprints.
  2. Payload: Provide input data as text that will be available as @{payload} in the called blueprint. The payload is treated as plain text.
The block executes the specified blueprint and returns any output that the called blueprint returns with the Return value block.
No trigger required: Blueprints called with the Run blueprint block don’t need a UI trigger or any other trigger. They start execution immediately when called and can access the payload data you pass in.

Examples

Document processing workflow

This example demonstrates a document processing system that handles different file types using specialized blueprints. Blueprint Flow:
  1. UI Trigger → User uploads document through file input
  2. Classification → Identifies document type (invoice, resume, or contract)
  3. Conditional routing → Routes to appropriate processing blueprint
  4. Run blueprint → Executes specialized document processor
  5. Set state → Stores the processing result to display in the UI
Block Configuration: For invoice processing:
  • Blueprint Key: invoice_processor
  • Payload: @{file_data}
Called Blueprint Access: In the invoice_processor blueprint, you can access the passed data using @{payload}. Then you can return a value from the blueprint using the Return value block. Run blueprint block

Fields

NameTypeControlDefaultDescriptionOptionsValidation
Blueprint KeyBlueprint Key----Format: writer#blueprintKey
PayloadTextTextareaThe value specified will be available using the template syntax i.e. @--

End states

Below are the possible end states of the block call.
NameFieldTypeDescription
Success-successThe request was successful.
Error-errorThe blueprint was executed successfully.
The output of the Run blueprint block is the return value from the called blueprint. This is typically the result of the last block in the called blueprint, or a specific return value if the called blueprint has a Return value block. You can access this output in subsequent blocks using @{result}.