# FlowDrop ## Docs - [Cancel Agent Spec execution](https://flowdrop.mintlify.app/api-reference/agent-spec/cancel-agent-spec-execution.md): Cancel a running Agent Spec execution. Only executions in 'running' status can be cancelled. - [Check Agent Spec runtime health](https://flowdrop.mintlify.app/api-reference/agent-spec/check-agent-spec-runtime-health.md): Verify that the configured Agent Spec runtime is available and responding. Used to check connectivity before execution. - [Execute an Agent Spec flow](https://flowdrop.mintlify.app/api-reference/agent-spec/execute-an-agent-spec-flow.md): Submit an Agent Spec flow for execution on the configured runtime (WayFlow, PyAgentSpec, or other compatible runtimes). - [Export workflow as Agent Spec JSON](https://flowdrop.mintlify.app/api-reference/agent-spec/export-workflow-as-agent-spec-json.md): Convert a FlowDrop workflow to Agent Spec format and return it. - [Get Agent Spec execution results](https://flowdrop.mintlify.app/api-reference/agent-spec/get-agent-spec-execution-results.md): Retrieve the final results of a completed Agent Spec execution. Returns null/404 if the execution is still running or was cancelled. - [Get Agent Spec execution status](https://flowdrop.mintlify.app/api-reference/agent-spec/get-agent-spec-execution-status.md): Retrieve the current status and per-node execution info for a running or completed Agent Spec execution. - [Import workflow from Agent Spec JSON](https://flowdrop.mintlify.app/api-reference/agent-spec/import-workflow-from-agent-spec-json.md): Convert an Agent Spec flow or document to a FlowDrop workflow. - [List available agents on the runtime](https://flowdrop.mintlify.app/api-reference/agent-spec/list-available-agents-on-the-runtime.md): Retrieve a list of agents registered on the Agent Spec runtime. These agents can be referenced by `agent_node` components. - [List available tools on the runtime](https://flowdrop.mintlify.app/api-reference/agent-spec/list-available-tools-on-the-runtime.md): Retrieve a list of tools registered on the Agent Spec runtime. These tools can be referenced by `tool_node` components. - [Stream Agent Spec execution updates (WebSocket)](https://flowdrop.mintlify.app/api-reference/agent-spec/stream-agent-spec-execution-updates-websocket.md): WebSocket endpoint for real-time execution updates. Streams per-node status changes and execution events as they occur. - [Validate Agent Spec flow on runtime](https://flowdrop.mintlify.app/api-reference/agent-spec/validate-agent-spec-flow-on-runtime.md): Validate an Agent Spec flow specification against the runtime without executing it. Checks for structural correctness, valid node references, and property compatibility. - [Validate workflow for Agent Spec export](https://flowdrop.mintlify.app/api-reference/agent-spec/validate-workflow-for-agent-spec-export.md): Check if a FlowDrop workflow can be exported as Agent Spec. Returns validation errors and warnings without performing the export. - [Clear chat conversation history](https://flowdrop.mintlify.app/api-reference/chat/clear-chat-conversation-history.md): Clear the conversation history for a workflow's chat session. This resets the chat context, starting a fresh conversation. - [Get chat conversation history](https://flowdrop.mintlify.app/api-reference/chat/get-chat-conversation-history.md): Retrieve the conversation history for a workflow's chat session. Returns an array of messages with role (user/assistant) and content. - [Send a chat message](https://flowdrop.mintlify.app/api-reference/chat/send-a-chat-message.md): Send a natural language message to the LLM chat backend for a specific workflow. The request includes the current workflow state and optional conversation history so the LLM can generate contextually relevant responses. - [Get category definitions](https://flowdrop.mintlify.app/api-reference/configuration/get-category-definitions.md): Retrieve all available category definitions including display labels, icons, colors, and ordering. Categories determine how nodes are organized in the sidebar. - [Get port configuration](https://flowdrop.mintlify.app/api-reference/configuration/get-port-configuration.md): Retrieve the complete port configuration system including available data types, compatibility rules, and default settings. This configuration determines how nodes can be connected in workflows based on port data types. - [Export workflow](https://flowdrop.mintlify.app/api-reference/importexport/export-workflow.md): Export a workflow as JSON or YAML format - [Import workflow](https://flowdrop.mintlify.app/api-reference/importexport/import-workflow.md): Import a workflow from JSON format. A new UUID will be assigned to the imported workflow. - [Cancel interrupt](https://flowdrop.mintlify.app/api-reference/interrupts/cancel-interrupt.md): Cancel a pending interrupt without providing a response. This may not be allowed for all interrupts - check the allowCancel property in the interrupt data before attempting to cancel. - [Get interrupt details](https://flowdrop.mintlify.app/api-reference/interrupts/get-interrupt-details.md): Retrieve details about a specific interrupt request. Interrupts are created when a workflow execution requires human input. - [List pipeline interrupts](https://flowdrop.mintlify.app/api-reference/interrupts/list-pipeline-interrupts.md): List all interrupts associated with a pipeline execution. Useful for monitoring workflow progress and pending user actions. - [List session interrupts](https://flowdrop.mintlify.app/api-reference/interrupts/list-session-interrupts.md): List all interrupts associated with a playground session. Useful for displaying pending interrupts or reviewing interrupt history. - [Resolve interrupt](https://flowdrop.mintlify.app/api-reference/interrupts/resolve-interrupt.md): Submit user response to resolve a pending interrupt. The value type depends on the interrupt type: - confirmation: boolean (true = confirmed) - choice: string or string[] (selected values) - text: string (user input) - form: object (form data matching schema) - [Introduction](https://flowdrop.mintlify.app/api-reference/introduction.md): The REST API that FlowDrop expects your backend to implement. - [Get all available node types](https://flowdrop.mintlify.app/api-reference/node-types/get-all-available-node-types.md): Retrieve all available node processors with optional filtering by category, search query, and pagination. Supports filtering by node category (models, data_processing, input_output, etc.) and search queries. - [Get node type by ID](https://flowdrop.mintlify.app/api-reference/node-types/get-node-type-by-id.md): Retrieve detailed metadata for a specific node type by its unique identifier - [Cancel execution](https://flowdrop.mintlify.app/api-reference/pipeline/cancel-execution.md): Cancel a running execution. Only executions in 'pending' or 'running' status can be cancelled. - [Execute pipeline](https://flowdrop.mintlify.app/api-reference/pipeline/execute-pipeline.md): Start execution of a pipeline - [Execute workflow](https://flowdrop.mintlify.app/api-reference/pipeline/execute-workflow.md): Create a new pipeline and start execution in one call. This is a convenience endpoint that combines pipeline creation with immediate execution. Returns the pipeline ID and initial status for tracking. - [Get execution logs](https://flowdrop.mintlify.app/api-reference/pipeline/get-execution-logs.md): Retrieve detailed execution logs for a specific execution - [Get execution status](https://flowdrop.mintlify.app/api-reference/pipeline/get-execution-status.md): Retrieve the current status and details of a specific execution. This is an alias for the pipeline detail endpoint. - [Get pipeline execution details](https://flowdrop.mintlify.app/api-reference/pipeline/get-pipeline-execution-details.md): Retrieve detailed information about a pipeline execution including: - Overall pipeline status - Individual job statuses for each node - Node execution information (execution count, duration, errors) - Job status summary - [Get pipeline execution logs](https://flowdrop.mintlify.app/api-reference/pipeline/get-pipeline-execution-logs.md): Retrieve detailed execution logs for a pipeline - [Get pipeline status](https://flowdrop.mintlify.app/api-reference/pipeline/get-pipeline-status.md): Retrieve only the current status of a pipeline (lightweight endpoint). Use this for polling when you only need the status, not full details. - [List execution history](https://flowdrop.mintlify.app/api-reference/pipeline/list-execution-history.md): Retrieve execution history across all workflows. Supports filtering by workflow, status, and date range. - [List workflow pipelines](https://flowdrop.mintlify.app/api-reference/pipeline/list-workflow-pipelines.md): Get all pipeline executions for a specific workflow - [Stop pipeline execution](https://flowdrop.mintlify.app/api-reference/pipeline/stop-pipeline-execution.md): Cancel a running pipeline execution - [Create a new playground session](https://flowdrop.mintlify.app/api-reference/playground/create-a-new-playground-session.md): Create a new playground session for testing a workflow. The session can be named for easy identification. - [Delete a playground session](https://flowdrop.mintlify.app/api-reference/playground/delete-a-playground-session.md): Permanently delete a playground session and all its messages. This action cannot be undone. - [Get a single message](https://flowdrop.mintlify.app/api-reference/playground/get-a-single-message.md): Retrieve a specific message from a playground session by its ID. Returns full message details including status and metadata. - [Get message status](https://flowdrop.mintlify.app/api-reference/playground/get-message-status.md): Retrieve only the status of a message (lightweight endpoint for polling). Useful for checking if message processing is complete without fetching full message data. - [Get messages from a playground session](https://flowdrop.mintlify.app/api-reference/playground/get-messages-from-a-playground-session.md): Retrieve messages from a playground session with optional filtering. Supports polling via the `since` parameter to fetch only new messages. - [Get playground session details](https://flowdrop.mintlify.app/api-reference/playground/get-playground-session-details.md): Retrieve detailed information about a specific playground session, including its current status and configuration. - [List playground sessions for a workflow](https://flowdrop.mintlify.app/api-reference/playground/list-playground-sessions-for-a-workflow.md): Retrieve all playground sessions associated with a workflow. Sessions are used to test and interact with workflows in an isolated environment. - [Send a message to the playground session](https://flowdrop.mintlify.app/api-reference/playground/send-a-message-to-the-playground-session.md): Send a user message or trigger workflow execution with inputs. This starts or continues the conversation in the playground. - [Stop playground execution](https://flowdrop.mintlify.app/api-reference/playground/stop-playground-execution.md): Stop the currently running execution in the playground session. This cancels any pending workflow operations. - [API health check](https://flowdrop.mintlify.app/api-reference/system/api-health-check.md): Check if the FlowDrop API is running and responsive. This endpoint is at the root level following industry conventions for Kubernetes liveness/readiness probes and load balancer health checks. - [Get API version](https://flowdrop.mintlify.app/api-reference/system/get-api-version.md): Retrieve the current API version information - [Get system configuration](https://flowdrop.mintlify.app/api-reference/system/get-system-configuration.md): Retrieve public system configuration settings - [Validate workflow](https://flowdrop.mintlify.app/api-reference/validation/validate-workflow.md): Validate a workflow structure without saving it. Checks for: - Valid node connections and port compatibility - Required configuration fields - Circular dependencies - Orphaned nodes - Missing required inputs - [Create a new workflow](https://flowdrop.mintlify.app/api-reference/workflows/create-a-new-workflow.md): Create a new workflow with the provided name, description, nodes, and edges. The workflow will be assigned a unique UUID and metadata will be automatically generated. - [Delete workflow](https://flowdrop.mintlify.app/api-reference/workflows/delete-workflow.md): Permanently delete a workflow and all associated data including execution history - [Get all workflows](https://flowdrop.mintlify.app/api-reference/workflows/get-all-workflows.md): Retrieve all workflows with optional search filtering and pagination. Returns workflow metadata including nodes, edges, and execution history. - [Get workflow by ID](https://flowdrop.mintlify.app/api-reference/workflows/get-workflow-by-id.md): Retrieve a specific workflow with all its nodes, edges, and metadata - [Update workflow](https://flowdrop.mintlify.app/api-reference/workflows/update-workflow.md): Update an existing workflow. All fields are optional - only provided fields will be updated. The updatedAt timestamp will be automatically set to the current time. - [1.x](https://flowdrop.mintlify.app/changelog/1x.md): FlowDrop 1.x release highlights - [2.x](https://flowdrop.mintlify.app/changelog/2x.md): FlowDrop 2.x release highlights - [Pre 1.0](https://flowdrop.mintlify.app/changelog/pre-1.0.md): The 0.0.x development series - [Architecture overview](https://flowdrop.mintlify.app/concepts/architecture-overview.md): How FlowDrop's modules, components, stores, and services fit together. - [Glossary](https://flowdrop.mintlify.app/concepts/glossary.md): Definitions of key terms used throughout FlowDrop documentation. - [Thinking in graphs](https://flowdrop.mintlify.app/concepts/thinking-in-graphs.md): Build intuition for nodes, edges, ports, and config by growing a familiar shell command into a workflow graph. - [What is a workflow?](https://flowdrop.mintlify.app/concepts/what-is-a-workflow.md): Understand the core mental model behind FlowDrop before writing any code. - [Swappable themes](https://flowdrop.mintlify.app/docs/customization/swappable-themes.md): FlowDrop's look and feel is fully themeable through CSS custom properties — swap palettes, spacing, and radius without touching component code. - [Drupal](https://flowdrop.mintlify.app/docs/framework/drupal.md): Get FlowDrop on Drupal — the module ships the editor and the backend together. - [React](https://flowdrop.mintlify.app/docs/framework/react.md): Mount a FlowDrop editor into a React component. - [Svelte](https://flowdrop.mintlify.app/docs/framework/svelte.md): Use FlowDrop as a native Svelte 5 component. - [Vanilla JS](https://flowdrop.mintlify.app/docs/framework/vanilla.md): Drop a FlowDrop editor into any page — no framework required. - [Vue](https://flowdrop.mintlify.app/docs/framework/vue.md): Mount a FlowDrop editor into a Vue 3 component. - [Quick start](https://flowdrop.mintlify.app/docs/quickstart.md): Get a live FlowDrop editor running in your app in minutes — Svelte, React, Vue, vanilla JS, or Drupal. - [Agent Spec integration](https://flowdrop.mintlify.app/guides/advanced/agent-spec.md): Import and export workflows using Agent Spec — an open standard for AI agent definitions, originally published by Oracle. - [Event system](https://flowdrop.mintlify.app/guides/advanced/event-system.md): Hook into FlowDrop's lifecycle with all 11 event handlers. - [Programmatic API](https://flowdrop.mintlify.app/guides/advanced/programmatic-api.md): Create and manipulate workflows in code using WorkflowAdapter and helpers. - [Store system](https://flowdrop.mintlify.app/guides/advanced/store-system.md): Understand FlowDrop's reactive state management for programmatic access. - [Template variables](https://flowdrop.mintlify.app/guides/advanced/template-variables.md): Use dynamic variables from upstream nodes in template editor fields. - [Configuration forms](https://flowdrop.mintlify.app/guides/config-schema.md): Auto-generate node configuration forms from JSON Schema. - [Creating workflows](https://flowdrop.mintlify.app/guides/creating-workflows.md): Build workflows visually using FlowDrop's drag-and-drop editor. - [Custom form fields](https://flowdrop.mintlify.app/guides/custom-form-fields.md): Extend FlowDrop's form system with custom field components. - [Custom nodes](https://flowdrop.mintlify.app/guides/custom-nodes.md): Register custom Svelte components as workflow node types. - [Edge structure](https://flowdrop.mintlify.app/guides/edge-json.md): The JSON format for workflow edges — connections between nodes, handle IDs, and edge categories. - [i18n & custom messages](https://flowdrop.mintlify.app/guides/i18n.md): Override or translate every user-facing string in FlowDrop via the messages prop. - [Framework integration](https://flowdrop.mintlify.app/guides/integration.md): Use FlowDrop with Svelte, vanilla JS, React, Vue, Angular, or any framework. - [Authentication patterns](https://flowdrop.mintlify.app/guides/integration/authentication-patterns.md): Secure your FlowDrop integration with the right auth provider. - [Backend implementation](https://flowdrop.mintlify.app/guides/integration/backend-implementation.md): Build the REST API that FlowDrop expects to communicate with. - [Deployment](https://flowdrop.mintlify.app/guides/integration/deployment.md): Deploy FlowDrop in production with Docker, Node.js, or static hosting. - [Human-in-the-loop](https://flowdrop.mintlify.app/guides/interrupts.md): Pause workflows for human approval, input, or review. - [Multiple instances](https://flowdrop.mintlify.app/guides/multiple-instances.md): Run several isolated FlowDrop editors or playgrounds on a single page. - [Node structure](https://flowdrop.mintlify.app/guides/node-json.md): The JSON format for workflow nodes — WorkflowNode, NodeMetadata, config values, and node types. - [Node types](https://flowdrop.mintlify.app/guides/node-types.md): Built-in node types and the port system in FlowDrop. - [Performance](https://flowdrop.mintlify.app/guides/performance.md): Bundle size, lazy loading, SSR guard patterns, and tips for large workflows in FlowDrop. - [Pipeline views](https://flowdrop.mintlify.app/guides/pipeline-views.md): Monitor workflow execution with graph, kanban, and table views — and customize the kanban layout from your backend. - [Interactive playground](https://flowdrop.mintlify.app/guides/playground.md): Test workflows interactively with the FlowDrop playground. - [Port system & data types](https://flowdrop.mintlify.app/guides/port-system.md): Node port definitions, built-in data types, compatibility rules, dynamic ports, and gateway branches. - [Testing](https://flowdrop.mintlify.app/guides/testing.md): Unit testing workflows with WorkflowAdapter, MSW handler setup, and Playwright E2E tests for FlowDrop. - [Theming](https://flowdrop.mintlify.app/guides/theming.md): Customize FlowDrop's look and feel with CSS custom properties. - [Workflow structure](https://flowdrop.mintlify.app/guides/workflow-json.md): The JSON format for FlowDrop workflows — top-level fields, metadata, and how nodes and edges fit together. - [Introduction](https://flowdrop.mintlify.app/index.md): Build beautiful workflow editors in minutes, not months. - [Build an AI agent workflow](https://flowdrop.mintlify.app/recipes/ai-agent-workflow.md): Create a complete AI agent workflow with branching, tools, and human-in-the-loop. - [Auto-save & drafts](https://flowdrop.mintlify.app/recipes/auto-save-and-drafts.md): How FlowDrop auto-saves drafts to browser storage and how to manage them. - [Backend: Express.js](https://flowdrop.mintlify.app/recipes/backend-express.md): Build a working FlowDrop backend with Express in 15 minutes. - [Conditional branching](https://flowdrop.mintlify.app/recipes/conditional-branching.md): Use gateway nodes with branches for if/else and switch/case routing. - [Undo & redo](https://flowdrop.mintlify.app/recipes/undo-redo.md): How FlowDrop's undo/redo system works and how to use it programmatically. - [API overview](https://flowdrop.mintlify.app/reference/api-overview.md): Module structure and exports of the FlowDrop library. - [Components](https://flowdrop.mintlify.app/reference/components.md): Key Svelte components exported by FlowDrop. - [CSS design tokens](https://flowdrop.mintlify.app/reference/css-tokens.md): Complete reference for all --fd-* CSS custom properties used to theme FlowDrop. - [Error reference](https://flowdrop.mintlify.app/reference/errors.md): Mount API exceptions, API error handling, HTTP status codes, and Agent Spec validation errors in FlowDrop. - [Event handlers reference](https://flowdrop.mintlify.app/reference/event-handlers.md): Complete reference for all FlowDrop event handlers. - [Icons](https://flowdrop.mintlify.app/reference/icons.md): How FlowDrop uses Iconify for icons across nodes, categories, and UI. - [Mount API](https://flowdrop.mintlify.app/reference/mount-api.md): Complete reference for mountFlowDropApp(), mountWorkflowEditor(), and mountPlayground() — all options, return values, and lifecycle. - [OpenAPI spec](https://flowdrop.mintlify.app/reference/openapi.md): The full FlowDrop REST API specification. - [Store API reference](https://flowdrop.mintlify.app/reference/stores.md): Complete API reference for all FlowDrop reactive stores. - [Core types](https://flowdrop.mintlify.app/reference/types.md): Key TypeScript types exported by FlowDrop. - [Drupal](https://flowdrop.mintlify.app/server-implementations/drupal.md): A full FlowDrop backend shipped as a Drupal module — node definitions, workflow storage, execution, and triggers. - [Example server (Express)](https://flowdrop.mintlify.app/server-implementations/example-server-express.md): A reference Express server implementing the full FlowDrop REST API — the recommended backend to develop a client against. - [Overview](https://flowdrop.mintlify.app/server-implementations/overview.md): Backends that speak the FlowDrop API — ready-made servers you can run instead of building your own. - [Common issues & FAQ](https://flowdrop.mintlify.app/troubleshooting/common-issues.md): Solutions to frequently encountered problems when integrating FlowDrop. - [Embedding the editor](https://flowdrop.mintlify.app/tutorial/01-embedding-the-editor.md): Mount the FlowDrop visual workflow editor in any web page. - [Configuring endpoints](https://flowdrop.mintlify.app/tutorial/02-configuring-endpoints.md): Tell FlowDrop where your backend API lives so it can load nodes, save workflows, and more. - [Your first node](https://flowdrop.mintlify.app/tutorial/03-your-first-node.md): Define a node type and see it appear in the editor sidebar. - [Multiple nodes & categories](https://flowdrop.mintlify.app/tutorial/04-multiple-nodes-and-categories.md): Build a fully-functional editor with multiple node types and categories. - [Saving workflows](https://flowdrop.mintlify.app/tutorial/05-saving-workflows.md): Persist workflow data with save callbacks and understand the workflow data model. ## OpenAPI Specs - [openapi](https://flowdrop.mintlify.app/api-reference/openapi.yaml)