Skip to main content

Langflow (1.12.0)

Download OpenAPI specification:Download

a2a

List A2A Agents

List the caller's own A2A-published agent flows, each with its agent-card URL.

Authenticated and owner-scoped, mirroring the MCP-projects catalog: a public cross-user directory would strip the per-flow card's unguessable-id obscurity and expose other users' agents, so this enumerates only the calling user's agents. Each cardUrl is the public discovery entry point an orchestrator fetches per agent.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
[
  • { }
]

Get Agent Card

Serve the spec-valid A2A agent card for an agent-typed, a2a_enabled flow.

Public by design: the A2A public agent card is unauthenticated by spec, so gating it behind login would break standard discovery. Returns 404 when the flag is off, the flow does not exist, the flow is not flow_type=agent, or a2a_enabled is falsy.

path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{ }

A2A Jsonrpc

Serve the A2A JSON-RPC surface (message/send, message/stream, tasks/get, tasks/resubscribe) for an agent flow.

Gated like the card route; apikey-folder flows additionally require a valid owner key (401). The flow runs as its owner. Returns the SDK's JSON-RPC response (HTTP 200 even for JSON-RPC-level errors). No DbSession dependency here: holding a session open across the run would fight the v2 surface's lock-avoidance design, and the gate/run resolve from flow_id via short self-managed sessions.

path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
null

Base

Get All

Retrieve all component types with compression for better performance.

Returns a compressed response containing all available component types, with display_names translated to the locale indicated by Accept-Language.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
include_blocked
boolean (Include Blocked)
Default: false

Responses

Response samples

Content type
application/json
null

Get Config

Retrieve application configuration settings.

Returns different configuration based on authentication status:

  • Authenticated users: Full ConfigResponse with all settings
  • Unauthenticated users: PublicConfigResponse with limited, safe-to-expose settings

Args: user: The authenticated user, or None if unauthenticated.

Returns: ConfigResponse | PublicConfigResponse: Configuration settings appropriate for the user's auth status.

Raises: HTTPException: If an error occurs while retrieving the configuration.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
Example
{
  • "a2a_enabled": false,
  • "agentic_experience": true,
  • "allow_custom_components": true,
  • "assistant_max_message_length": 2000,
  • "authz_enabled": false,
  • "auto_saving": true,
  • "auto_saving_interval": 0,
  • "blocked_component_types": [ ],
  • "catalog_governance_enabled": false,
  • "custom_component_admin_only": true,
  • "default_folder_name": "string",
  • "embedded_mode": true,
  • "enable_extension_reload": true,
  • "event_delivery": "polling",
  • "feature_flags": {
    },
  • "frontend_timeout": 0,
  • "health_check_max_retries": 0,
  • "hide_getting_started_progress": true,
  • "hide_logout_button": true,
  • "hide_new_flow_button": true,
  • "hide_new_project_button": true,
  • "hide_starter_projects": true,
  • "local_vector_store_available": true,
  • "max_file_size_upload": 0,
  • "mcp_base_url": "string",
  • "mcp_servers_locked": true,
  • "public_flow_cleanup_interval": 0,
  • "public_flow_expiration": 0,
  • "serialization_max_items_length": 0,
  • "serialization_max_text_length": 0,
  • "substitute_outdated_component_code": true,
  • "type": "full",
  • "voice_mode_available": true,
  • "webhook_auth_enable": true,
  • "webhook_polling_interval": 0
}

Experimental Run Flow

Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability.

This endpoint supports running flows with caching to enhance performance and efficiency.

Parameters:

  • flow (Flow): The flow object to be executed, resolved via dependency injection.
  • inputs (List[InputValueRequest], optional): A list of inputs specifying the input values and components for the flow. Each input can target specific components and provide custom values.
  • outputs (List[str], optional): A list of output names to retrieve from the executed flow. If not provided, all outputs are returned.
  • tweaks (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution. The tweaks can be used to modify the flow's parameters and components. Tweaks can be overridden by the input values.
  • stream (bool, optional): Specifies whether the results should be streamed. Defaults to False.
  • session_id (Union[None, str], optional): An optional session ID to utilize existing session data for the flow execution.
  • api_key_user (User): The user associated with the current API key. Automatically resolved from the API key.

Returns:

A RunResponse object containing the selected outputs (or all if not specified) of the executed flow and the session ID. The structure of the response accommodates multiple inputs, providing a nested list of outputs for each input.

Raises:

HTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during flow execution.

Example usage:

POST /run/flow_id
x-api-key: YOUR_API_KEY
Payload:
{
    "inputs": [
        {"components": ["component1"], "input_value": "value1"},
        {"components": ["component3"], "input_value": "value2"}
    ],
    "outputs": ["Component Name", "component_id"],
    "tweaks": {"parameter_name": "value", "Component Name": {"parameter_name": "value"}, "component_id": {"parameter_name": "value"}}
    "stream": false
}

This endpoint facilitates complex flow executions with customized inputs, outputs, and configurations, catering to diverse application requirements.

Authorizations:
API key queryAPI key header
path Parameters
flow_id_or_name
required
string (Flow Id Or Name)
Request Body schema: application/json
Array of Inputs (objects) or Inputs (null) (Inputs)
Array of Outputs (strings) or Outputs (null) (Outputs)
Session Id (string) or Session Id (null) (Session Id)
stream
boolean (Stream)
Default: false
Tweaks (object) or null

Responses

Request samples

Content type
application/json
{
  • "inputs": [
    ],
  • "outputs": [
    ],
  • "session_id": "string",
  • "stream": false,
  • "tweaks": {
    }
}

Response samples

Content type
application/json
{
  • "outputs": [ ],
  • "session_id": "string"
}

Simplified Run Flow

Executes a specified flow by ID with support for streaming and telemetry (API key auth).

This endpoint executes a flow identified by ID or name, with options for streaming the response and tracking execution metrics. It handles both streaming and non-streaming execution modes. This endpoint uses API key authentication (Bearer token).

Args: background_tasks (BackgroundTasks): FastAPI background task manager flow (FlowRead | None): The flow to execute, loaded via dependency input_request (SimplifiedAPIRequest | None): Input parameters for the flow stream (bool): Whether to stream the response api_key_user (UserRead): Authenticated user from API key context (dict | None): Optional context to pass to the flow http_request (Request): The incoming HTTP request for extracting global variables

Returns: Union[StreamingResponse, RunResponse]: Either a streaming response for real-time results or a RunResponse with the complete execution results

Raises: HTTPException: For flow not found (404) or invalid input (400) APIException: For internal execution errors (500)

Notes: - Supports both streaming and non-streaming execution modes - Tracks execution time and success/failure via telemetry - Handles graceful client disconnection in streaming mode - Provides detailed error handling with appropriate HTTP status codes - Extracts global variables from HTTP headers with prefix X-LANGFLOW-GLOBAL-VAR-* - Merges extracted variables with the context parameter as "request_variables" - In streaming mode, uses EventManager to handle events: - "add_message": New messages during execution - "token": Individual tokens during streaming - "end": Final execution result - Authentication: Requires API key (Bearer token)

Authorizations:
API key queryAPI key header
path Parameters
flow_id_or_name
required
string (Flow Id Or Name)
query Parameters
stream
boolean (Stream)
Default: false
Request Body schema: application/json
Context (object) or Context (null) (Context)
SimplifiedAPIRequest (object) or null

Responses

Request samples

Content type
application/json
{
  • "context": { },
  • "input_request": {
    }
}

Response samples

Content type
application/json
null

Get Version

Responses

Response samples

Content type
application/json
null

Webhook Run Flow

Run a flow using a webhook request.

Args: auth: Resolved webhook user and flow, scoped to the authenticated caller. request: The incoming HTTP request.

Returns: A dictionary containing the status of the task.

Raises: HTTPException: If the flow is not found or if there is an error processing the request.

path Parameters
flow_id_or_name
required
string (Flow Id Or Name)

Responses

Response samples

Content type
application/json
{ }

Chat

Build Flow

Build and process a flow, returning a job ID for event polling.

This endpoint requires authentication through the CurrentActiveUser dependency. For public flows that don't require authentication, use the /build_public_tmp/flow_id/flow endpoint.

Args: flow_id: UUID of the flow to build background_tasks: Background tasks manager inputs: Optional input values for the flow data: Optional flow data files: Optional files to include stop_component_id: Optional ID of component to stop at start_component_id: Optional ID of component to start from log_builds: Whether to log the build process current_user: The authenticated user queue_service: Queue service for job management flow_name: Optional name for the flow event_delivery: Optional event delivery type - default is streaming

Returns: Dict with job_id that can be used to poll for build status

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)
query Parameters
Stop Component Id (string) or Stop Component Id (null) (Stop Component Id)
Start Component Id (string) or Start Component Id (null) (Start Component Id)
log_builds
boolean (Log Builds)
Default: true
Flow Name (string) or Flow Name (null) (Flow Name)
event_delivery
string (EventDeliveryType)
Default: "polling"
Enum: "streaming" "direct" "polling"
Request Body schema: application/json
FlowDataRequest (object) or null
Array of Files (strings) or Files (null) (Files)
InputValueRequest (object) or null

Responses

Request samples

Content type
application/json
{
  • "data": {
    },
  • "files": [
    ],
  • "inputs": {
    }
}

Response samples

Content type
application/json
null

Cancel Build

Cancel a specific build job.

Requires authentication and ownership verification to prevent a user from aborting another user's running build (DoS via job cancellation). Jobs with no registered owner (build_public_tmp) are accessible to any authenticated user, consistent with get_build_events.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
job_id
required
string (Job Id)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "success": true
}

Get Build Events

Get events for a specific build job.

Requires authentication and ownership verification. A job owner is registered when build_flow is called; if a registered owner does not match the requesting user the endpoint returns 404 to avoid leaking job existence. Jobs started via build_public_tmp have no registered owner and remain accessible to any authenticated user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
job_id
required
string (Job Id)
query Parameters
event_delivery
string (EventDeliveryType)
Default: "streaming"
Enum: "streaming" "direct" "polling"

Responses

Response samples

Content type
application/json
null

Build Public Tmp

Build a public flow without requiring authentication.

This endpoint is specifically for public flows that don't require authentication. It uses a client_id cookie to create a deterministic flow ID for tracking purposes.

Security Note:

  • The 'data' parameter is NOT accepted to prevent flow definition tampering
  • Public flows must execute the stored flow definition only
  • The flow definition is always loaded from the database
  • Caller-supplied 'inputs.session' is namespaced under the (client_id, flow_id) virtual flow ID so an unauthenticated caller cannot address a session that lives outside its own namespace (CVE-2026-33017)

The endpoint:

  1. Verifies the requested flow is marked as public in the database
  2. Creates a deterministic UUID based on client_id and flow_id
  3. Uses a stable anonymous principal to build the flow
  4. Always loads the flow definition from the database

Requirements:

  • The flow must be marked as PUBLIC in the database
  • The request must include a client_id cookie

Args: flow_id: UUID of the public flow to build background_tasks: Background tasks manager inputs: Optional input values for the flow files: Optional files to include stop_component_id: Optional ID of component to stop at start_component_id: Optional ID of component to start from log_builds: Whether to log the build process flow_name: Optional name for the flow request: FastAPI request object (needed for cookie access) queue_service: Queue service for job management authenticated_user: Optional authenticated user (resolved from cookie/token if present) event_delivery: Optional event delivery type - default is streaming

Returns: Dict with job_id that can be used to poll for build status

path Parameters
flow_id
required
string <uuid> (Flow Id)
query Parameters
Stop Component Id (string) or Stop Component Id (null) (Stop Component Id)
Start Component Id (string) or Start Component Id (null) (Start Component Id)
Log Builds (boolean) or Log Builds (null) (Log Builds)
Default: true
Flow Name (string) or Flow Name (null) (Flow Name)
event_delivery
string (EventDeliveryType)
Default: "polling"
Enum: "streaming" "direct" "polling"
Request Body schema: application/json
Array of Files (strings) or Files (null) (Files)
InputValueRequest (object) or null

Responses

Request samples

Content type
application/json
{
  • "files": [
    ],
  • "inputs": {
    }
}

Response samples

Content type
application/json
null

Cancel Build Public

Cancel a public flow build job.

This endpoint does not require authentication, matching the public build endpoint. It is used by the shareable playground to cancel builds.

path Parameters
job_id
required
string (Job Id)

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "success": true
}

Get Build Events Public

Get events for a public flow build job.

This endpoint does not require authentication, matching the public build endpoint. It is used by the shareable playground to consume build events.

path Parameters
job_id
required
string (Job Id)
query Parameters
event_delivery
string (EventDeliveryType)
Default: "streaming"
Enum: "streaming" "direct" "polling"

Responses

Response samples

Content type
application/json
null

Catalog Policy

Get Component Policy

Return the complete global component block set.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{
  • "blocked": [
    ],
  • "managed_externally": true
}

Replace Component Policy

Replace the complete global component block set.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
blocked
required
Array of strings (Blocked) <= 1000 items [ items [ 1 .. 255 ] characters ]

Complete set of blocked catalog keys for this resource kind.

Responses

Request samples

Content type
application/json
{
  • "blocked": [
    ]
}

Response samples

Content type
application/json
{
  • "blocked": [
    ],
  • "managed_externally": true
}

Get Template Policy

Return the complete global template block set.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{
  • "blocked": [
    ],
  • "managed_externally": true
}

Replace Template Policy

Replace the complete global template block set.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
blocked
required
Array of strings (Blocked) <= 1000 items [ items [ 1 .. 255 ] characters ]

Complete set of blocked catalog keys for this resource kind.

Responses

Request samples

Content type
application/json
{
  • "blocked": [
    ]
}

Response samples

Content type
application/json
{
  • "blocked": [
    ],
  • "managed_externally": true
}

Get Component Usage

Return how many flows use each component.

Counts are keyed by canonical registry identity — a flow node saved under a legacy alias is counted under the component it resolves to today, the same resolution catalog enforcement applies. Keys not present in the registry (custom or synthetic components) are counted under their exact stored key. Each flow is counted at most once per component. Counts may lag flow writes by up to USAGE_SCAN_CACHE_TTL_SECONDS.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{
  • "components": {
    },
  • "flows_scanned": 0
}

Get Component Usage Flows

Return the flows that would be affected by blocking one component key.

A flow matches when the queried key and any of the flow's stored keys resolve to a shared canonical identity — the same matching rule flow writes and runs enforce. Flows are sorted by name, then id, and truncated to limit; total always reports the full match count. Results may lag flow writes by up to USAGE_SCAN_CACHE_TTL_SECONDS.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
component
required
string (Component) [ 1 .. 255 ] characters

Component key to look up; aliases resolve like catalog enforcement.

limit
integer (Limit) [ 1 .. 500 ]
Default: 100

Responses

Response samples

Content type
application/json
{
  • "component": "string",
  • "flows": [
    ],
  • "total": 0
}

Extensions

Get Extension Events

Poll for extension lifecycle events the current user has triggered.

Events are scoped to the authenticated user via a server-derived keyspace (user:{user_id}); there is no client-controllable keyspace, so an authenticated user cannot read another user's flow-migration or bundle-reload events. A client-supplied keyspace query parameter is rejected with 422 so the contract is explicit -- previously the value was silently dropped, which masked client bugs that assumed it had effect.

svc.since() uses blocking sqlite3; run in a thread pool so the asyncio event loop is not held while waiting on disk I/O.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
since
number (Since)
Default: 0

UTC epoch timestamp; return events after this cursor

Responses

Response samples

Content type
application/json
{
  • "events": [
    ],
  • "settled": true
}

Reload Extension Bundle

Trigger an atomic-swap reload for a single Bundle.

Returns the typed :class:~lfx.extension.reload.ReloadResult body on success. Per the typed-error contract, structural failures (broken bundle, missing source path, name mismatch) surface as 422 Unprocessable Entity with the first typed error in the body so clients can surface fix hints inline; the full ReloadResult payload (with all errors and warnings) is returned via the FastAPI detail envelope. Concurrency-control collisions surface as 409 Conflict (reload-in-progress). Non-2xx is the wire contract for every error path -- the body still carries the typed error so the client renders the same fix-hint envelope.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
extension_id
required
string (Extension Id)
bundle_name
required
string (Bundle Name)

Responses

Response samples

Content type
application/json
{ }

Files

Delete File

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
file_name
required
string (File Name)
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
null

Download File

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
file_name
required
string (File Name)
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
null

Download Image

Download image from storage for browser rendering.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
file_name
required
string (File Name)
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
null

List Files

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
null

List Profile Pictures

List profile pictures from local filesystem.

Profile pictures are first looked up in config_dir/profile_pictures/, then fallback to the package's bundled profile_pictures directory.

Responses

Response samples

Content type
application/json
null

Download Profile Picture

Download profile picture from local filesystem.

Profile pictures are first looked up in config_dir/profile_pictures/, then fallback to the package's bundled profile_pictures directory.

path Parameters
folder_name
required
string (Folder Name)
file_name
required
string (File Name)

Responses

Response samples

Content type
application/json
null

Upload File

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)
Request Body schema: multipart/form-data
required
file
required
string <application/octet-stream> (File)

Responses

Response samples

Content type
application/json
{
  • "file_path": "string",
  • "flowId": "string"
}

Delete All Files

Delete all files for the current user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
null

List Files

List the files available to the current user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Upload User File

Upload a file for the current user and track it in the database.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
append
boolean (Append)
Default: false
ephemeral
boolean (Ephemeral)
Default: false
Request Body schema: multipart/form-data
required
file
required
string <application/octet-stream> (File)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "path": "string",
  • "provider": "string",
  • "size": 0
}

Delete All Files

Delete all files for the current user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
null

List Files

List the files available to the current user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Upload User File

Upload a file for the current user and track it in the database.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
append
boolean (Append)
Default: false
ephemeral
boolean (Ephemeral)
Default: false
Request Body schema: multipart/form-data
required
file
required
string <application/octet-stream> (File)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "path": "string",
  • "provider": "string",
  • "size": 0
}

Delete Files Batch

Delete multiple files by their IDs.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Array
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Response samples

Content type
application/json
null

Download Files Batch

Download multiple files as a zip file by their IDs.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Array
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Response samples

Content type
application/json
null

Delete File

Delete a file by its ID.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
file_id
required
string <uuid> (File Id)

Responses

Response samples

Content type
application/json
null

Download File

Download a file by its ID or return its content as a string/bytes.

Args: file_id: UUID of the file. current_user: Authenticated user. session: Database session. storage_service: File storage service. return_content: If True, return raw content (str) instead of StreamingResponse.

Returns: StreamingResponse for client downloads or str for internal use.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
file_id
required
string <uuid> (File Id)
query Parameters
return_content
boolean (Return Content)
Default: false

Responses

Response samples

Content type
application/json
null

Edit File Name

Edit the name of a file by its ID.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
file_id
required
string <uuid> (File Id)
query Parameters
name
required
string (Name)

Responses

Response samples

Content type
application/json
{
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "path": "string",
  • "provider": "string",
  • "size": 0
}

Flows

Delete Multiple Flows

Delete multiple flows by their IDs.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Array
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Response samples

Content type
application/json
null

Read Flows

Retrieve a list of flows with optional pagination, filtering, and header-only mode.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
remove_example_flows
boolean (Remove Example Flows)
Default: false
components_only
boolean (Components Only)
Default: false
get_all
boolean (Get All)
Default: true
Folder Id (string) or Folder Id (null) (Folder Id)
FlowType (string) or Flow Type (null) (Flow Type)
header_flows
boolean (Header Flows)
Default: false
page
integer (Page) >= 1
Default: 1
size
integer (Size) [ 1 .. 100 ]
Default: 50

Responses

Response samples

Content type
application/json
Example
[ ]

Create Flow

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
A2A Card Overrides (object) or A2A Card Overrides (null) (A2A Card Overrides)

User overrides for the generated A2A agent card (skill description, examples, tags)

A2A Enabled (boolean) or A2A Enabled (null) (A2A Enabled)
Default: false

Can be exposed as an A2A agent (only meaningful when flow_type=agent)

access_type
string (AccessTypeEnum)
Default: "PRIVATE"
Enum: "PRIVATE" "PUBLIC"
Action Description (string) or Action Description (null) (Action Description)

The description of the action associated with the flow

Action Name (string) or Action Name (null) (Action Name)

The name of the action associated with the flow

Data (object) or Data (null) (Data)
Description (string) or Description (null) (Description)
Endpoint Name (string) or Endpoint Name (null) (Endpoint Name)
flow_type
string (FlowType)
Default: "workflow"
Enum: "workflow" "agent"

Whether the flow is a plain workflow or an agent (publishable over A2A)

Folder Id (string) or Folder Id (null) (Folder Id)
Fs Path (string) or Fs Path (null) (Fs Path)
Gradient (string) or Gradient (null) (Gradient)
Icon (string) or Icon (null) (Icon)
Icon Bg Color (string) or Icon Bg Color (null) (Icon Bg Color)
Id (string) or Id (null) (Id)
Is Component (boolean) or Is Component (null) (Is Component)
Default: false
Locked (boolean) or Locked (null) (Locked)
Default: false
Mcp Enabled (boolean) or Mcp Enabled (null) (Mcp Enabled)
Default: false

Can be exposed in the MCP server

name
required
string (Name)
Array of Tags (strings) or Tags (null) (Tags)
Updated At (string) or Updated At (null) (Updated At)
User Id (string) or User Id (null) (User Id)
Webhook (boolean) or Webhook (null) (Webhook)
Default: false

Can be used on the webhook endpoint

Workspace Id (string) or Workspace Id (null) (Workspace Id)

Responses

Request samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "fs_path": "string",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Response samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "name_key": "string",
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Read Basic Examples

Retrieve a list of basic example flows.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
include_blocked
boolean (Include Blocked)
Default: false

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Flows

Create multiple new flows.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
required
Array of objects (Flows)
Array
A2A Card Overrides (object) or A2A Card Overrides (null) (A2A Card Overrides)

User overrides for the generated A2A agent card (skill description, examples, tags)

A2A Enabled (boolean) or A2A Enabled (null) (A2A Enabled)
Default: false

Can be exposed as an A2A agent (only meaningful when flow_type=agent)

access_type
string (AccessTypeEnum)
Default: "PRIVATE"
Enum: "PRIVATE" "PUBLIC"
Action Description (string) or Action Description (null) (Action Description)

The description of the action associated with the flow

Action Name (string) or Action Name (null) (Action Name)

The name of the action associated with the flow

Data (object) or Data (null) (Data)
Description (string) or Description (null) (Description)
Endpoint Name (string) or Endpoint Name (null) (Endpoint Name)
flow_type
string (FlowType)
Default: "workflow"
Enum: "workflow" "agent"

Whether the flow is a plain workflow or an agent (publishable over A2A)

Folder Id (string) or Folder Id (null) (Folder Id)
Fs Path (string) or Fs Path (null) (Fs Path)
Gradient (string) or Gradient (null) (Gradient)
Icon (string) or Icon (null) (Icon)
Icon Bg Color (string) or Icon Bg Color (null) (Icon Bg Color)
Id (string) or Id (null) (Id)
Is Component (boolean) or Is Component (null) (Is Component)
Default: false
Locked (boolean) or Locked (null) (Locked)
Default: false
Mcp Enabled (boolean) or Mcp Enabled (null) (Mcp Enabled)
Default: false

Can be exposed in the MCP server

name
required
string (Name)
Array of Tags (strings) or Tags (null) (Tags)
Updated At (string) or Updated At (null) (Updated At)
User Id (string) or User Id (null) (User Id)
Webhook (boolean) or Webhook (null) (Webhook)
Default: false

Can be used on the webhook endpoint

Workspace Id (string) or Workspace Id (null) (Workspace Id)

Responses

Request samples

Content type
application/json
{
  • "flows": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

Download Multiple File

Download all flows as a zip file.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Array
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Response samples

Content type
application/json
null

Read Public Flow

Read a public flow without requiring authorization (public means public).

Because this endpoint is unauthenticated, secret field values (every template field marked password) are stripped before returning so a PUBLIC flow does not leak the owner's stored API keys / credentials to anonymous callers.

The response also carries the anonymous capability set. A canonical PUBLIC share admits flows whose access_type is still PRIVATE and bounds them at its own permission level, so a direct-link client that re-derives access from the legacy flag disagrees with this decision in both directions.

path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "name_key": "string",
  • "public_access": {
    },
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Upload File

Upload flows from a JSON or ZIP file (upsert semantics for flows with stable IDs).

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
Folder Id (string) or Folder Id (null) (Folder Id)
Request Body schema: multipart/form-data
File (string) or File (null) (File)
Any of
string <application/octet-stream> (File)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete Flow

Delete a flow.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
null

Read Flow

Read a flow.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "name_key": "string",
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Update Flow

Update a flow.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)
Request Body schema: application/json
required
A2A Card Overrides (object) or A2A Card Overrides (null) (A2A Card Overrides)
A2A Enabled (boolean) or A2A Enabled (null) (A2A Enabled)
AccessTypeEnum (string) or null
Action Description (string) or Action Description (null) (Action Description)
Action Name (string) or Action Name (null) (Action Name)
Data (object) or Data (null) (Data)
Description (string) or Description (null) (Description)
Endpoint Name (string) or Endpoint Name (null) (Endpoint Name)
FlowType (string) or null
Folder Id (string) or Folder Id (null) (Folder Id)
Fs Path (string) or Fs Path (null) (Fs Path)
Locked (boolean) or Locked (null) (Locked)
Mcp Enabled (boolean) or Mcp Enabled (null) (Mcp Enabled)
Name (string) or Name (null) (Name)
Workspace Id (string) or Workspace Id (null) (Workspace Id)

Responses

Request samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": true,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "fs_path": "string",
  • "locked": true,
  • "mcp_enabled": true,
  • "name": "string",
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Response samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "name_key": "string",
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Upsert Flow

Create or update a flow with a specific ID (upsert).

Returns 201 for creation, 200 for update. Returns 404 if owned by another user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)
Request Body schema: application/json
required
A2A Card Overrides (object) or A2A Card Overrides (null) (A2A Card Overrides)

User overrides for the generated A2A agent card (skill description, examples, tags)

A2A Enabled (boolean) or A2A Enabled (null) (A2A Enabled)
Default: false

Can be exposed as an A2A agent (only meaningful when flow_type=agent)

access_type
string (AccessTypeEnum)
Default: "PRIVATE"
Enum: "PRIVATE" "PUBLIC"
Action Description (string) or Action Description (null) (Action Description)

The description of the action associated with the flow

Action Name (string) or Action Name (null) (Action Name)

The name of the action associated with the flow

Data (object) or Data (null) (Data)
Description (string) or Description (null) (Description)
Endpoint Name (string) or Endpoint Name (null) (Endpoint Name)
flow_type
string (FlowType)
Default: "workflow"
Enum: "workflow" "agent"

Whether the flow is a plain workflow or an agent (publishable over A2A)

Folder Id (string) or Folder Id (null) (Folder Id)
Fs Path (string) or Fs Path (null) (Fs Path)
Gradient (string) or Gradient (null) (Gradient)
Icon (string) or Icon (null) (Icon)
Icon Bg Color (string) or Icon Bg Color (null) (Icon Bg Color)
Id (string) or Id (null) (Id)
Is Component (boolean) or Is Component (null) (Is Component)
Default: false
Locked (boolean) or Locked (null) (Locked)
Default: false
Mcp Enabled (boolean) or Mcp Enabled (null) (Mcp Enabled)
Default: false

Can be exposed in the MCP server

name
required
string (Name)
Array of Tags (strings) or Tags (null) (Tags)
Updated At (string) or Updated At (null) (Updated At)
User Id (string) or User Id (null) (User Id)
Webhook (boolean) or Webhook (null) (Webhook)
Default: false

Can be used on the webhook endpoint

Workspace Id (string) or Workspace Id (null) (Workspace Id)

Responses

Request samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "fs_path": "string",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Response samples

Content type
application/json
{
  • "a2a_card_overrides": { },
  • "a2a_enabled": false,
  • "access_type": "PRIVATE",
  • "action_description": "string",
  • "action_name": "string",
  • "data": { },
  • "description": "string",
  • "endpoint_name": "string",
  • "flow_type": "workflow",
  • "folder_id": "7695bac3-9397-4ec2-9335-45a2a16f1901",
  • "gradient": "string",
  • "icon": "string",
  • "icon_bg_color": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_component": false,
  • "locked": false,
  • "mcp_enabled": false,
  • "name": "string",
  • "name_key": "string",
  • "tags": [
    ],
  • "updated_at": "2019-08-24T14:15:22Z",
  • "user_id": "a169451c-8525-4352-b8ca-070dd449a1a5",
  • "webhook": false,
  • "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9"
}

Get Note Translations

Return translated note node descriptions for the current locale.

Returns a mapping of node_id → translated markdown text. Only nodes with a matching translation key are included; nodes without translations are omitted so the caller can leave them unchanged.

A missing or inaccessible flow yields 404 (via AuthorizedReadFlow), consistent with GET /flows/{id}; the sole frontend caller (NoteNode) treats that as "no translations" and renders the original text.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

Get Starter Projects

Get a list of starter projects.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
include_blocked
boolean (Include Blocked)
Default: false

Responses

Response samples

Content type
application/json
[
  • {
    }
]

mcp_projects

List Project Tools

List project MCP tools.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)
query Parameters
mcp_enabled
boolean (Mcp Enabled)
Default: true

Responses

Response samples

Content type
application/json
null

Update Project Mcp Settings

Update the MCP settings of all flows in a project and project-level auth settings.

On MCP Composer failure, this endpoint should return with a 200 status code and an error message in the body of the response to display to the user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)
Request Body schema: application/json
required
AuthSettings (object) or null
required
Array of objects (Settings)

Responses

Request samples

Content type
application/json
{
  • "auth_settings": {
    },
  • "settings": [
    ]
}

Response samples

Content type
application/json
null

Get Project Composer Url

Get the MCP Composer URL for a specific project.

On failure, this endpoint should return with a 200 status code and an error message in the body of the response to display to the user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)

Responses

Response samples

Content type
application/json
{
  • "error_message": "string",
  • "legacy_sse_url": "string",
  • "project_id": "string",
  • "streamable_http_url": "string",
  • "uses_composer": true
}

Install Mcp Config

Install MCP server configuration for Cursor, Windsurf, or Claude.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)
Request Body schema: application/json
required
client
required
string (Client)
Transport (string) or Transport (null) (Transport)

Responses

Request samples

Content type
application/json
{
  • "client": "string",
  • "transport": "sse"
}

Response samples

Content type
application/json
null

Check Installed Mcp Servers

Check if MCP server configuration is installed for this project in Cursor, Windsurf, or Claude.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)

Responses

Response samples

Content type
application/json
null

Model Provider Policy

Read Model Provider Policy

Read the global provider policy. An empty approved list is unrestricted.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "managed_externally": true,
  • "registered_providers": [
    ]
}

Replace Model Provider Policy

Atomically replace the global provider policy and invalidate snapshots.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
approved_provider_ids
required
Array of strings (Approved Provider Ids) <= 1000 items [ items <= 255 characters ^[a-z0-9][a-z0-9._-]*$ ]

Responses

Request samples

Content type
application/json
{
  • "approved_provider_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "managed_externally": true,
  • "registered_providers": [
    ]
}

Replace Model Provider Policy

Atomically replace the global provider policy and invalidate snapshots.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
approved_provider_ids
required
Array of strings (Approved Provider Ids) <= 1000 items [ items <= 255 characters ^[a-z0-9][a-z0-9._-]*$ ]

Responses

Request samples

Content type
application/json
{
  • "approved_provider_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "managed_externally": true,
  • "registered_providers": [
    ]
}

Monitor

Delete Vertex Builds

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get Vertex Builds

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{
  • "vertex_builds": {
    }
}

Job Queue Metrics

Return a snapshot of job-queue observability metrics.

For the in-memory backend this exposes only backend and active_jobs. For the Redis backend the snapshot also includes bridge counts, consumer wrappers, cancel-dispatcher liveness, and the cancel-stats counters (published / marker_hit / dispatched_owned / dispatched_foreign / publish_errors / dispatcher_reconnects / polling_watchdog_kills / activity_touch_errors / activity_get_errors / activity_parse_errors / dispatcher_internal_errors). dispatcher_reconnects tracks explicit dispatcher-loop retries and redis-py transparent pubsub reconnect callbacks.

Restricted to superusers because the snapshot exposes process-wide tenant activity (live job counts, cancel rates) — useful for ops, sensitive in multi-tenant deployments.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{ }

Delete Messages

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Array
string <uuid>

Responses

Request samples

Content type
application/json
[
  • "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get Messages

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
Flow Id (string) or Flow Id (null) (Flow Id)
Session Id (string) or Session Id (null) (Session Id)
End User Id (string) or End User Id (null) (End User Id)
Sender (string) or Sender (null) (Sender)
Sender Name (string) or Sender Name (null) (Sender Name)
Order By (string) or Order By (null) (Order By)
Default: "timestamp"
order
string (Order)
Default: "ASC"
Limit (integer) or Limit (null) (Limit)
Offset (integer) or Offset (null) (Offset)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Session Id

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
old_session_id
required
string (Old Session Id)
query Parameters
new_session_id
required
string (New Session Id)

The new session ID to update to

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete Messages Session

Delete messages for a single session.

Only deletes messages from sessions belonging to flows owned by the current user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
session_id
required
string (Session Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Delete Messages Sessions

Bulk delete messages for multiple sessions at once.

Only deletes messages from sessions belonging to flows owned by the current user.

Args: session_ids: List of session IDs to delete (max 500) session: Database session current_user: Current authenticated user

Returns: Confirmation message with count of deleted sessions

Raises: HTTPException: 400 if session_ids list exceeds 500 items HTTPException: 500 if database operation fails

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
null

Get Message Sessions

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
Flow Id (string) or Flow Id (null) (Flow Id)

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get Shared Messages

Get messages for a shared/public flow, scoped to the authenticated user.

Uses a deterministic virtual flow_id derived from the user's ID and the original flow ID. Only messages stored under this virtual flow_id are returned.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
source_flow_id
required
string <uuid> (Source Flow Id)

The original public flow ID

Session Id (string) or Session Id (null) (Session Id)
Order By (string) or Order By (null) (Order By)
Default: "timestamp"
order
string (Order)
Default: "ASC"
Limit (integer) or Limit (null) (Limit)
Offset (integer) or Offset (null) (Offset)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Rename Shared Session

Rename a session on a shared/public flow, scoped to the authenticated user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
old_session_id
required
string (Old Session Id)
query Parameters
new_session_id
required
string (New Session Id)

The new session ID

source_flow_id
required
string <uuid> (Source Flow Id)

The original public flow ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete Shared Messages Session

Delete messages for a session on a shared/public flow, scoped to the authenticated user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
session_id
required
string (Session Id)
query Parameters
source_flow_id
required
string <uuid> (Source Flow Id)

The original public flow ID

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get Shared Message Sessions

Get session IDs for a shared/public flow, scoped to the authenticated user.

Uses a deterministic virtual flow_id derived from the user's ID and the original flow ID. Only messages stored under this virtual flow_id are returned.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
source_flow_id
required
string <uuid> (Source Flow Id)

The original public flow ID

Responses

Response samples

Content type
application/json
[
  • "string"
]

Update Shared Message

Update a message on a shared/public flow, scoped to the authenticated user.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
message_id
required
string <uuid> (Message Id)
query Parameters
source_flow_id
required
string <uuid> (Source Flow Id)

The original public flow ID

Request Body schema: application/json
required
Category (string) or Category (null) (Category)
Array of Content Blocks (objects) or Content Blocks (null) (Content Blocks)
Context Id (string) or Context Id (null) (Context Id)
Edit (boolean) or Edit (null) (Edit)
Error (boolean) or Error (null) (Error)
Array of Files (strings) or Files (null) (Files)
Properties (object) or null
Sender (string) or Sender (null) (Sender)
Sender Name (string) or Sender Name (null) (Sender Name)
Session Id (string) or Session Id (null) (Session Id)
Session Metadata (object) or Session Metadata (null) (Session Metadata)
Text (string) or Text (null) (Text)

Responses

Request samples

Content type
application/json
{
  • "category": "string",
  • "content_blocks": [
    ],
  • "context_id": "string",
  • "edit": true,
  • "error": true,
  • "files": [
    ],
  • "properties": {
    },
  • "sender": "string",
  • "sender_name": "string",
  • "session_id": "string",
  • "session_metadata": { },
  • "text": "string"
}

Response samples

Content type
application/json
{
  • "category": "message",
  • "content_blocks": [
    ],
  • "context_id": "string",
  • "edit": false,
  • "error": false,
  • "files": [
    ],
  • "flow_id": "0746f03b-16cc-49fb-9833-df3713d407d2",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "properties": {
    },
  • "run_id": "dded282c-8ebd-44cf-8ba5-9a234973d1ec",
  • "sender": "string",
  • "sender_name": "string",
  • "session_id": "string",
  • "session_metadata": { },
  • "text": "string",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Update Message

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
message_id
required
string <uuid> (Message Id)
Request Body schema: application/json
required
Category (string) or Category (null) (Category)
Array of Content Blocks (objects) or Content Blocks (null) (Content Blocks)
Context Id (string) or Context Id (null) (Context Id)
Edit (boolean) or Edit (null) (Edit)
Error (boolean) or Error (null) (Error)
Array of Files (strings) or Files (null) (Files)
Properties (object) or null
Sender (string) or Sender (null) (Sender)
Sender Name (string) or Sender Name (null) (Sender Name)
Session Id (string) or Session Id (null) (Session Id)
Session Metadata (object) or Session Metadata (null) (Session Metadata)
Text (string) or Text (null) (Text)

Responses

Request samples

Content type
application/json
{
  • "category": "string",
  • "content_blocks": [
    ],
  • "context_id": "string",
  • "edit": true,
  • "error": true,
  • "files": [
    ],
  • "properties": {
    },
  • "sender": "string",
  • "sender_name": "string",
  • "session_id": "string",
  • "session_metadata": { },
  • "text": "string"
}

Response samples

Content type
application/json
{
  • "category": "message",
  • "content_blocks": [
    ],
  • "context_id": "string",
  • "edit": false,
  • "error": false,
  • "files": [
    ],
  • "flow_id": "0746f03b-16cc-49fb-9833-df3713d407d2",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "properties": {
    },
  • "run_id": "dded282c-8ebd-44cf-8ba5-9a234973d1ec",
  • "sender": "string",
  • "sender_name": "string",
  • "session_id": "string",
  • "session_metadata": { },
  • "text": "string",
  • "timestamp": "2019-08-24T14:15:22Z"
}

Get Transactions

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
flow_id
required
string <uuid> (Flow Id)
Page (integer) or Page (null) (Page)
Size (integer) or Size (null) (Size)

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "page": 1,
  • "pages": 0,
  • "size": 1,
  • "total": 0
}

Traces

Delete Traces By Flow

Delete all traces for a flow.

Args: flow_id: The ID of the flow whose traces should be deleted. current_user: The authenticated user (required for authorization).

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
flow_id
required
string <uuid> (Flow Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get Traces

Get list of traces for a flow.

Args: current_user: Authenticated user (required for authorization) flow_id: Filter by flow ID session_id: Filter by session ID status: Filter by trace status query: Search query for trace name/id/session id start_time: Filter traces starting on/after this time (ISO) end_time: Filter traces starting on/before this time (ISO) page: Page number (1-based) size: Page size

Returns: List of traces

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
Flow Id (string) or Flow Id (null) (Flow Id)
Session Id (string) or Session Id (null) (Session Id)
SpanStatus (string) or Status (null) (Status)
Query (string) or Query (null) (Query)
Start Time (string) or Start Time (null) (Start Time)
End Time (string) or End Time (null) (End Time)
page
integer (Page) >= 0
Default: 1
size
integer (Size) [ 1 .. 200 ]
Default: 50

Responses

Response samples

Content type
application/json
{
  • "pages": 0,
  • "total": 0,
  • "traces": [
    ]
}

Delete Trace

Delete a trace and all its spans.

Args: trace_id: The ID of the trace to delete. current_user: The authenticated user (required for authorization).

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
trace_id
required
string <uuid> (Trace Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get Trace

Get a single trace with its hierarchical span tree.

Args: trace_id: The ID of the trace to retrieve. current_user: The authenticated user (required for authorization).

Returns: TraceRead containing the trace and its hierarchical span tree.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
trace_id
required
string <uuid> (Trace Id)

Responses

Response samples

Content type
application/json
{
  • "endTime": "2019-08-24T14:15:22Z",
  • "flowId": "ccd52024-9c9c-4751-993a-9d75a778bf9d",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "input": { },
  • "name": "string",
  • "output": { },
  • "sessionId": "string",
  • "spans": [
    ],
  • "startTime": "2019-08-24T14:15:22Z",
  • "status": "unset",
  • "totalLatencyMs": 0,
  • "totalTokens": 0
}

Policy Bundle

Read Policy Bundle

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "blocked_component_keys": [
    ],
  • "blocked_model_keys": [
    ],
  • "blocked_template_keys": [
    ],
  • "content_hash": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
  • "initialized": true,
  • "managed_externally": false,
  • "reason": "string",
  • "revision": 0,
  • "rollback_of_revision": 0,
  • "source": "string"
}

Replace Policy Bundle

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
approved_provider_ids
required
Array of strings (Approved Provider Ids) <= 1000 items [ items <= 255 characters ^[a-z0-9][a-z0-9._-]*$ ]
blocked_component_keys
required
Array of strings (Blocked Component Keys) <= 1000 items [ items [ 1 .. 255 ] characters ]
blocked_model_keys
Array of strings (Blocked Model Keys) <= 1000 items [ items [ 1 .. 255 ] characters ]
blocked_template_keys
required
Array of strings (Blocked Template Keys) <= 1000 items [ items [ 1 .. 255 ] characters ]
expected_revision
required
integer (Expected Revision) >= 1
Reason (string) or Reason (null) (Reason)

Responses

Request samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "blocked_component_keys": [
    ],
  • "blocked_model_keys": [
    ],
  • "blocked_template_keys": [
    ],
  • "expected_revision": 1,
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "blocked_component_keys": [
    ],
  • "blocked_model_keys": [
    ],
  • "blocked_template_keys": [
    ],
  • "content_hash": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
  • "initialized": true,
  • "managed_externally": false,
  • "reason": "string",
  • "revision": 0,
  • "rollback_of_revision": 0,
  • "source": "string"
}

Read Policy Bundle History

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
limit
integer (Limit) [ 1 .. 200 ]
Default: 50
Before Revision (integer) or Before Revision (null) (Before Revision)

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "next_before_revision": 0
}

Rollback Policy Bundle

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
revision
required
integer (Revision)
Request Body schema: application/json
required
expected_revision
required
integer (Expected Revision) >= 1
Reason (string) or Reason (null) (Reason)

Responses

Request samples

Content type
application/json
{
  • "expected_revision": 1,
  • "reason": "string"
}

Response samples

Content type
application/json
{
  • "approved_provider_ids": [
    ],
  • "blocked_component_keys": [
    ],
  • "blocked_model_keys": [
    ],
  • "blocked_template_keys": [
    ],
  • "content_hash": "string",
  • "created_at": "2019-08-24T14:15:22Z",
  • "created_by": "ee824cad-d7a6-4f48-87dc-e8461a9201c4",
  • "initialized": true,
  • "managed_externally": false,
  • "reason": "string",
  • "revision": 0,
  • "rollback_of_revision": 0,
  • "source": "string"
}

Projects

Read Projects

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Project

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
Auth Settings (object) or Auth Settings (null) (Auth Settings)

Authentication settings for the folder/project

Array of Components List (strings) or Components List (null) (Components List)
Description (string) or Description (null) (Description)
Array of Flows List (strings) or Flows List (null) (Flows List)
name
required
string (Name)

Responses

Request samples

Content type
application/json
{
  • "auth_settings": { },
  • "components_list": [
    ],
  • "description": "string",
  • "flows_list": [
    ],
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "auth_settings": { },
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "parent_id": "1c6ca187-e61f-4301-8dcb-0e9749e89eef"
}

Download File

Download all flows from project as a zip file.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)

Responses

Response samples

Content type
application/json
null

Upload File

Upload flows from a file.

Accepts either a JSON file with project metadata (folder_name, folder_description, flows) or a ZIP file containing individual flow JSON files (as produced by the download endpoint).

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: multipart/form-data
File (string) or File (null) (File)
Any of
string <application/octet-stream> (File)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Delete Project

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Read Project

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)
query Parameters
Page (integer) or Page (null) (Page)
Size (integer) or Size (null) (Size)
is_component
boolean (Is Component)
Default: false
is_flow
boolean (Is Flow)
Default: false
search
string (Search)
Default: ""

Responses

Response samples

Content type
application/json
Example
{
  • "flows": {
    },
  • "folder": {
    }
}

Update Project

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)
Request Body schema: application/json
required
Auth Settings (object) or Auth Settings (null) (Auth Settings)
components
Array of strings <uuid> (Components) [ items <uuid > ]
Description (string) or Description (null) (Description)
flows
Array of strings <uuid> (Flows) [ items <uuid > ]
Name (string) or Name (null) (Name)
Parent Id (string) or Parent Id (null) (Parent Id)

Responses

Request samples

Content type
application/json
{
  • "auth_settings": { },
  • "components": [
    ],
  • "description": "string",
  • "flows": [
    ],
  • "name": "string",
  • "parent_id": "1c6ca187-e61f-4301-8dcb-0e9749e89eef"
}

Response samples

Content type
application/json
{
  • "auth_settings": { },
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "parent_id": "1c6ca187-e61f-4301-8dcb-0e9749e89eef"
}

Upsert Project

Create or update a project with a specific ID (upsert).

Returns 201 for creation, 200 for update. Returns 404 if owned by another user (avoids leaking existence). A name collision fails loud as 409 on both the create and update paths (unlike POST, which auto-renames).

workspace_id is out of scope: FolderCreate cannot express it, so a synced project inherits NULL exactly like one created via POST. Workspace assignment is not part of the upsert contract.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
project_id
required
string <uuid> (Project Id)
Request Body schema: application/json
required
Auth Settings (object) or Auth Settings (null) (Auth Settings)

Authentication settings for the folder/project

Array of Components List (strings) or Components List (null) (Components List)
Description (string) or Description (null) (Description)
Array of Flows List (strings) or Flows List (null) (Flows List)
name
required
string (Name)

Responses

Request samples

Content type
application/json
{
  • "auth_settings": { },
  • "components_list": [
    ],
  • "description": "string",
  • "flows_list": [
    ],
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "auth_settings": { },
  • "description": "string",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "name": "string",
  • "parent_id": "1c6ca187-e61f-4301-8dcb-0e9749e89eef"
}

OpenAI Responses API

Create Response

Create a response using OpenAI Responses API format.

This endpoint accepts a flow_id in the model parameter and processes the input through the specified Langflow flow.

Args: request: OpenAI Responses API request with model (flow_id) and input background_tasks: FastAPI background task manager api_key_user: Authenticated user from API key http_request: The incoming HTTP request telemetry_service: Telemetry service for logging

Returns: OpenAI-compatible response or streaming response

Raises: HTTPException: For validation errors or flow execution issues

Authorizations:
API key queryAPI key header
Request Body schema: application/json
required
background
boolean (Background)
Default: false

Whether to process in background

Array of Include (strings) or Include (null) (Include)

Additional response data to include, e.g., ['tool_call.results']

input
required
string (Input)

The input text to process

model
required
string (Model)

The flow ID to execute (used instead of OpenAI model)

Previous Response Id (string) or Previous Response Id (null) (Previous Response Id)

ID of previous response to continue conversation

stream
boolean (Stream)
Default: false

Whether to stream the response

Array of Tools (any) or Tools (null) (Tools)

Tools are not supported yet

Responses

Request samples

Content type
application/json
{
  • "background": false,
  • "include": [
    ],
  • "input": "string",
  • "model": "string",
  • "previous_response_id": "string",
  • "stream": false,
  • "tools": [
    ]
}

Response samples

Content type
application/json
null

Users

Read All Users

Retrieve a list of users from the database with pagination.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
skip
integer (Skip)
Default: 0
limit
integer (Limit)
Default: 10
Search (string) or Search (null) (Search)

Responses

Response samples

Content type
application/json
{
  • "total_count": 0,
  • "users": [
    ]
}

Add User

Add a new user to the database.

This endpoint backs two flows that share the same route:

  • Public sign up (unauthenticated). Allowed only when public registration is enabled for the deployment, i.e. AUTO_LOGIN is off (multi-user mode) and ENABLE_SIGNUP is True.
  • Admin "add user" (authenticated active superuser). Always allowed, regardless of the sign up settings, so disabling public sign up does not break superuser-driven user creation.

User activation is controlled by the NEW_USER_IS_ACTIVE setting.

Request Body schema: application/json
required
Optins (object) or Optins (null) (Optins)
Default: {"dialog_dismissed":false,"discord_clicked":false,"github_starred":false}
password
required
string (Password)
username
required
string (Username)

Responses

Request samples

Content type
application/json
{
  • "optins": {
    },
  • "password": "string",
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "create_at": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_active": true,
  • "is_superuser": true,
  • "last_login_at": "2019-08-24T14:15:22Z",
  • "optins": { },
  • "profile_image": "string",
  • "store_api_key": "string",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "username": "string"
}

Read Current User

Retrieve the current user's data.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
{
  • "create_at": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_active": true,
  • "is_superuser": true,
  • "last_login_at": "2019-08-24T14:15:22Z",
  • "optins": { },
  • "profile_image": "string",
  • "store_api_key": "string",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "username": "string"
}

Delete User

Delete a user from the database.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
user_id
required
string <uuid> (User Id)

Responses

Response samples

Content type
application/json
{ }

Patch User

Update an existing user's data.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
user_id
required
string <uuid> (User Id)
Request Body schema: application/json
required
Is Active (boolean) or Is Active (null) (Is Active)
Is Superuser (boolean) or Is Superuser (null) (Is Superuser)
Last Login At (string) or Last Login At (null) (Last Login At)
Optins (object) or Optins (null) (Optins)
Password (string) or Password (null) (Password)
Profile Image (string) or Profile Image (null) (Profile Image)
Username (string) or Username (null) (Username)

Responses

Request samples

Content type
application/json
{
  • "is_active": true,
  • "is_superuser": true,
  • "last_login_at": "2019-08-24T14:15:22Z",
  • "optins": { },
  • "password": "string",
  • "profile_image": "string",
  • "username": "string"
}

Response samples

Content type
application/json
{
  • "create_at": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_active": true,
  • "is_superuser": true,
  • "last_login_at": "2019-08-24T14:15:22Z",
  • "optins": { },
  • "profile_image": "string",
  • "store_api_key": "string",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "username": "string"
}

Reset Password

Change the current user's password after verifying the existing password.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
user_id
required
string <uuid> (User Id)
Request Body schema: application/json
required
current_password
required
string (Current Password)
password
required
string (Password)

Responses

Request samples

Content type
application/json
{
  • "current_password": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "create_at": "2019-08-24T14:15:22Z",
  • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
  • "is_active": true,
  • "is_superuser": true,
  • "last_login_at": "2019-08-24T14:15:22Z",
  • "optins": { },
  • "profile_image": "string",
  • "store_api_key": "string",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "username": "string"
}

MCP

Get Servers

Get the list of available servers.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
Action Count (boolean) or Action Count (null) (Action Count)

Responses

Response samples

Content type
application/json
null

Delete Server

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
server_name
required
string (Server Name)

Responses

Response samples

Content type
application/json
null

Get Server Endpoint

Get a specific server.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
server_name
required
string (Server Name)

Responses

Response samples

Content type
application/json
null

Update Server Endpoint

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
server_name
required
string (Server Name)
Request Body schema: application/json
required
Array of Args (strings) or Args (null) (Args)
Command (string) or Command (null) (Command)
Env (object) or Env (null) (Env)
Headers (object) or Headers (null) (Headers)
Url (string) or Url (null) (Url)
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "args": [
    ],
  • "command": "string",
  • "env": {
    },
  • "headers": {
    },
  • "url": "string"
}

Response samples

Content type
application/json
null

Add Server

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
server_name
required
string (Server Name)
Request Body schema: application/json
required
Array of Args (strings) or Args (null) (Args)
Command (string) or Command (null) (Command)
Env (object) or Env (null) (Env)
Headers (object) or Headers (null) (Headers)
Url (string) or Url (null) (Url)
property name*
additional property
any

Responses

Request samples

Content type
application/json
{
  • "args": [
    ],
  • "command": "string",
  • "env": {
    },
  • "headers": {
    },
  • "url": "string"
}

Response samples

Content type
application/json
null

Workflow

Get Workflow Status

Get status of workflow job by job ID

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
Job Id (string) or Job Id (string) or Job Id (null) (Job Id)

Job ID to query

Responses

Response samples

Content type
{
  • "created_timestamp": "string",
  • "errors": [ ],
  • "flow_id": "string",
  • "globals": {
    },
  • "human_request": { },
  • "inputs": { },
  • "job_id": "string",
  • "object": "response",
  • "output": {
    },
  • "outputs": { },
  • "session_id": "string",
  • "status": "queued"
}

Execute Workflow (v2 sync or stream)

Request Body schema: application/json
required
Data (object) or Data (null) (Data)

Optional live-canvas override of the flow's nodes/edges; takes priority over the saved flow data.

Array of Files (strings) or Files (null) (Files)

Optional list of pre-uploaded file paths to attach to the run.

flow_id
required
string (Flow Id)

UUID of the flow to run.

object (Globals)

Request-level global variables made available to workflow components. Keys may use any printable string up to 256 chars; values are capped at 65536 chars. Body globals always win over the legacy X-LANGFLOW-GLOBAL-VAR-* headers. Honored in sync mode; ignored for stream/background modes.

Idempotency Key (string) or Idempotency Key (null) (Idempotency Key)

Optional client-supplied key that dedupes background submits. Two background runs with the same key return the same job_id instead of queuing duplicate work. Ignored for sync/stream modes.

input_value
string (Input Value)
Default: ""

Chat-style input value.

mode
string (WorkflowMode)
Default: "sync"
Enum: "sync" "stream" "background"

Execution mode. sync runs inline and returns the aggregated response; stream returns SSE; background queues a job.

Array of Output Ids (strings) or Output Ids (null) (Output Ids)

Component ids of the outputs you want as the answer (sync mode). When set, output.text resolves among only these, so naming one text output makes output.reason deterministic on multi-output flows. The full outputs map is still returned. Ids must be outputs of this flow or the request is rejected before the flow runs. Ignored for stream/background modes.

Session Id (string) or Session Id (null) (Session Id)

When set, message memory and chat history scope to this session.

Start Component Id (string) or Start Component Id (null) (Start Component Id)

Partial-run start component id.

Stop Component Id (string) or Stop Component Id (null) (Stop Component Id)

Partial-run stop component id.

stream_protocol
string (Stream Protocol)
Default: "langflow"

Wire protocol for streaming events. Defaults to langflow (raw EventManager payloads). agui emits AG-UI events. Unknown values return 422 with the available list. Ignored when mode=sync.

object (Tweaks)

Per-component parameter overrides keyed by component id.

Responses

Request samples

Content type
application/json
{
  • "flow_id": "67ccd2be-17f0-8190-81ff-3bb2cf6508e6",
  • "input_value": "Hello, how can you help me today?"
}

Response samples

Content type
Example
null

List pending human-input requests

Suspended HITL jobs for a flow plus their pending request, for the Traces overlay.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
flow_id
required
string <uuid> (Flow Id)

Flow ID to list pending HITL requests for

Responses

Response samples

Content type
application/json
[
  • { }
]

Stop Workflow

Stop a running workflow execution

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
Request Body schema: application/json
required
required
Job Id (string) or Job Id (string) (Job Id)
Any of
string (Job Id)

Responses

Request samples

Content type
application/json
{
  • "job_id": "string"
}

Response samples

Content type
application/json
{
  • "job_id": "string",
  • "message": "string"
}

Re-attach to a background run

Replay durable events for a background run from Last-Event-ID and tail until it ends.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
job_id
required
string (Job Id)

Responses

Response samples

Content type
application/json
null

Resume Workflow

Resume a suspended (human-in-the-loop) workflow with a decision.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
path Parameters
job_id
required
string (Job Id)
Request Body schema: application/json
required
Decision (object) or Decision (null) (Decision)
request_id
required
string (Request Id)

Responses

Request samples

Content type
application/json
{
  • "decision": { },
  • "request_id": "string"
}

Response samples

Content type
application/json
{
  • "job_id": "string",
  • "message": "string",
  • "status": "string"
}

Health Check

Health

Responses

Response samples

Content type
application/json
null

Health Check

Responses

Response samples

Content type
application/json
{
  • "chat": "error check the server logs",
  • "db": "error check the server logs",
  • "status": "nok"
}

Healthz

Responses

Response samples

Content type
application/json
{
  • "chat": "error check the server logs",
  • "db": "error check the server logs",
  • "status": "nok"
}

Log

Logs

Retrieve application logs with superuser authentication required.

SECURITY: Logs may contain sensitive information and require superuser authentication.

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header
query Parameters
lines_before
integer (Lines Before)
Default: 0

The number of logs before the timestamp or the last log

lines_after
integer (Lines After)
Default: 0

The number of logs after the timestamp

timestamp
integer (Timestamp)
Default: 0

The timestamp to start getting logs from

Responses

Response samples

Content type
application/json
null

Stream Logs

HTTP/2 Server-Sent-Event (SSE) endpoint for streaming logs.

Requires superuser authentication to prevent exposure of sensitive log data. It establishes a long-lived connection to the server and receives log messages in real-time. The client should use the header "Accept: text/event-stream".

Authorizations:
OAuth2PasswordBearerCookieAPI key queryAPI key header

Responses

Response samples

Content type
application/json
null
Search