Langflow Projects API
Create, list, read, update, delete, upload, and download Langflow projects. Projects are containers that group flows and provide MCP server installation context.
Create, list, read, update, delete, upload, and download Langflow projects. Projects are containers that group flows and provide MCP server installation context.
components:
schemas:
AccessTypeEnum:
enum:
- PRIVATE
- PUBLIC
title: AccessTypeEnum
type: string
AuthSettings:
description: Model representing authentication settings for MCP.
properties:
auth_type:
default: none
enum:
- none
- apikey
- oauth
title: Auth Type
type: string
oauth_auth_url:
anyOf:
- type: string
- type: 'null'
title: Oauth Auth Url
oauth_callback_path:
anyOf:
- type: string
- type: 'null'
title: Oauth Callback Path
oauth_callback_url:
anyOf:
- type: string
- type: 'null'
title: Oauth Callback Url
oauth_client_id:
anyOf:
- type: string
- type: 'null'
title: Oauth Client Id
oauth_client_secret:
anyOf:
- format: password
type: string
writeOnly: true
- type: 'null'
title: Oauth Client Secret
oauth_host:
anyOf:
- type: string
- type: 'null'
title: Oauth Host
oauth_mcp_scope:
anyOf:
- type: string
- type: 'null'
title: Oauth Mcp Scope
oauth_port:
anyOf:
- type: string
- type: 'null'
title: Oauth Port
oauth_provider_scope:
anyOf:
- type: string
- type: 'null'
title: Oauth Provider Scope
oauth_server_url:
anyOf:
- type: string
- type: 'null'
title: Oauth Server Url
oauth_token_url:
anyOf:
- type: string
- type: 'null'
title: Oauth Token Url
title: AuthSettings
type: object
Body_build_flow_api_v1_build__flow_id__flow_post:
properties:
data:
anyOf:
- $ref: '#/components/schemas/FlowDataRequest'
- type: 'null'
files:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Files
inputs:
anyOf:
- $ref: '#/components/schemas/InputValueRequest'
- type: 'null'
title: Body_build_flow_api_v1_build__flow_id__flow_post
type: object
Body_build_public_tmp_api_v1_build_public_tmp__flow_id__flow_post:
properties:
files:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Files
inputs:
anyOf:
- $ref: '#/components/schemas/InputValueRequest'
- type: 'null'
title: Body_build_public_tmp_api_v1_build_public_tmp__flow_id__flow_post
type: object
Body_experimental_run_flow_api_v1_run_advanced__flow_id_or_name__post:
properties:
inputs:
anyOf:
- items:
$ref: '#/components/schemas/InputValueRequest'
type: array
- type: 'null'
title: Inputs
outputs:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Outputs
session_id:
anyOf:
- type: string
- type: 'null'
title: Session Id
stream:
default: false
title: Stream
type: boolean
tweaks:
anyOf:
- $ref: '#/components/schemas/Tweaks'
- type: 'null'
title: Body_experimental_run_flow_api_v1_run_advanced__flow_id_or_name__post
type: object
Body_simplified_run_flow_api_v1_run__flow_id_or_name__post:
properties:
context:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Context
input_request:
anyOf:
- $ref: '#/components/schemas/SimplifiedAPIRequest'
- type: 'null'
title: Body_simplified_run_flow_api_v1_run__flow_id_or_name__post
type: object
Body_upload_file_api_v1_files_upload__flow_id__post:
properties:
file:
contentMediaType: application/octet-stream
title: File
type: string
required:
- file
title: Body_upload_file_api_v1_files_upload__flow_id__post
type: object
Body_upload_file_api_v1_flows_upload__post:
properties:
file:
anyOf:
- contentMediaType: application/octet-stream
type: string
- type: 'null'
title: File
title: Body_upload_file_api_v1_flows_upload__post
type: object
Body_upload_file_api_v1_projects_upload__post:
properties:
file:
anyOf:
- contentMediaType: application/octet-stream
type: string
- type: 'null'
title: File
title: Body_upload_file_api_v1_projects_upload__post
type: object
Body_upload_user_file_api_v2_files__post:
properties:
file:
contentMediaType: application/octet-stream
title: File
type: string
required:
- file
title: Body_upload_user_file_api_v2_files__post
type: object
Body_upload_user_file_api_v2_files_post:
properties:
file:
contentMediaType: application/octet-stream
title: File
type: string
required:
- file
title: Body_upload_user_file_api_v2_files_post
type: object
CancelFlowResponse:
description: Response model for flow build cancellation.
properties:
message:
title: Message
type: string
success:
title: Success
type: boolean
required:
- success
- message
title: CancelFlowResponse
type: object
ChatOutputResponse:
description: Chat output response schema.
properties:
component_id:
anyOf:
- type: string
- type: 'null'
title: Component Id
files:
default: []
items:
$ref: '#/components/schemas/lfx__utils__schemas__File'
title: Files
type: array
message:
anyOf:
- type: string
- items:
anyOf:
- type: string
- additionalProperties: true
type: object
type: array
title: Message
sender:
anyOf:
- type: string
- type: 'null'
default: Machine
title: Sender
sender_name:
anyOf:
- type: string
- type: 'null'
default: AI
title: Sender Name
session_id:
anyOf:
- type: string
- type: 'null'
title: Session Id
stream_url:
anyOf:
- type: string
- type: 'null'
title: Stream Url
type:
title: Type
type: string
required:
- message
- type
title: ChatOutputResponse
type: object
CodeContent:
additionalProperties: true
type: object
ComponentOutput:
description: Component output schema.
properties:
content:
anyOf:
- {}
- type: 'null'
title: Content
metadata:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Metadata
status:
$ref: '#/$defs/JobStatus'
type:
description: Type of the component output (e.g., 'message', 'data', 'tool', 'text')
title: Type
type: string
required:
- type
- status
title: ComponentOutput
type: object
ComposerUrlResponse:
description: Response model for MCP Composer connection details.
properties:
error_message:
anyOf:
- type: string
- type: 'null'
title: Error Message
legacy_sse_url:
anyOf:
- type: string
- type: 'null'
title: Legacy Sse Url
project_id:
title: Project Id
type: string
streamable_http_url:
anyOf:
- type: string
- type: 'null'
title: Streamable Http Url
uses_composer:
title: Uses Composer
type: boolean
required:
- project_id
- uses_composer
title: ComposerUrlResponse
type: object
ConfigResponse:
description: 'Full configuration response for authenticated users.
The ''type'' field is a discriminator to distinguish from PublicConfigResponse.'
properties:
allow_custom_components:
title: Allow Custom Components
type: boolean
auto_saving:
title: Auto Saving
type: boolean
auto_saving_interval:
title: Auto Saving Interval
type: integer
default_folder_name:
title: Default Folder Name
type: string
event_delivery:
enum:
- polling
- streaming
- direct
title: Event Delivery
type: string
feature_flags:
$ref: '#/components/schemas/FeatureFlags'
frontend_timeout:
title: Frontend Timeout
type: integer
health_check_max_retries:
title: Health Check Max Retries
type: integer
hide_getting_started_progress:
title: Hide Getting Started Progress
type: boolean
max_file_size_upload:
title: Max File Size Upload
type: integer
mcp_base_url:
title: Mcp Base Url
type: string
public_flow_cleanup_interval:
title: Public Flow Cleanup Interval
type: integer
public_flow_expiration:
title: Public Flow Expiration
type: integer
serialization_max_items_length:
title: Serialization Max Items Length
type: integer
serialization_max_text_length:
title: Serialization Max Text Length
type: integer
type:
const: full
default: full
title: Type
type: string
voice_mode_available:
title: Voice Mode Available
type: boolean
webhook_auth_enable:
title: Webhook Auth Enable
type: boolean
webhook_polling_interval:
title: Webhook Polling Interval
type: integer
required:
- feature_flags
- max_file_size_upload
- event_delivery
- voice_mode_available
- frontend_timeout
- mcp_base_url
- serialization_max_items_length
- serialization_max_text_length
- auto_saving
- auto_saving_interval
- health_check_max_retries
- webhook_polling_interval
- public_flow_cleanup_interval
- public_flow_expiration
- webhook_auth_enable
- default_folder_name
- hide_getting_started_progress
- allow_custom_components
title: ConfigResponse
type: object
ContentBlock:
description: A block of content that can contain different types of content.
properties:
allow_markdown:
default: true
title: Allow Markdown
type: boolean
contents:
items:
additionalProperties: true
type: object
title: Contents
type: array
media_url:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Media Url
title:
title: Title
type: string
required:
- title
- contents
title: ContentBlock
type: object
ErrorContent:
additionalProperties: true
type: object
ErrorDetail:
description: Error detail schema.
properties:
code:
anyOf:
- type: string
- type: 'null'
title: Code
details:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Details
error:
title: Error
type: string
required:
- error
title: ErrorDetail
type: object
EventDeliveryType:
enum:
- streaming
- direct
- polling
title: EventDeliveryType
type: string
FeatureFlags:
additionalProperties: false
properties:
mvp_components:
default: false
title: Mvp Components
type: boolean
wxo_deployments:
default: false
title: Wxo Deployments
type: boolean
title: FeatureFlags
type: object
FlowCreate:
properties:
access_type:
$ref: '#/components/schemas/AccessTypeEnum'
default: PRIVATE
action_description:
anyOf:
- type: string
- type: 'null'
description: The description of the action associated with the flow
title: Action Description
action_name:
anyOf:
- type: string
- type: 'null'
description: The name of the action associated with the flow
title: Action Name
data:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Data
description:
anyOf:
- type: string
- type: 'null'
title: Description
endpoint_name:
anyOf:
- type: string
- type: 'null'
title: Endpoint Name
folder_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Folder Id
fs_path:
anyOf:
- type: string
- type: 'null'
title: Fs Path
gradient:
anyOf:
- type: string
- type: 'null'
title: Gradient
icon:
anyOf:
- type: string
- type: 'null'
title: Icon
icon_bg_color:
anyOf:
- type: string
- type: 'null'
title: Icon Bg Color
id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Id
is_component:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Component
locked:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Locked
mcp_enabled:
anyOf:
- type: boolean
- type: 'null'
default: false
description: Can be exposed in the MCP server
title: Mcp Enabled
name:
title: Name
type: string
tags:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Tags
updated_at:
anyOf:
- format: date-time
type: string
- type: 'null'
title: Updated At
user_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: User Id
webhook:
anyOf:
- type: boolean
- type: 'null'
default: false
description: Can be used on the webhook endpoint
title: Webhook
required:
- name
title: FlowCreate
type: object
FlowDataRequest:
properties:
edges:
items:
additionalProperties: true
type: object
title: Edges
type: array
nodes:
items:
additionalProperties: true
type: object
title: Nodes
type: array
viewport:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Viewport
required:
- nodes
- edges
title: FlowDataRequest
type: object
FlowEventCreate:
properties:
summary:
default: ''
maxLength: 500
title: Summary
type: string
type:
enum:
- component_added
- component_removed
- component_configured
- connection_added
- connection_removed
- flow_updated
- flow_settled
title: Type
type: string
required:
- type
title: FlowEventCreate
type: object
FlowEventResponse:
properties:
summary:
title: Summary
type: string
timestamp:
title: Timestamp
type: number
type:
title: Type
type: string
required:
- type
- timestamp
- summary
title: FlowEventResponse
type: object
FlowEventsResponse:
properties:
events:
items:
$ref: '#/components/schemas/FlowEventResponse'
title: Events
type: array
settled:
title: Settled
type: boolean
required:
- events
- settled
title: FlowEventsResponse
type: object
FlowHeader:
description: Model representing a header for a flow - Without the data.
properties:
access_type:
anyOf:
- $ref: '#/components/schemas/AccessTypeEnum'
- type: 'null'
description: The access type of the flow
action_description:
anyOf:
- type: string
- type: 'null'
description: The description of the action associated with the flow
title: Action Description
action_name:
anyOf:
- type: string
- type: 'null'
description: The name of the action associated with the flow
title: Action Name
data:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
description: The data of the component, if is_component is True
title: Data
description:
anyOf:
- type: string
- type: 'null'
description: A description of the flow
title: Description
endpoint_name:
anyOf:
- type: string
- type: 'null'
description: The name of the endpoint associated with this flow
title: Endpoint Name
folder_id:
anyOf:
- format: uuid
type: string
- type: 'null'
description: The ID of the folder containing the flow. None if not associated with a folder
title: Folder Id
id:
description: Unique identifier for the flow
format: uuid
title: Id
type: string
is_component:
anyOf:
- type: boolean
- type: 'null'
description: Flag indicating whether the flow is a component
title: Is Component
mcp_enabled:
anyOf:
- type: boolean
- type: 'null'
description: Flag indicating whether the flow is exposed in the MCP server
title: Mcp Enabled
name:
description: The name of the flow
title: Name
type: string
tags:
anyOf:
- items:
type: string
type: array
- type: 'null'
description: The tags of the flow
title: Tags
required:
- id
- name
title: FlowHeader
type: object
FlowListCreate:
properties:
flows:
items:
$ref: '#/components/schemas/FlowCreate'
title: Flows
type: array
required:
- flows
title: FlowListCreate
type: object
FlowRead:
properties:
access_type:
$ref: '#/components/schemas/AccessTypeEnum'
default: PRIVATE
action_description:
anyOf:
- type: string
- type: 'null'
description: The description of the action associated with the flow
title: Action Description
action_name:
anyOf:
- type: string
- type: 'null'
description: The name of the action associated with the flow
title: Action Name
data:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Data
description:
anyOf:
- type: string
- type: 'null'
title: Description
endpoint_name:
anyOf:
- type: string
- type: 'null'
title: Endpoint Name
folder_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Folder Id
gradient:
anyOf:
- type: string
- type: 'null'
title: Gradient
icon:
anyOf:
- type: string
- type: 'null'
title: Icon
icon_bg_color:
anyOf:
- type: string
- type: 'null'
title: Icon Bg Color
id:
format: uuid
title: Id
type: string
is_component:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Is Component
locked:
anyOf:
- type: boolean
- type: 'null'
default: false
title: Locked
mcp_enabled:
anyOf:
- type: boolean
- type: 'null'
default: false
description: Can be exposed in the MCP server
title: Mcp Enabled
name:
title: Name
type: string
tags:
anyOf:
- items:
type: string
type: array
- type: 'null'
description: The tags of the flow
title: Tags
updated_at:
anyOf:
- format: date-time
type: string
- type: 'null'
title: Updated At
user_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: User Id
webhook:
anyOf:
- type: boolean
- type: 'null'
default: false
description: Can be used on the webhook endpoint
title: Webhook
required:
- name
- id
- user_id
- folder_id
title: FlowRead
type: object
FlowUpdate:
properties:
access_type:
anyOf:
- $ref: '#/components/schemas/AccessTypeEnum'
- type: 'null'
action_description:
anyOf:
- type: string
- type: 'null'
title: Action Description
action_name:
anyOf:
- type: string
- type: 'null'
title: Action Name
data:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Data
description:
anyOf:
- type: string
- type: 'null'
title: Description
endpoint_name:
anyOf:
- type: string
- type: 'null'
title: Endpoint Name
folder_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Folder Id
fs_path:
anyOf:
- type: string
- type: 'null'
title: Fs Path
locked:
anyOf:
- type: boolean
- type: 'null'
title: Locked
mcp_enabled:
anyOf:
- type: boolean
- type: 'null'
title: Mcp Enabled
name:
anyOf:
- type: string
- type: 'null'
title: Name
title: FlowUpdate
type: object
FolderCreate:
properties:
auth_settings:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
description: Authentication settings for the folder/project
title: Auth Settings
components_list:
anyOf:
- items:
format: uuid
type: string
type: array
- type: 'null'
title: Components List
description:
anyOf:
- type: string
- type: 'null'
title: Description
flows_list:
anyOf:
- items:
format: uuid
type: string
type: array
- type: 'null'
title: Flows List
name:
title: Name
type: string
required:
- name
title: FolderCreate
type: object
FolderRead:
properties:
auth_settings:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
description: Authentication settings for the folder/project
title: Auth Settings
description:
anyOf:
- type: string
- type: 'null'
title: Description
id:
format: uuid
title: Id
type: string
name:
title: Name
type: string
parent_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Parent Id
required:
- name
- id
- parent_id
title: FolderRead
type: object
FolderReadWithFlows:
properties:
auth_settings:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
description: Authentication settings for the folder/project
title: Auth Settings
description:
anyOf:
- type: string
- type: 'null'
title: Description
flows:
default: []
items:
$ref: '#/components/schemas/FlowRead'
title: Flows
type: array
id:
format: uuid
title: Id
type: string
name:
title: Name
type: string
parent_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Parent Id
required:
- name
- id
- parent_id
title: FolderReadWithFlows
type: object
FolderUpdate:
properties:
auth_settings:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Auth Settings
components:
items:
format: uuid
type: string
title: Components
type: array
description:
anyOf:
- type: string
- type: 'null'
title: Description
flows:
items:
format: uuid
type: string
title: Flows
type: array
name:
anyOf:
- type: string
- type: 'null'
title: Name
parent_id:
anyOf:
- format: uuid
type: string
- type: 'null'
title: Parent Id
title: FolderUpdate
type: object
FolderWithPaginatedFlows:
properties:
flows:
$ref: '#/components/schemas/Page_FlowRead_'
folder:
$ref: '#/components/schemas/FolderRead'
required:
- folder
- flows
title: FolderWithPaginatedFlows
type: object
GraphData:
properties:
edges:
items:
additionalProperties: true
type: object
title: Edges
type: array
nodes:
items:
additionalProperties: true
type: object
title: Nodes
type: array
viewport:
anyOf:
- $ref: '#/components/schemas/ViewPort'
- type: 'null'
required:
- nodes
- edges
title: GraphData
type: object
GraphDumpResponse:
properties:
data:
$ref: '#/components/schemas/GraphData'
description:
anyOf:
- type: string
- type: 'null'
title: Description
endpoint_name:
anyOf:
- type: string
- type: 'null'
title: Endpoint Name
is_component:
anyOf:
- type: boolean
- type: 'null'
title: Is Component
name:
anyOf:
- type: string
- type: 'null'
title: Name
required:
- data
title: GraphDumpResponse
type: object
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
title: Detail
type: array
title: HTTPValidationError
type: object
HealthResponse:
properties:
chat:
default: error check the server logs
title: Chat
type: string
db:
default: error check the server logs
title: Db
type: string
status:
default: nok
title: Status
type: string
title: HealthResponse
type: object
InputValueRequest:
additionalProperties: false
examples:
- components:
- components_id
- Component Name
input_value: input_value
session: session_id
- components:
- Component Name
input_value: input_value
- input_value: input_value
- components:
- Component Name
input_value: input_value
session: session_id
- input_value: input_value
session: session_id
- input_value: input_value
type: chat
- input_value: '{"key": "value"}'
type: json
properties:
client_request_time:
anyOf:
- type: integer
- type: 'null'
description: Client-side timestamp in milliseconds when the request was initiated. Used to calculate accurate end-to-end
duration.
title: Client Request Time
components:
anyOf:
- items:
type: string
type: array
- type: 'null'
default: []
title: Components
input_value:
anyOf:
- type: string
- type: 'null'
title: Input Value
session:
anyOf:
- type: string
- type: 'null'
title: Session
type:
anyOf:
- enum:
- chat
- text
- any
type: string
- type: 'null'
default: any
description: Defines on which components the input value should be applied. 'any' applies to all input components.
title: Type
title: InputValueRequest
type: object
JSONContent:
additionalProperties: true
type: object
JobStatus:
description: Job execution status.
enum:
- queued
- in_progress
- completed
- failed
- cancelled
- timed_out
title: JobStatus
type: string
MCPInstallRequest:
properties:
client:
title: Client
type: string
transport:
anyOf:
- enum:
- sse
- streamablehttp
type: string
- type: 'null'
title: Transport
required:
- client
title: MCPInstallRequest
type: object
MCPProjectUpdateRequest:
description: Request model for updating MCP project settings including auth.
properties:
auth_settings:
anyOf:
- $ref: '#/components/schemas/AuthSettings'
- type: 'null'
settings:
items:
$ref: '#/components/schemas/MCPSettings'
title: Settings
type: array
required:
- settings
title: MCPProjectUpdateRequest
type: object
MCPServerConfig:
# --- truncated at 32 KB (174 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/langflow/refs/heads/main/openapi/langflow-openapi.yml