For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Dashboard
User GuideDeveloper GuidesAPI Reference
User GuideDeveloper GuidesAPI Reference
  • Getting Started
    • What is Runtype?
    • Creating your account
    • Platform Keys vs. BYOK
    • Understanding the Runtype UI
    • Quickstart: Social Media Post Generator
    • Quickstart: From Agent to Chat Widget
  • Dashboard
    • What is the Dashboard?
    • Daily Executions
  • Playground
    • What is the Playground?
  • Products & Surfaces
    • What are Products?
    • What are Surfaces?
    • Creating a Product
    • Setting up a Chat Surface
    • Setting up an API Surface
    • Setting up an MCP Surface
    • Setting up an A2A Surface
    • Setting up a Slack Surface
    • MCP authentication
    • Authenticating with product API keys
    • Embedding the chat widget (script tag)
    • Embedding the chat widget (React)
    • Surface orchestration modes
    • Product views
    • Adding Capabilities to a product
    • Connecting external agents
    • How A2A works
    • Connecting to Cursor / VS Code
    • Connecting to Claude Desktop
    • Scoping API keys to capabilities
    • Auto-generated OpenAPI spec
    • Calling your API endpoints
    • Client tokens and domain restrictions
    • AI-powered theme generation
    • Widget theming and customization
    • Product versioning and status
  • Flows
    • What are Flows?
    • Creating and Editing Flows
    • Flow step types overview
    • Agent and Flow Templates
    • Using prompt steps
    • Using transform-data steps
    • Using conditional steps
    • Using fetch-url and api-call steps
    • Using record steps (upsert/retrieve)
    • Flow variables and templates
    • Flow versioning and publishing
    • Running flows in batch
    • Handling batch failures
    • Debugging flows
  • Agents
    • What are Agents?
    • Creating and configuring Agents
    • Agent tools
  • Records
    • What are Records?
    • Creating and managing records
    • Using records in flows
    • Filtering and searching records
  • Tools
    • What are Tools?
    • Built-in Tools
    • Creating custom tools
    • Creating external tools
    • Runtime tools
  • Evals
    • What are Evals?
    • Running an Eval
    • Interpreting eval results
  • Schedules
    • What are Schedules?
    • Automating batch processing
  • Logs
    • What are Logs?
    • Working with Logs
  • Integrations
    • Connecting AI model providers
    • Slack integration
    • Google Workspace integration
    • GitHub integration
    • Linear integration
    • Weaviate (vector search)
    • Firecrawl (web scraping)
    • Exa (web search)
  • Settings
    • What's in Settings?
    • Available AI models
    • What are Organizations?
    • Managing AI models
    • Managing API keys
    • Billing and plans
    • Usage data
    • Team members and permissions
    • Appearance and preferences
    • Integrations (PostHog, Weaviate, Daytona)
  • Troubleshooting & FAQ
    • FAQ
    • Rate Limits and Usage
    • Managing Runtype with Claude
    • Flow execution failures
    • Common errors and solutions
    • Authentication issues
Dashboard
LogoLogo
On this page
  • Identifying the problem
  • Common Flow failures
  • Invalid JSON in request body
  • Missing required parameter
  • API call returns 500 error
  • Record not found
  • Transform step JavaScript error
  • Debugging workflow
  • Preventing failures
  • Input validation
  • When errors are expected
  • Next steps
Troubleshooting & FAQ

Flow execution failures

Was this page helpful?
Previous

Common errors and solutions

Next
Built with

Diagnose and fix Flow execution failures using logs, error patterns, and debugging techniques.

Identifying the problem

  1. Go to Logs
  2. Filter by Status: Failed
  3. Click the failed execution
  4. Review error details

Common Flow failures

Invalid JSON in request body

Error: Unexpected token in JSON at position X

Cause: Malformed JSON in API call or transform step

Fix:

  1. Validate JSON syntax (remove trailing commas, quote strings)
  2. Use JSON.stringify() in transform steps
  3. Test with online JSON validator

Missing required parameter

Error: Missing required field: {fieldName}

Cause: Flow input missing expected field

Fix:

  1. Add validation at Flow start
  2. Provide default values: {{input.field || "default"}}
  3. Update callers to include required fields

API call returns 500 error

Error: External API returned 500

Cause: Third-party API encountered server error

Fix:

  1. Add retry logic with delay steps
  2. Implement error handling and fallback responses
  3. Contact API provider if persistent

Record not found

Error: No Record found matching criteria

Cause: Retrieve Record step found no match

Fix:

  1. Add conditional check: {{retrieveRecord.output != null}}
  2. Provide fallback behavior in else branch
  3. Verify lookup field and value are correct

Transform step JavaScript error

Error: ReferenceError: X is not defined

Cause: JavaScript syntax error in transform step

Fix:

  1. Check variable spelling and scope
  2. Use const or let to declare variables
  3. Test transform logic in isolation

Debugging workflow

  1. Identify failing step: Check logs to see which step failed
  2. Review input: Inspect data passed to that step
  3. Test in isolation: Run Flow with test data that triggers error
  4. Add logging: Use transform steps with console.log() to inspect values
  5. Fix and verify: Update Flow, test, publish

Preventing failures

Input validation

Add validation at Flow start:

1if (!input.email || !input.email.includes('@')) {
2 throw new Error('Invalid email provided');
3}

Test Flows with edge cases: empty inputs, null values, invalid data, API failures. Proactive testing prevents production failures.

When errors are expected

Some failures are normal and should be handled, not prevented:

  • User provides invalid input → Return clear error message
  • External API temporarily down → Retry or queue for later
  • Record doesn’t exist → Create new Record or use defaults

Design Flows to handle these scenarios gracefully.

Next steps

  • Debugging flows for detailed debugging techniques
  • Debugging failed executions for production troubleshooting
  • Viewing execution logs to access error details
  • Common errors and solutions for quick reference