Block Schemas
Complete YAML schema reference for all Sim Studio blocks
This section contains the complete YAML schema definitions for all available block types in Sim Studio. Each block type has specific configuration requirements and output formats.
Core Blocks
These are the essential building blocks for creating workflows:
Starter Block
Workflow entry point supporting manual triggers, webhooks, and schedules
Agent Block
AI-powered processing with LLM integration and tool support
Function Block
Custom JavaScript/TypeScript code execution environment
Response Block
Format and return final workflow results
Logic & Control Flow
Blocks for implementing conditional logic and control flow:
Condition Block
Conditional branching based on boolean expressions
Router Block
AI-powered intelligent routing to multiple paths
Loop Block
Iterative processing with for and forEach loops
Parallel Block
Concurrent execution across multiple instances
Integration Blocks
Blocks for connecting to external services and systems:
Advanced Blocks
Specialized blocks for complex workflow patterns:
Evaluator Block
Validate outputs against defined criteria and metrics
Workflow Block
Execute other workflows as reusable components
Common Schema Elements
All blocks share these common elements:
Basic Structure
block-id:
type: <block-type>
name: <display-name>
inputs:
# Block-specific configuration
connections:
# Connection definitions
Connection Types
- success: Target block for successful execution
- error: Target block for error handling (optional)
- conditions: Multiple paths for conditional blocks
Environment Variables
Use double curly braces for environment variables:
inputs:
apiKey: '{{API_KEY_NAME}}'
endpoint: '{{SERVICE_ENDPOINT}}'
Block References
Reference other block outputs using the block name in lowercase:
inputs:
userPrompt: <blockname.content>
data: <functionblock.output>
originalInput: <start.input>
Validation Rules
All YAML blocks are validated against their schemas:
- Required fields: Must be present
- Type validation: Values must match expected types
- Enum validation: String values must be from allowed lists
- Range validation: Numbers must be within specified ranges
- Pattern validation: Strings must match regex patterns (where applicable)
Quick Reference
Block Types and Properties
Block Type | Primary Output | Common Use Cases |
---|---|---|
starter | .input | Workflow entry point |
agent | .content | AI processing, text generation |
function | .output | Data transformation, calculations |
api | .output | External service integration |
condition | N/A (branching) | Conditional logic |
router | N/A (branching) | Intelligent routing |
response | N/A (terminal) | Final output formatting |
loop | .results | Iterative processing |
parallel | .results | Concurrent processing |
webhook | .payload | External triggers |
evaluator | .score | Output validation, quality assessment |
workflow | .output | Sub-workflow execution, modularity |
Required vs Optional
- Always required:
type
,name
- Usually required:
inputs
,connections
- Context dependent: Specific input fields vary by block type
- Always optional:
error
connections, UI-specific fields