mirror of
https://github.com/langflow-ai/langflow.git
synced 2026-07-23 21:21:20 +08:00
15250 lines
399 KiB
JSON
15250 lines
399 KiB
JSON
{
|
|
"components": {
|
|
"schemas": {
|
|
"AccessTypeEnum": {
|
|
"enum": [
|
|
"PRIVATE",
|
|
"PUBLIC"
|
|
],
|
|
"title": "AccessTypeEnum",
|
|
"type": "string"
|
|
},
|
|
"AssistantRequest": {
|
|
"description": "Request model for assistant interactions.",
|
|
"properties": {
|
|
"component_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Component Id"
|
|
},
|
|
"field_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Field Name"
|
|
},
|
|
"flow_id": {
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
},
|
|
"input_value": {
|
|
"anyOf": [
|
|
{
|
|
"maxLength": 2000,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Input Value"
|
|
},
|
|
"max_retries": {
|
|
"anyOf": [
|
|
{
|
|
"maximum": 5.0,
|
|
"minimum": 1.0,
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Max Retries"
|
|
},
|
|
"model_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Model Name"
|
|
},
|
|
"provider": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Provider"
|
|
},
|
|
"session_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
}
|
|
},
|
|
"required": [
|
|
"flow_id"
|
|
],
|
|
"title": "AssistantRequest",
|
|
"type": "object"
|
|
},
|
|
"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"
|
|
},
|
|
"AuthzAuditLogRead": {
|
|
"description": "Read-only projection of an ``AuthzAuditLog`` row.",
|
|
"properties": {
|
|
"action": {
|
|
"title": "Action",
|
|
"type": "string"
|
|
},
|
|
"details": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Details"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"resource_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Resource Id"
|
|
},
|
|
"resource_type": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Resource Type"
|
|
},
|
|
"result": {
|
|
"title": "Result",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"format": "date-time",
|
|
"title": "Timestamp",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"user_id",
|
|
"action",
|
|
"resource_type",
|
|
"resource_id",
|
|
"result",
|
|
"details",
|
|
"timestamp"
|
|
],
|
|
"title": "AuthzAuditLogRead",
|
|
"type": "object"
|
|
},
|
|
"AuthzAuditPage": {
|
|
"description": "Paginated audit-log response.",
|
|
"properties": {
|
|
"items": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/AuthzAuditLogRead"
|
|
},
|
|
"title": "Items",
|
|
"type": "array"
|
|
},
|
|
"page": {
|
|
"title": "Page",
|
|
"type": "integer"
|
|
},
|
|
"pages": {
|
|
"title": "Pages",
|
|
"type": "integer"
|
|
},
|
|
"size": {
|
|
"title": "Size",
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"title": "Total",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"items",
|
|
"total",
|
|
"page",
|
|
"size",
|
|
"pages"
|
|
],
|
|
"title": "AuthzAuditPage",
|
|
"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-Input": {
|
|
"description": "Content type for code snippets.",
|
|
"properties": {
|
|
"code": {
|
|
"title": "Code",
|
|
"type": "string"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"header": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/HeaderDict"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"language": {
|
|
"title": "Language",
|
|
"type": "string"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Title"
|
|
},
|
|
"type": {
|
|
"const": "code",
|
|
"default": "code",
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"code",
|
|
"language"
|
|
],
|
|
"title": "CodeContent",
|
|
"type": "object"
|
|
},
|
|
"CodeContent-Output": {
|
|
"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.\n\nThe 'type' field is a discriminator to distinguish from PublicConfigResponse.",
|
|
"properties": {
|
|
"allow_custom_components": {
|
|
"title": "Allow Custom Components",
|
|
"type": "boolean"
|
|
},
|
|
"authz_enabled": {
|
|
"default": false,
|
|
"title": "Authz Enabled",
|
|
"type": "boolean"
|
|
},
|
|
"auto_saving": {
|
|
"title": "Auto Saving",
|
|
"type": "boolean"
|
|
},
|
|
"auto_saving_interval": {
|
|
"title": "Auto Saving Interval",
|
|
"type": "integer"
|
|
},
|
|
"custom_component_admin_only": {
|
|
"title": "Custom Component Admin Only",
|
|
"type": "boolean"
|
|
},
|
|
"default_folder_name": {
|
|
"title": "Default Folder Name",
|
|
"type": "string"
|
|
},
|
|
"embedded_mode": {
|
|
"title": "Embedded Mode",
|
|
"type": "boolean"
|
|
},
|
|
"enable_extension_reload": {
|
|
"title": "Enable Extension Reload",
|
|
"type": "boolean"
|
|
},
|
|
"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"
|
|
},
|
|
"hide_logout_button": {
|
|
"title": "Hide Logout Button",
|
|
"type": "boolean"
|
|
},
|
|
"hide_new_flow_button": {
|
|
"title": "Hide New Flow Button",
|
|
"type": "boolean"
|
|
},
|
|
"hide_new_project_button": {
|
|
"title": "Hide New Project Button",
|
|
"type": "boolean"
|
|
},
|
|
"hide_starter_projects": {
|
|
"title": "Hide Starter Projects",
|
|
"type": "boolean"
|
|
},
|
|
"max_file_size_upload": {
|
|
"title": "Max File Size Upload",
|
|
"type": "integer"
|
|
},
|
|
"mcp_base_url": {
|
|
"title": "Mcp Base Url",
|
|
"type": "string"
|
|
},
|
|
"mcp_servers_locked": {
|
|
"title": "Mcp Servers Locked",
|
|
"type": "boolean"
|
|
},
|
|
"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",
|
|
"enable_extension_reload",
|
|
"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",
|
|
"embedded_mode",
|
|
"hide_logout_button",
|
|
"hide_new_project_button",
|
|
"hide_new_flow_button",
|
|
"hide_starter_projects",
|
|
"mcp_servers_locked",
|
|
"custom_component_admin_only"
|
|
],
|
|
"title": "ConfigResponse",
|
|
"type": "object"
|
|
},
|
|
"ContentBlock-Input": {
|
|
"description": "A block of content that can contain different types of content.",
|
|
"properties": {
|
|
"allow_markdown": {
|
|
"default": true,
|
|
"title": "Allow Markdown",
|
|
"type": "boolean"
|
|
},
|
|
"contents": {
|
|
"items": {
|
|
"oneOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ToolContent-Input"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/ErrorContent-Input"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/TextContent-Input"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/MediaContent-Input"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/CodeContent-Input"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/JSONContent-Input"
|
|
}
|
|
]
|
|
},
|
|
"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"
|
|
},
|
|
"ContentBlock-Output": {
|
|
"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"
|
|
},
|
|
"EffectivePermissionsRequest": {
|
|
"description": "Body for :func:`get_effective_permissions`.",
|
|
"properties": {
|
|
"actions": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Actions to check. Each entry is lowercased and de-duplicated; the list is capped at 10. Defaults to read/write/execute/delete/create.",
|
|
"title": "Actions"
|
|
},
|
|
"domain": {
|
|
"default": "*",
|
|
"description": "Authorization domain — typically ``project:{folder_id}`` or ``*``.",
|
|
"title": "Domain",
|
|
"type": "string"
|
|
},
|
|
"resource_ids": {
|
|
"description": "Resource IDs to evaluate. Capped at 500 per request to keep batch_enforce bounded.",
|
|
"items": {
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
"title": "Resource Ids",
|
|
"type": "array"
|
|
},
|
|
"resource_type": {
|
|
"enum": [
|
|
"flow",
|
|
"deployment",
|
|
"project",
|
|
"knowledge_base",
|
|
"variable",
|
|
"file",
|
|
"component"
|
|
],
|
|
"title": "Resource Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"resource_type",
|
|
"resource_ids"
|
|
],
|
|
"title": "EffectivePermissionsRequest",
|
|
"type": "object"
|
|
},
|
|
"EffectivePermissionsResponse": {
|
|
"description": "Response: ``{resource_id: [allowed_actions]}``.",
|
|
"properties": {
|
|
"permissions": {
|
|
"additionalProperties": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"propertyNames": {
|
|
"format": "uuid"
|
|
},
|
|
"title": "Permissions",
|
|
"type": "object"
|
|
},
|
|
"resource_type": {
|
|
"enum": [
|
|
"flow",
|
|
"deployment",
|
|
"project",
|
|
"knowledge_base",
|
|
"variable",
|
|
"file",
|
|
"component"
|
|
],
|
|
"title": "Resource Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"resource_type",
|
|
"permissions"
|
|
],
|
|
"title": "EffectivePermissionsResponse",
|
|
"type": "object"
|
|
},
|
|
"ErrorContent-Input": {
|
|
"description": "Content type for error messages.",
|
|
"properties": {
|
|
"component": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Component"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"field": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Field"
|
|
},
|
|
"header": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/HeaderDict"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"reason": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Reason"
|
|
},
|
|
"solution": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Solution"
|
|
},
|
|
"traceback": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Traceback"
|
|
},
|
|
"type": {
|
|
"const": "error",
|
|
"default": "error",
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"title": "ErrorContent",
|
|
"type": "object"
|
|
},
|
|
"ErrorContent-Output": {
|
|
"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"
|
|
},
|
|
"ExtensionEventResponse": {
|
|
"properties": {
|
|
"payload": {
|
|
"additionalProperties": true,
|
|
"title": "Payload",
|
|
"type": "object"
|
|
},
|
|
"timestamp": {
|
|
"title": "Timestamp",
|
|
"type": "number"
|
|
},
|
|
"type": {
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"timestamp",
|
|
"payload"
|
|
],
|
|
"title": "ExtensionEventResponse",
|
|
"type": "object"
|
|
},
|
|
"ExtensionEventsResponse": {
|
|
"properties": {
|
|
"events": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/ExtensionEventResponse"
|
|
},
|
|
"title": "Events",
|
|
"type": "array"
|
|
},
|
|
"settled": {
|
|
"title": "Settled",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"events",
|
|
"settled"
|
|
],
|
|
"title": "ExtensionEventsResponse",
|
|
"type": "object"
|
|
},
|
|
"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"
|
|
},
|
|
"workspace_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Workspace Id"
|
|
}
|
|
},
|
|
"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"
|
|
},
|
|
"name_key": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Stable i18n key derived from the original English name",
|
|
"title": "Name Key"
|
|
},
|
|
"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"
|
|
},
|
|
"workspace_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Workspace Id"
|
|
}
|
|
},
|
|
"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"
|
|
},
|
|
"workspace_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Workspace Id"
|
|
}
|
|
},
|
|
"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"
|
|
},
|
|
"HeaderDict": {
|
|
"properties": {
|
|
"icon": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Icon"
|
|
},
|
|
"title": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Title"
|
|
}
|
|
},
|
|
"title": "HeaderDict",
|
|
"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-Input": {
|
|
"description": "Content type for JSON content.",
|
|
"properties": {
|
|
"data": {
|
|
"additionalProperties": true,
|
|
"title": "Data",
|
|
"type": "object"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"header": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/HeaderDict"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"const": "json",
|
|
"default": "json",
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"data"
|
|
],
|
|
"title": "JSONContent",
|
|
"type": "object"
|
|
},
|
|
"JSONContent-Output": {
|
|
"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": {
|
|
"additionalProperties": true,
|
|
"description": "Pydantic model for MCP server configuration.",
|
|
"properties": {
|
|
"args": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Args"
|
|
},
|
|
"command": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Command"
|
|
},
|
|
"env": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Env"
|
|
},
|
|
"headers": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Headers"
|
|
},
|
|
"url": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Url"
|
|
}
|
|
},
|
|
"title": "MCPServerConfig",
|
|
"type": "object"
|
|
},
|
|
"MCPSettings": {
|
|
"description": "Model representing MCP settings for a flow.",
|
|
"properties": {
|
|
"action_description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Action Description"
|
|
},
|
|
"action_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Action Name"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"mcp_enabled": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Mcp Enabled"
|
|
},
|
|
"name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Name"
|
|
}
|
|
},
|
|
"required": [
|
|
"id"
|
|
],
|
|
"title": "MCPSettings",
|
|
"type": "object"
|
|
},
|
|
"MediaContent-Input": {
|
|
"description": "Content type for media content.",
|
|
"properties": {
|
|
"caption": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Caption"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"header": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/HeaderDict"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"const": "media",
|
|
"default": "media",
|
|
"title": "Type",
|
|
"type": "string"
|
|
},
|
|
"urls": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Urls",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"urls"
|
|
],
|
|
"title": "MediaContent",
|
|
"type": "object"
|
|
},
|
|
"MediaContent-Output": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"MessageRead": {
|
|
"properties": {
|
|
"category": {
|
|
"default": "message",
|
|
"title": "Category",
|
|
"type": "string"
|
|
},
|
|
"content_blocks": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/ContentBlock-Output"
|
|
},
|
|
"title": "Content Blocks",
|
|
"type": "array"
|
|
},
|
|
"context_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Context Id"
|
|
},
|
|
"edit": {
|
|
"default": false,
|
|
"title": "Edit",
|
|
"type": "boolean"
|
|
},
|
|
"error": {
|
|
"default": false,
|
|
"title": "Error",
|
|
"type": "boolean"
|
|
},
|
|
"files": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Files",
|
|
"type": "array"
|
|
},
|
|
"flow_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Id"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"properties": {
|
|
"$ref": "#/components/schemas/Properties"
|
|
},
|
|
"run_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Run Id"
|
|
},
|
|
"sender": {
|
|
"title": "Sender",
|
|
"type": "string"
|
|
},
|
|
"sender_name": {
|
|
"title": "Sender Name",
|
|
"type": "string"
|
|
},
|
|
"session_id": {
|
|
"title": "Session Id",
|
|
"type": "string"
|
|
},
|
|
"session_metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Metadata"
|
|
},
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"format": "date-time",
|
|
"title": "Timestamp",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sender",
|
|
"sender_name",
|
|
"session_id",
|
|
"text",
|
|
"id"
|
|
],
|
|
"title": "MessageRead",
|
|
"type": "object"
|
|
},
|
|
"MessageResponse": {
|
|
"properties": {
|
|
"category": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Category"
|
|
},
|
|
"content_blocks": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/ContentBlock-Output"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Content Blocks"
|
|
},
|
|
"context_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Context Id"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"edit": {
|
|
"title": "Edit",
|
|
"type": "boolean"
|
|
},
|
|
"files": {
|
|
"default": [],
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Files",
|
|
"type": "array"
|
|
},
|
|
"flow_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Id"
|
|
},
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Id"
|
|
},
|
|
"properties": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Properties"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"sender": {
|
|
"title": "Sender",
|
|
"type": "string"
|
|
},
|
|
"sender_name": {
|
|
"title": "Sender Name",
|
|
"type": "string"
|
|
},
|
|
"session_id": {
|
|
"title": "Session Id",
|
|
"type": "string"
|
|
},
|
|
"session_metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Metadata"
|
|
},
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"format": "date-time",
|
|
"title": "Timestamp",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"sender",
|
|
"sender_name",
|
|
"session_id",
|
|
"text",
|
|
"edit"
|
|
],
|
|
"title": "MessageResponse",
|
|
"type": "object"
|
|
},
|
|
"MessageUpdate": {
|
|
"properties": {
|
|
"category": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Category"
|
|
},
|
|
"content_blocks": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/ContentBlock-Input"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Content Blocks"
|
|
},
|
|
"context_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Context Id"
|
|
},
|
|
"edit": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Edit"
|
|
},
|
|
"error": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Error"
|
|
},
|
|
"files": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Files"
|
|
},
|
|
"properties": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Properties"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"sender": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Sender"
|
|
},
|
|
"sender_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Sender Name"
|
|
},
|
|
"session_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
},
|
|
"session_metadata": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Metadata"
|
|
},
|
|
"text": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Text"
|
|
}
|
|
},
|
|
"title": "MessageUpdate",
|
|
"type": "object"
|
|
},
|
|
"OpenAIResponsesRequest": {
|
|
"description": "OpenAI-compatible responses request with flow_id as model parameter.",
|
|
"properties": {
|
|
"background": {
|
|
"default": false,
|
|
"description": "Whether to process in background",
|
|
"title": "Background",
|
|
"type": "boolean"
|
|
},
|
|
"include": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Additional response data to include, e.g., ['tool_call.results']",
|
|
"title": "Include"
|
|
},
|
|
"input": {
|
|
"description": "The input text to process",
|
|
"title": "Input",
|
|
"type": "string"
|
|
},
|
|
"model": {
|
|
"description": "The flow ID to execute (used instead of OpenAI model)",
|
|
"title": "Model",
|
|
"type": "string"
|
|
},
|
|
"previous_response_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "ID of previous response to continue conversation",
|
|
"title": "Previous Response Id"
|
|
},
|
|
"stream": {
|
|
"default": false,
|
|
"description": "Whether to stream the response",
|
|
"title": "Stream",
|
|
"type": "boolean"
|
|
},
|
|
"tools": {
|
|
"anyOf": [
|
|
{
|
|
"items": {},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Tools are not supported yet",
|
|
"title": "Tools"
|
|
}
|
|
},
|
|
"required": [
|
|
"model",
|
|
"input"
|
|
],
|
|
"title": "OpenAIResponsesRequest",
|
|
"type": "object"
|
|
},
|
|
"Page_FlowRead_": {
|
|
"properties": {
|
|
"items": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
},
|
|
"title": "Items",
|
|
"type": "array"
|
|
},
|
|
"page": {
|
|
"minimum": 1.0,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
},
|
|
"pages": {
|
|
"minimum": 0.0,
|
|
"title": "Pages",
|
|
"type": "integer"
|
|
},
|
|
"size": {
|
|
"minimum": 1.0,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"minimum": 0.0,
|
|
"title": "Total",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"items",
|
|
"total",
|
|
"page",
|
|
"size",
|
|
"pages"
|
|
],
|
|
"title": "Page[FlowRead]",
|
|
"type": "object"
|
|
},
|
|
"Page_TransactionLogsResponse_": {
|
|
"properties": {
|
|
"items": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/TransactionLogsResponse"
|
|
},
|
|
"title": "Items",
|
|
"type": "array"
|
|
},
|
|
"page": {
|
|
"minimum": 1.0,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
},
|
|
"pages": {
|
|
"minimum": 0.0,
|
|
"title": "Pages",
|
|
"type": "integer"
|
|
},
|
|
"size": {
|
|
"minimum": 1.0,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"minimum": 0.0,
|
|
"title": "Total",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"items",
|
|
"total",
|
|
"page",
|
|
"size",
|
|
"pages"
|
|
],
|
|
"title": "Page[TransactionLogsResponse]",
|
|
"type": "object"
|
|
},
|
|
"Properties": {
|
|
"properties": {
|
|
"allow_markdown": {
|
|
"default": false,
|
|
"title": "Allow Markdown",
|
|
"type": "boolean"
|
|
},
|
|
"background_color": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Background Color"
|
|
},
|
|
"build_duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Build Duration"
|
|
},
|
|
"edited": {
|
|
"default": false,
|
|
"title": "Edited",
|
|
"type": "boolean"
|
|
},
|
|
"icon": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Icon"
|
|
},
|
|
"positive_feedback": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Positive Feedback"
|
|
},
|
|
"source": {
|
|
"$ref": "#/components/schemas/Source"
|
|
},
|
|
"state": {
|
|
"default": "complete",
|
|
"enum": [
|
|
"partial",
|
|
"complete"
|
|
],
|
|
"title": "State",
|
|
"type": "string"
|
|
},
|
|
"targets": {
|
|
"default": [],
|
|
"items": {},
|
|
"title": "Targets",
|
|
"type": "array"
|
|
},
|
|
"text_color": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Text Color"
|
|
},
|
|
"usage": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Usage"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"title": "Properties",
|
|
"type": "object"
|
|
},
|
|
"PublicConfigResponse": {
|
|
"description": "Configuration response for public/unauthenticated endpoints like the public playground.\n\nContains only the configuration values needed for public features, without sensitive data.\nThe 'type' field is a discriminator to distinguish from full ConfigResponse.",
|
|
"properties": {
|
|
"allow_custom_components": {
|
|
"title": "Allow Custom Components",
|
|
"type": "boolean"
|
|
},
|
|
"authz_enabled": {
|
|
"default": false,
|
|
"title": "Authz Enabled",
|
|
"type": "boolean"
|
|
},
|
|
"enable_extension_reload": {
|
|
"title": "Enable Extension Reload",
|
|
"type": "boolean"
|
|
},
|
|
"event_delivery": {
|
|
"enum": [
|
|
"polling",
|
|
"streaming",
|
|
"direct"
|
|
],
|
|
"title": "Event Delivery",
|
|
"type": "string"
|
|
},
|
|
"feature_flags": {
|
|
"$ref": "#/components/schemas/FeatureFlags"
|
|
},
|
|
"frontend_timeout": {
|
|
"title": "Frontend Timeout",
|
|
"type": "integer"
|
|
},
|
|
"max_file_size_upload": {
|
|
"title": "Max File Size Upload",
|
|
"type": "integer"
|
|
},
|
|
"mcp_base_url": {
|
|
"title": "Mcp Base Url",
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"const": "public",
|
|
"default": "public",
|
|
"title": "Type",
|
|
"type": "string"
|
|
},
|
|
"voice_mode_available": {
|
|
"title": "Voice Mode Available",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"feature_flags",
|
|
"max_file_size_upload",
|
|
"event_delivery",
|
|
"voice_mode_available",
|
|
"frontend_timeout",
|
|
"mcp_base_url",
|
|
"enable_extension_reload",
|
|
"allow_custom_components"
|
|
],
|
|
"title": "PublicConfigResponse",
|
|
"type": "object"
|
|
},
|
|
"ResultData": {
|
|
"properties": {
|
|
"artifacts": {
|
|
"anyOf": [
|
|
{},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Artifacts"
|
|
},
|
|
"component_display_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Component Display Name"
|
|
},
|
|
"component_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Component Id"
|
|
},
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"logs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Logs"
|
|
},
|
|
"messages": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/ChatOutputResponse"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Messages"
|
|
},
|
|
"outputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Outputs"
|
|
},
|
|
"results": {
|
|
"anyOf": [
|
|
{},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Results"
|
|
},
|
|
"timedelta": {
|
|
"anyOf": [
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Timedelta"
|
|
},
|
|
"token_usage": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Usage"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"used_frozen_result": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": false,
|
|
"title": "Used Frozen Result"
|
|
}
|
|
},
|
|
"title": "ResultData",
|
|
"type": "object"
|
|
},
|
|
"RoleAssignmentCreate": {
|
|
"description": "Payload for assigning a role to a user.",
|
|
"properties": {
|
|
"domain_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Required when ``domain_type`` is org/workspace/project; must be null for ``global``.",
|
|
"title": "Domain Id"
|
|
},
|
|
"domain_type": {
|
|
"default": "global",
|
|
"description": "Domain scope of the assignment. ``global`` is unscoped (no ``domain_id``); ``org``/``workspace``/``project`` require a matching ``domain_id``.",
|
|
"enum": [
|
|
"global",
|
|
"org",
|
|
"workspace",
|
|
"project"
|
|
],
|
|
"title": "Domain Type",
|
|
"type": "string"
|
|
},
|
|
"role_id": {
|
|
"format": "uuid",
|
|
"title": "Role Id",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"user_id",
|
|
"role_id"
|
|
],
|
|
"title": "RoleAssignmentCreate",
|
|
"type": "object"
|
|
},
|
|
"RoleAssignmentRead": {
|
|
"description": "Serialized authz_role_assignment row returned by the API.",
|
|
"properties": {
|
|
"assigned_at": {
|
|
"format": "date-time",
|
|
"title": "Assigned At",
|
|
"type": "string"
|
|
},
|
|
"assigned_by": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Assigned By"
|
|
},
|
|
"domain_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Domain Id"
|
|
},
|
|
"domain_type": {
|
|
"title": "Domain Type",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"role_id": {
|
|
"format": "uuid",
|
|
"title": "Role Id",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"user_id",
|
|
"role_id",
|
|
"domain_type",
|
|
"domain_id",
|
|
"assigned_at",
|
|
"assigned_by"
|
|
],
|
|
"title": "RoleAssignmentRead",
|
|
"type": "object"
|
|
},
|
|
"RoleCreate": {
|
|
"description": "Payload for creating an authz_role row.",
|
|
"properties": {
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"name": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"parent_role_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Parent Role Id"
|
|
},
|
|
"permissions": {
|
|
"description": "Permission slugs in the canonical ``<resource>:<action>`` form — for example ``flow:read``, ``deployment:execute``, ``share:create``. Resources must be one of flow, deployment, project, knowledge_base, variable, file, share. Actions are constrained per-resource (see ``services/authorization/actions.py``): e.g. ``deploy`` is only valid on ``flow``, ``ingest`` only on ``knowledge_base``, ``update`` only on ``share``. ``*`` (all actions on that resource) is always accepted. A registered authorization plugin is responsible for compiling these into its policy format.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Permissions",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"name"
|
|
],
|
|
"title": "RoleCreate",
|
|
"type": "object"
|
|
},
|
|
"RoleRead": {
|
|
"description": "Serialized authz_role row returned by the API.",
|
|
"properties": {
|
|
"created_at": {
|
|
"format": "date-time",
|
|
"title": "Created At",
|
|
"type": "string"
|
|
},
|
|
"created_by": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created By"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"is_system": {
|
|
"title": "Is System",
|
|
"type": "boolean"
|
|
},
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"parent_role_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Parent Role Id"
|
|
},
|
|
"permissions": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Permissions",
|
|
"type": "array"
|
|
},
|
|
"updated_at": {
|
|
"format": "date-time",
|
|
"title": "Updated At",
|
|
"type": "string"
|
|
},
|
|
"workspace_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Workspace Id"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"description",
|
|
"is_system",
|
|
"permissions",
|
|
"parent_role_id",
|
|
"workspace_id",
|
|
"created_at",
|
|
"updated_at",
|
|
"created_by"
|
|
],
|
|
"title": "RoleRead",
|
|
"type": "object"
|
|
},
|
|
"RoleUpdate": {
|
|
"description": "Payload for updating an authz_role row (PATCH semantics — only set fields apply).",
|
|
"properties": {
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"name": {
|
|
"anyOf": [
|
|
{
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Name"
|
|
},
|
|
"parent_role_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Parent Role Id"
|
|
},
|
|
"permissions": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Permissions"
|
|
}
|
|
},
|
|
"title": "RoleUpdate",
|
|
"type": "object"
|
|
},
|
|
"RunOutputs": {
|
|
"properties": {
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"title": "Inputs",
|
|
"type": "object"
|
|
},
|
|
"outputs": {
|
|
"items": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ResultData"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"title": "Outputs",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"title": "RunOutputs",
|
|
"type": "object"
|
|
},
|
|
"RunResponse": {
|
|
"description": "Run response schema.",
|
|
"properties": {
|
|
"outputs": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/RunOutputs"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": [],
|
|
"title": "Outputs"
|
|
},
|
|
"session_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
}
|
|
},
|
|
"title": "RunResponse",
|
|
"type": "object"
|
|
},
|
|
"ShareCreate": {
|
|
"description": "Payload for creating an authz_share row.",
|
|
"properties": {
|
|
"permission_level": {
|
|
"default": "read",
|
|
"enum": [
|
|
"read",
|
|
"write",
|
|
"execute",
|
|
"admin"
|
|
],
|
|
"title": "Permission Level",
|
|
"type": "string"
|
|
},
|
|
"resource_id": {
|
|
"format": "uuid",
|
|
"title": "Resource Id",
|
|
"type": "string"
|
|
},
|
|
"resource_type": {
|
|
"enum": [
|
|
"flow",
|
|
"deployment",
|
|
"project",
|
|
"knowledge_base",
|
|
"variable",
|
|
"file"
|
|
],
|
|
"title": "Resource Type",
|
|
"type": "string"
|
|
},
|
|
"scope": {
|
|
"enum": [
|
|
"private",
|
|
"team",
|
|
"user",
|
|
"public"
|
|
],
|
|
"title": "Scope",
|
|
"type": "string"
|
|
},
|
|
"target_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Target Id"
|
|
}
|
|
},
|
|
"required": [
|
|
"resource_type",
|
|
"resource_id",
|
|
"scope"
|
|
],
|
|
"title": "ShareCreate",
|
|
"type": "object"
|
|
},
|
|
"ShareRead": {
|
|
"description": "Serialized authz_share row returned by the API.",
|
|
"properties": {
|
|
"created_at": {
|
|
"format": "date-time",
|
|
"title": "Created At",
|
|
"type": "string"
|
|
},
|
|
"created_by": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Created By"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"permission_level": {
|
|
"enum": [
|
|
"read",
|
|
"write",
|
|
"execute",
|
|
"admin"
|
|
],
|
|
"title": "Permission Level",
|
|
"type": "string"
|
|
},
|
|
"resource_id": {
|
|
"format": "uuid",
|
|
"title": "Resource Id",
|
|
"type": "string"
|
|
},
|
|
"resource_type": {
|
|
"enum": [
|
|
"flow",
|
|
"deployment",
|
|
"project",
|
|
"knowledge_base",
|
|
"variable",
|
|
"file"
|
|
],
|
|
"title": "Resource Type",
|
|
"type": "string"
|
|
},
|
|
"scope": {
|
|
"enum": [
|
|
"private",
|
|
"team",
|
|
"user",
|
|
"public"
|
|
],
|
|
"title": "Scope",
|
|
"type": "string"
|
|
},
|
|
"target_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Target Id"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"resource_type",
|
|
"resource_id",
|
|
"scope",
|
|
"target_id",
|
|
"permission_level",
|
|
"created_by",
|
|
"created_at"
|
|
],
|
|
"title": "ShareRead",
|
|
"type": "object"
|
|
},
|
|
"ShareUpdate": {
|
|
"description": "Payload for updating an authz_share permission level.",
|
|
"properties": {
|
|
"permission_level": {
|
|
"enum": [
|
|
"read",
|
|
"write",
|
|
"execute",
|
|
"admin"
|
|
],
|
|
"title": "Permission Level",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"permission_level"
|
|
],
|
|
"title": "ShareUpdate",
|
|
"type": "object"
|
|
},
|
|
"SimplifiedAPIRequest": {
|
|
"properties": {
|
|
"input_type": {
|
|
"anyOf": [
|
|
{
|
|
"enum": [
|
|
"chat",
|
|
"text",
|
|
"any"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "chat",
|
|
"description": "The input type",
|
|
"title": "Input Type"
|
|
},
|
|
"input_value": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "The input value",
|
|
"title": "Input Value"
|
|
},
|
|
"output_component": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "",
|
|
"description": "If there are multiple output components, you can specify the component to get the output from.",
|
|
"title": "Output Component"
|
|
},
|
|
"output_type": {
|
|
"anyOf": [
|
|
{
|
|
"enum": [
|
|
"chat",
|
|
"text",
|
|
"any",
|
|
"debug"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "chat",
|
|
"description": "The output type",
|
|
"title": "Output Type"
|
|
},
|
|
"session_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "The session id",
|
|
"title": "Session Id"
|
|
},
|
|
"tweaks": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/Tweaks"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "The tweaks"
|
|
},
|
|
"user_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Optional end-user identifier forwarded to tracing providers (e.g. Langfuse) as the trace's user_id. Does not affect authentication or authorization — the API key owner remains the effective Langflow user.",
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
"title": "SimplifiedAPIRequest",
|
|
"type": "object"
|
|
},
|
|
"Source": {
|
|
"properties": {
|
|
"display_name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "The display name of the source component.",
|
|
"title": "Display Name"
|
|
},
|
|
"id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "The id of the source component.",
|
|
"title": "Id"
|
|
},
|
|
"source": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "The source of the message. Normally used to display the model name (e.g. 'gpt-4o')",
|
|
"title": "Source"
|
|
}
|
|
},
|
|
"title": "Source",
|
|
"type": "object"
|
|
},
|
|
"SpanReadResponse": {
|
|
"description": "Response model for a single span, with nested children.\n\nSerializes to camelCase JSON to match the frontend API contract.",
|
|
"properties": {
|
|
"children": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/SpanReadResponse"
|
|
},
|
|
"title": "Children",
|
|
"type": "array"
|
|
},
|
|
"endTime": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Endtime"
|
|
},
|
|
"error": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Error"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"inputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Inputs"
|
|
},
|
|
"latencyMs": {
|
|
"title": "Latencyms",
|
|
"type": "integer"
|
|
},
|
|
"modelName": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Modelname"
|
|
},
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"outputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Outputs"
|
|
},
|
|
"startTime": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Starttime"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/SpanStatus"
|
|
},
|
|
"tokenUsage": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Tokenusage"
|
|
},
|
|
"type": {
|
|
"$ref": "#/components/schemas/SpanType"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"type",
|
|
"status",
|
|
"startTime",
|
|
"endTime",
|
|
"latencyMs",
|
|
"inputs",
|
|
"outputs",
|
|
"error",
|
|
"modelName",
|
|
"tokenUsage"
|
|
],
|
|
"title": "SpanReadResponse",
|
|
"type": "object"
|
|
},
|
|
"SpanStatus": {
|
|
"description": "OpenTelemetry status codes.\n\n- UNSET: Default status, span has not ended yet\n- OK: Span completed successfully\n- ERROR: Span completed with an error",
|
|
"enum": [
|
|
"unset",
|
|
"ok",
|
|
"error"
|
|
],
|
|
"title": "SpanStatus",
|
|
"type": "string"
|
|
},
|
|
"SpanType": {
|
|
"description": "Types of spans that can be recorded.",
|
|
"enum": [
|
|
"chain",
|
|
"llm",
|
|
"tool",
|
|
"retriever",
|
|
"embedding",
|
|
"parser",
|
|
"agent"
|
|
],
|
|
"title": "SpanType",
|
|
"type": "string"
|
|
},
|
|
"TeamCreate": {
|
|
"description": "Payload for creating an authz_team.",
|
|
"properties": {
|
|
"adom_name": {
|
|
"description": "Administrative-domain slug, unique across all teams (often the SSO group name).",
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"title": "Adom Name",
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"is_active": {
|
|
"default": true,
|
|
"title": "Is Active",
|
|
"type": "boolean"
|
|
},
|
|
"team_name": {
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"title": "Team Name",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"team_name",
|
|
"adom_name"
|
|
],
|
|
"title": "TeamCreate",
|
|
"type": "object"
|
|
},
|
|
"TeamMemberCreate": {
|
|
"description": "Payload for adding a user to a team.",
|
|
"properties": {
|
|
"source": {
|
|
"default": "manual",
|
|
"enum": [
|
|
"manual",
|
|
"sso"
|
|
],
|
|
"title": "Source",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"user_id"
|
|
],
|
|
"title": "TeamMemberCreate",
|
|
"type": "object"
|
|
},
|
|
"TeamMemberRead": {
|
|
"description": "Serialized authz_team_member row.",
|
|
"properties": {
|
|
"created_at": {
|
|
"format": "date-time",
|
|
"title": "Created At",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"source": {
|
|
"title": "Source",
|
|
"type": "string"
|
|
},
|
|
"team_id": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"team_id",
|
|
"user_id",
|
|
"source",
|
|
"created_at"
|
|
],
|
|
"title": "TeamMemberRead",
|
|
"type": "object"
|
|
},
|
|
"TeamRead": {
|
|
"description": "Serialized authz_team row returned by the API.",
|
|
"properties": {
|
|
"adom_name": {
|
|
"title": "Adom Name",
|
|
"type": "string"
|
|
},
|
|
"created_at": {
|
|
"format": "date-time",
|
|
"title": "Created At",
|
|
"type": "string"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"title": "Is Active",
|
|
"type": "boolean"
|
|
},
|
|
"team_name": {
|
|
"title": "Team Name",
|
|
"type": "string"
|
|
},
|
|
"updated_at": {
|
|
"format": "date-time",
|
|
"title": "Updated At",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"team_name",
|
|
"adom_name",
|
|
"description",
|
|
"is_active",
|
|
"created_at",
|
|
"updated_at"
|
|
],
|
|
"title": "TeamRead",
|
|
"type": "object"
|
|
},
|
|
"TeamUpdate": {
|
|
"description": "Payload for updating an authz_team (PATCH semantics).",
|
|
"properties": {
|
|
"adom_name": {
|
|
"anyOf": [
|
|
{
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Adom Name"
|
|
},
|
|
"description": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Description"
|
|
},
|
|
"is_active": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Is Active"
|
|
},
|
|
"team_name": {
|
|
"anyOf": [
|
|
{
|
|
"maxLength": 255,
|
|
"minLength": 1,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Team Name"
|
|
}
|
|
},
|
|
"title": "TeamUpdate",
|
|
"type": "object"
|
|
},
|
|
"TextContent-Input": {
|
|
"description": "Content type for simple text content.",
|
|
"properties": {
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"header": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/HeaderDict"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"text": {
|
|
"title": "Text",
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"const": "text",
|
|
"default": "text",
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"text"
|
|
],
|
|
"title": "TextContent",
|
|
"type": "object"
|
|
},
|
|
"TextContent-Output": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"ToolContent-Input": {
|
|
"description": "Content type for tool start content.",
|
|
"properties": {
|
|
"duration": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Duration"
|
|
},
|
|
"error": {
|
|
"anyOf": [
|
|
{},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Error"
|
|
},
|
|
"header": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/HeaderDict"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
]
|
|
},
|
|
"input": {
|
|
"additionalProperties": true,
|
|
"title": "Input",
|
|
"type": "object"
|
|
},
|
|
"name": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Name"
|
|
},
|
|
"output": {
|
|
"anyOf": [
|
|
{},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Output"
|
|
},
|
|
"type": {
|
|
"const": "tool_use",
|
|
"default": "tool_use",
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"title": "ToolContent",
|
|
"type": "object"
|
|
},
|
|
"ToolContent-Output": {
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
"TraceListResponse": {
|
|
"description": "Paginated list response for traces.",
|
|
"properties": {
|
|
"pages": {
|
|
"title": "Pages",
|
|
"type": "integer"
|
|
},
|
|
"total": {
|
|
"title": "Total",
|
|
"type": "integer"
|
|
},
|
|
"traces": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/TraceSummaryRead"
|
|
},
|
|
"title": "Traces",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"traces",
|
|
"total",
|
|
"pages"
|
|
],
|
|
"title": "TraceListResponse",
|
|
"type": "object"
|
|
},
|
|
"TraceRead": {
|
|
"description": "Response model for a single trace with its hierarchical span tree.\n\nSerializes to camelCase JSON to match the frontend API contract.",
|
|
"properties": {
|
|
"endTime": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Endtime"
|
|
},
|
|
"flowId": {
|
|
"format": "uuid",
|
|
"title": "Flowid",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"input": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Input"
|
|
},
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"output": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Output"
|
|
},
|
|
"sessionId": {
|
|
"title": "Sessionid",
|
|
"type": "string"
|
|
},
|
|
"spans": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/SpanReadResponse"
|
|
},
|
|
"title": "Spans",
|
|
"type": "array"
|
|
},
|
|
"startTime": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Starttime"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/SpanStatus"
|
|
},
|
|
"totalLatencyMs": {
|
|
"title": "Totallatencyms",
|
|
"type": "integer"
|
|
},
|
|
"totalTokens": {
|
|
"title": "Totaltokens",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"status",
|
|
"startTime",
|
|
"endTime",
|
|
"totalLatencyMs",
|
|
"totalTokens",
|
|
"flowId",
|
|
"sessionId"
|
|
],
|
|
"title": "TraceRead",
|
|
"type": "object"
|
|
},
|
|
"TraceSummaryRead": {
|
|
"description": "Lightweight trace model for list endpoint.\n\nSerializes to camelCase JSON to match the frontend API contract.",
|
|
"properties": {
|
|
"flowId": {
|
|
"format": "uuid",
|
|
"title": "Flowid",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"input": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Input"
|
|
},
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"output": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Output"
|
|
},
|
|
"sessionId": {
|
|
"title": "Sessionid",
|
|
"type": "string"
|
|
},
|
|
"startTime": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Starttime"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/SpanStatus"
|
|
},
|
|
"totalLatencyMs": {
|
|
"title": "Totallatencyms",
|
|
"type": "integer"
|
|
},
|
|
"totalTokens": {
|
|
"title": "Totaltokens",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"status",
|
|
"startTime",
|
|
"totalLatencyMs",
|
|
"totalTokens",
|
|
"flowId",
|
|
"sessionId"
|
|
],
|
|
"title": "TraceSummaryRead",
|
|
"type": "object"
|
|
},
|
|
"TransactionLogsResponse": {
|
|
"description": "Transaction response model for logs view - excludes error and flow_id fields.",
|
|
"properties": {
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"title": "Inputs",
|
|
"type": "object"
|
|
},
|
|
"outputs": {
|
|
"additionalProperties": true,
|
|
"title": "Outputs",
|
|
"type": "object"
|
|
},
|
|
"status": {
|
|
"title": "Status",
|
|
"type": "string"
|
|
},
|
|
"target_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Target Id"
|
|
},
|
|
"timestamp": {
|
|
"format": "date-time",
|
|
"title": "Timestamp",
|
|
"type": "string"
|
|
},
|
|
"vertex_id": {
|
|
"title": "Vertex Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"vertex_id",
|
|
"status"
|
|
],
|
|
"title": "TransactionLogsResponse",
|
|
"type": "object"
|
|
},
|
|
"Tweaks": {
|
|
"additionalProperties": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "number"
|
|
},
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
}
|
|
]
|
|
},
|
|
"description": "A dictionary of tweaks to adjust the flow's execution. Allows customizing flow behavior dynamically. All tweaks are overridden by the input values.",
|
|
"examples": [
|
|
{
|
|
"Component Name": {
|
|
"parameter_name": "value"
|
|
},
|
|
"component_id": {
|
|
"parameter_name": "value"
|
|
},
|
|
"parameter_name": "value",
|
|
"stream": false,
|
|
"temperature": 0.7
|
|
}
|
|
],
|
|
"title": "Tweaks",
|
|
"type": "object"
|
|
},
|
|
"Usage": {
|
|
"description": "Token usage information from LLM responses.",
|
|
"properties": {
|
|
"input_tokens": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Input Tokens"
|
|
},
|
|
"output_tokens": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Output Tokens"
|
|
},
|
|
"total_tokens": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Total Tokens"
|
|
}
|
|
},
|
|
"title": "Usage",
|
|
"type": "object"
|
|
},
|
|
"UserCreate": {
|
|
"properties": {
|
|
"optins": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": {
|
|
"dialog_dismissed": false,
|
|
"discord_clicked": false,
|
|
"github_starred": false
|
|
},
|
|
"title": "Optins"
|
|
},
|
|
"password": {
|
|
"title": "Password",
|
|
"type": "string"
|
|
},
|
|
"username": {
|
|
"title": "Username",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"username",
|
|
"password"
|
|
],
|
|
"title": "UserCreate",
|
|
"type": "object"
|
|
},
|
|
"UserRead": {
|
|
"properties": {
|
|
"create_at": {
|
|
"format": "date-time",
|
|
"title": "Create At",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"is_active": {
|
|
"title": "Is Active",
|
|
"type": "boolean"
|
|
},
|
|
"is_superuser": {
|
|
"title": "Is Superuser",
|
|
"type": "boolean"
|
|
},
|
|
"last_login_at": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Last Login At"
|
|
},
|
|
"optins": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Optins"
|
|
},
|
|
"profile_image": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Profile Image"
|
|
},
|
|
"store_api_key": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Store Api Key"
|
|
},
|
|
"updated_at": {
|
|
"format": "date-time",
|
|
"title": "Updated At",
|
|
"type": "string"
|
|
},
|
|
"username": {
|
|
"title": "Username",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"username",
|
|
"profile_image",
|
|
"store_api_key",
|
|
"is_active",
|
|
"is_superuser",
|
|
"create_at",
|
|
"updated_at",
|
|
"last_login_at"
|
|
],
|
|
"title": "UserRead",
|
|
"type": "object"
|
|
},
|
|
"UserUpdate": {
|
|
"properties": {
|
|
"is_active": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Is Active"
|
|
},
|
|
"is_superuser": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Is Superuser"
|
|
},
|
|
"last_login_at": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Last Login At"
|
|
},
|
|
"optins": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Optins"
|
|
},
|
|
"password": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Password"
|
|
},
|
|
"profile_image": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Profile Image"
|
|
},
|
|
"username": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Username"
|
|
}
|
|
},
|
|
"title": "UserUpdate",
|
|
"type": "object"
|
|
},
|
|
"UsersResponse": {
|
|
"properties": {
|
|
"total_count": {
|
|
"title": "Total Count",
|
|
"type": "integer"
|
|
},
|
|
"users": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/UserRead"
|
|
},
|
|
"title": "Users",
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"total_count",
|
|
"users"
|
|
],
|
|
"title": "UsersResponse",
|
|
"type": "object"
|
|
},
|
|
"ValidationError": {
|
|
"properties": {
|
|
"ctx": {
|
|
"title": "Context",
|
|
"type": "object"
|
|
},
|
|
"input": {
|
|
"title": "Input"
|
|
},
|
|
"loc": {
|
|
"items": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "integer"
|
|
}
|
|
]
|
|
},
|
|
"title": "Location",
|
|
"type": "array"
|
|
},
|
|
"msg": {
|
|
"title": "Message",
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"title": "Error Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"loc",
|
|
"msg",
|
|
"type"
|
|
],
|
|
"title": "ValidationError",
|
|
"type": "object"
|
|
},
|
|
"VertexBuildMapModel": {
|
|
"properties": {
|
|
"vertex_builds": {
|
|
"additionalProperties": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/VertexBuildTable"
|
|
},
|
|
"type": "array"
|
|
},
|
|
"title": "Vertex Builds",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"vertex_builds"
|
|
],
|
|
"title": "VertexBuildMapModel",
|
|
"type": "object"
|
|
},
|
|
"VertexBuildTable": {
|
|
"properties": {
|
|
"artifacts": {
|
|
"additionalProperties": true,
|
|
"title": "Artifacts",
|
|
"type": "object"
|
|
},
|
|
"build_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Build Id"
|
|
},
|
|
"data": {
|
|
"additionalProperties": true,
|
|
"title": "Data",
|
|
"type": "object"
|
|
},
|
|
"flow_id": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"job_id": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Job Id"
|
|
},
|
|
"params": {
|
|
"title": "Params",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"format": "date-time",
|
|
"title": "Timestamp",
|
|
"type": "string"
|
|
},
|
|
"valid": {
|
|
"title": "Valid",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"valid",
|
|
"flow_id"
|
|
],
|
|
"title": "VertexBuildTable",
|
|
"type": "object"
|
|
},
|
|
"ViewPort": {
|
|
"properties": {
|
|
"x": {
|
|
"title": "X",
|
|
"type": "number"
|
|
},
|
|
"y": {
|
|
"title": "Y",
|
|
"type": "number"
|
|
},
|
|
"zoom": {
|
|
"title": "Zoom",
|
|
"type": "number"
|
|
}
|
|
},
|
|
"required": [
|
|
"x",
|
|
"y",
|
|
"zoom"
|
|
],
|
|
"title": "ViewPort",
|
|
"type": "object"
|
|
},
|
|
"WorkflowExecutionRequest": {
|
|
"additionalProperties": false,
|
|
"description": "Request schema for workflow execution.",
|
|
"examples": [
|
|
{
|
|
"background": false,
|
|
"flow_id": "flow_67ccd2be17f0819081ff3bb2cf6508e60bb6a6b452d3795b",
|
|
"globals": {
|
|
"FILENAME": "relatorio-final.pdf",
|
|
"OWNER_NAME": "Jose"
|
|
},
|
|
"inputs": {
|
|
"ChatInput-abc.input_value": "Hello, how can you help me today?",
|
|
"ChatInput-abc.session_id": "session-123",
|
|
"LLM-xyz.max_tokens": 100,
|
|
"LLM-xyz.temperature": 0.7,
|
|
"OpenSearch-def.opensearch_url": "https://opensearch:9200"
|
|
},
|
|
"stream": false
|
|
},
|
|
{
|
|
"background": true,
|
|
"flow_id": "flow_67ccd2be17f0819081ff3bb2cf6508e60bb6a6b452d3795b",
|
|
"inputs": {
|
|
"ChatInput-abc.input_value": "Process this in the background"
|
|
},
|
|
"stream": false
|
|
},
|
|
{
|
|
"background": false,
|
|
"flow_id": "flow_67ccd2be17f0819081ff3bb2cf6508e60bb6a6b452d3795b",
|
|
"inputs": {
|
|
"ChatInput-abc.input_value": "Stream this conversation"
|
|
},
|
|
"stream": true
|
|
}
|
|
],
|
|
"properties": {
|
|
"background": {
|
|
"default": false,
|
|
"title": "Background",
|
|
"type": "boolean"
|
|
},
|
|
"flow_id": {
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
},
|
|
"globals": {
|
|
"additionalProperties": {
|
|
"maxLength": 65536,
|
|
"type": "string"
|
|
},
|
|
"description": "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.",
|
|
"propertyNames": {
|
|
"maxLength": 256,
|
|
"minLength": 1
|
|
},
|
|
"title": "Globals",
|
|
"type": "object"
|
|
},
|
|
"inputs": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": true,
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Component-specific inputs in flat format: 'component_id.param_name': value",
|
|
"title": "Inputs"
|
|
},
|
|
"stream": {
|
|
"default": false,
|
|
"title": "Stream",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"required": [
|
|
"flow_id"
|
|
],
|
|
"title": "WorkflowExecutionRequest",
|
|
"type": "object"
|
|
},
|
|
"WorkflowStopRequest": {
|
|
"description": "Request schema for stopping workflow.",
|
|
"properties": {
|
|
"job_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"title": "Job Id"
|
|
}
|
|
},
|
|
"required": [
|
|
"job_id"
|
|
],
|
|
"title": "WorkflowStopRequest",
|
|
"type": "object"
|
|
},
|
|
"WorkflowStopResponse": {
|
|
"description": "Response schema for stopping workflow.",
|
|
"properties": {
|
|
"job_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"title": "Job Id"
|
|
},
|
|
"message": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Message"
|
|
}
|
|
},
|
|
"required": [
|
|
"job_id"
|
|
],
|
|
"title": "WorkflowStopResponse",
|
|
"type": "object"
|
|
},
|
|
"langflow__api__schemas__UploadFileResponse": {
|
|
"description": "File upload response schema.",
|
|
"properties": {
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"path": {
|
|
"title": "Path",
|
|
"type": "string"
|
|
},
|
|
"provider": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Provider"
|
|
},
|
|
"size": {
|
|
"title": "Size",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
"required": [
|
|
"id",
|
|
"name",
|
|
"path",
|
|
"size"
|
|
],
|
|
"title": "UploadFileResponse",
|
|
"type": "object"
|
|
},
|
|
"langflow__api__v1__schemas__UploadFileResponse": {
|
|
"description": "Upload file response schema.",
|
|
"properties": {
|
|
"file_path": {
|
|
"title": "File Path",
|
|
"type": "string"
|
|
},
|
|
"flowId": {
|
|
"title": "Flowid",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"flowId",
|
|
"file_path"
|
|
],
|
|
"title": "UploadFileResponse",
|
|
"type": "object"
|
|
},
|
|
"langflow__services__database__models__file__model__File": {
|
|
"properties": {
|
|
"created_at": {
|
|
"format": "date-time",
|
|
"title": "Created At",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"format": "uuid",
|
|
"title": "Id",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"path": {
|
|
"title": "Path",
|
|
"type": "string"
|
|
},
|
|
"provider": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Provider"
|
|
},
|
|
"size": {
|
|
"title": "Size",
|
|
"type": "integer"
|
|
},
|
|
"updated_at": {
|
|
"format": "date-time",
|
|
"title": "Updated At",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"user_id",
|
|
"name",
|
|
"path",
|
|
"size"
|
|
],
|
|
"title": "File",
|
|
"type": "object"
|
|
},
|
|
"lfx__utils__schemas__File": {
|
|
"description": "File schema.",
|
|
"properties": {
|
|
"name": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
},
|
|
"path": {
|
|
"title": "Path",
|
|
"type": "string"
|
|
},
|
|
"type": {
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"path",
|
|
"name",
|
|
"type"
|
|
],
|
|
"title": "File",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"securitySchemes": {
|
|
"API key header": {
|
|
"in": "header",
|
|
"name": "x-api-key",
|
|
"type": "apiKey"
|
|
},
|
|
"API key query": {
|
|
"in": "query",
|
|
"name": "x-api-key",
|
|
"type": "apiKey"
|
|
},
|
|
"OAuth2PasswordBearerCookie": {
|
|
"flows": {
|
|
"password": {
|
|
"scopes": {},
|
|
"tokenUrl": "api/v1/login"
|
|
}
|
|
},
|
|
"type": "oauth2"
|
|
}
|
|
}
|
|
},
|
|
"info": {
|
|
"title": "Langflow",
|
|
"version": "1.10.0"
|
|
},
|
|
"openapi": "3.1.0",
|
|
"paths": {
|
|
"/api/v1/agentic/assist": {
|
|
"post": {
|
|
"description": "Chat with the Langflow Assistant.",
|
|
"operationId": "assist_api_v1_agentic_assist_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssistantRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Assist Api V1 Agentic Assist Post",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Assist",
|
|
"tags": [
|
|
"Agentic"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/agentic/assist/stream": {
|
|
"post": {
|
|
"description": "Chat with the Langflow Assistant with streaming progress updates.",
|
|
"operationId": "assist_stream_api_v1_agentic_assist_stream_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssistantRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Assist Stream",
|
|
"tags": [
|
|
"Agentic"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/agentic/check-config": {
|
|
"get": {
|
|
"description": "Check if the Langflow Assistant is properly configured.<br><br>Returns available providers with their configured status and available models.",
|
|
"operationId": "check_assistant_config_api_v1_agentic_check_config_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Check Assistant Config Api V1 Agentic Check Config Get",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Check Assistant Config",
|
|
"tags": [
|
|
"Agentic"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/agentic/execute/{flow_name}": {
|
|
"post": {
|
|
"description": "Execute a named flow from the flows directory.<br><br>Named assistant flows embed an Agent that needs provider/model/api-key<br>context. Resolving it here (instead of running the raw file) turns a<br>silent 500 into a successful run, or a clear 4xx when no provider is set.",
|
|
"operationId": "execute_named_flow_api_v1_agentic_execute__flow_name__post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Flow Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AssistantRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Execute Named Flow Api V1 Agentic Execute Flow Name Post",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Execute Named Flow",
|
|
"tags": [
|
|
"Agentic"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/agentic/files": {
|
|
"get": {
|
|
"description": "Return the contents of a sandboxed file as text (or as an attachment).<br><br>Raises:<br> HTTPException(400): The path shape is invalid (traversal, absolute,<br> null byte, etc.). No I/O is attempted.<br> HTTPException(404): The file does not exist in the requesting user's<br> sandbox. Same status for sandbox-internal \"not found\" and for<br> \"path resolves outside the user namespace\" — by design, to avoid<br> leaking namespace existence to another tenant.<br> HTTPException(413): The file is larger than ``MAX_FILE_SIZE_BYTES``.<br> HTTPException(415): The file is binary (null byte in the first 8 KiB).",
|
|
"operationId": "get_file_api_v1_agentic_files_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "path",
|
|
"required": true,
|
|
"schema": {
|
|
"maxLength": 1024,
|
|
"minLength": 1,
|
|
"title": "Path",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "download",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Download",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get File",
|
|
"tags": [
|
|
"Agentic"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/agentic/sessions/reset": {
|
|
"post": {
|
|
"description": "Drop the calling user's session-scoped state.<br><br>Wipes:<br> - conversation buffer for ``session_id`` (if provided).<br> - registered components under the user's FS sandbox.<br><br>The user id is sourced from the authenticated session — the<br>``session_id`` query parameter only addresses the conversation<br>buffer entry and is never trusted for path resolution.<br><br>Returns a small envelope describing what was cleared, sufficient<br>for ops/log correlation but stripped of anything sensitive:<br><br>```<br>{\"status\": \"ok\", \"components_cleared\": <int>, \"session_id\": <str|null>}<br>```",
|
|
"operationId": "reset_session_api_v1_agentic_sessions_reset_post",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "session_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"maxLength": 128,
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Reset Session Api V1 Agentic Sessions Reset Post",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Reset Session",
|
|
"tags": [
|
|
"agentic"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/all": {
|
|
"get": {
|
|
"description": "Retrieve all component types with compression for better performance.<br><br>Returns a compressed response containing all available component types,<br>with display_names translated to the locale indicated by Accept-Language.",
|
|
"operationId": "get_all_api_v1_all_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get All",
|
|
"tags": [
|
|
"Base"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/audit": {
|
|
"get": {
|
|
"description": "Return a paginated slice of the audit log filtered by the given query params.<br><br>Superuser only. The composite indexes on ``(user_id, timestamp)`` and<br>``(resource_type, resource_id)`` keep both \"show me events for user X\"<br>and \"show me events on resource Y\" fast at scale.",
|
|
"operationId": "list_audit_log_api_v1_authz_audit_get",
|
|
"parameters": [
|
|
{
|
|
"description": "Filter by acting user id.",
|
|
"in": "query",
|
|
"name": "user_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by acting user id.",
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by resource type slug, e.g. ``flow`` or ``deployment``.",
|
|
"in": "query",
|
|
"name": "resource_type",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by resource type slug, e.g. ``flow`` or ``deployment``.",
|
|
"title": "Resource Type"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by resource UUID.",
|
|
"in": "query",
|
|
"name": "resource_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by resource UUID.",
|
|
"title": "Resource Id"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by action string, e.g. ``flow:read`` or ``share:create``.",
|
|
"in": "query",
|
|
"name": "action",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by action string, e.g. ``flow:read`` or ``share:create``.",
|
|
"title": "Action"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by decision result (``allow`` / ``deny`` / ``owner_override``).",
|
|
"in": "query",
|
|
"name": "result",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by decision result (``allow`` / ``deny`` / ``owner_override``).",
|
|
"title": "Result"
|
|
}
|
|
},
|
|
{
|
|
"description": "Inclusive lower bound on ``timestamp``.",
|
|
"in": "query",
|
|
"name": "since",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Inclusive lower bound on ``timestamp``.",
|
|
"title": "Since"
|
|
}
|
|
},
|
|
{
|
|
"description": "Exclusive upper bound on ``timestamp``.",
|
|
"in": "query",
|
|
"name": "until",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Exclusive upper bound on ``timestamp``.",
|
|
"title": "Until"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "page",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 1,
|
|
"minimum": 1,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "size",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 50,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AuthzAuditPage"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Audit Log",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/audit/": {
|
|
"get": {
|
|
"description": "Return a paginated slice of the audit log filtered by the given query params.<br><br>Superuser only. The composite indexes on ``(user_id, timestamp)`` and<br>``(resource_type, resource_id)`` keep both \"show me events for user X\"<br>and \"show me events on resource Y\" fast at scale.",
|
|
"operationId": "list_audit_log_api_v1_authz_audit__get",
|
|
"parameters": [
|
|
{
|
|
"description": "Filter by acting user id.",
|
|
"in": "query",
|
|
"name": "user_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by acting user id.",
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by resource type slug, e.g. ``flow`` or ``deployment``.",
|
|
"in": "query",
|
|
"name": "resource_type",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by resource type slug, e.g. ``flow`` or ``deployment``.",
|
|
"title": "Resource Type"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by resource UUID.",
|
|
"in": "query",
|
|
"name": "resource_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by resource UUID.",
|
|
"title": "Resource Id"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by action string, e.g. ``flow:read`` or ``share:create``.",
|
|
"in": "query",
|
|
"name": "action",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by action string, e.g. ``flow:read`` or ``share:create``.",
|
|
"title": "Action"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by decision result (``allow`` / ``deny`` / ``owner_override``).",
|
|
"in": "query",
|
|
"name": "result",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by decision result (``allow`` / ``deny`` / ``owner_override``).",
|
|
"title": "Result"
|
|
}
|
|
},
|
|
{
|
|
"description": "Inclusive lower bound on ``timestamp``.",
|
|
"in": "query",
|
|
"name": "since",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Inclusive lower bound on ``timestamp``.",
|
|
"title": "Since"
|
|
}
|
|
},
|
|
{
|
|
"description": "Exclusive upper bound on ``timestamp``.",
|
|
"in": "query",
|
|
"name": "until",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Exclusive upper bound on ``timestamp``.",
|
|
"title": "Until"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "page",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 1,
|
|
"minimum": 1,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "size",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 50,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/AuthzAuditPage"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Audit Log",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/me/permissions": {
|
|
"post": {
|
|
"description": "Return per-resource allowed actions for the current user.<br><br>Use this to render the UI permission gate (greyed-out buttons etc.) without<br>flooding the audit log with denied probes. Empty list for a resource_id<br>means the user cannot perform any of the requested actions on that resource.",
|
|
"operationId": "get_effective_permissions_api_v1_authz_me_permissions_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EffectivePermissionsRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EffectivePermissionsResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Effective Permissions",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/role-assignments": {
|
|
"get": {
|
|
"description": "List role assignments scoped to one user.<br><br>* Omitting ``user_id`` defaults to the caller — no superuser needed.<br>* Passing ``user_id == self.id`` is the same as omitting it.<br>* Passing a different ``user_id`` requires superuser; otherwise 403.<br><br>Results are always filtered by the resolved ``user_id``. Admins who need<br>cross-user lookups make one call per user. Paginated via ``limit`` /<br>``offset`` (default 100, max 200).",
|
|
"operationId": "list_assignments_api_v1_authz_role_assignments_get",
|
|
"parameters": [
|
|
{
|
|
"description": "Filter by user",
|
|
"in": "query",
|
|
"name": "user_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by user",
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by role",
|
|
"in": "query",
|
|
"name": "role_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by role",
|
|
"title": "Role Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "domain_type",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Domain Type"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "domain_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Domain Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/RoleAssignmentRead"
|
|
},
|
|
"title": "Response List Assignments Api V1 Authz Role Assignments Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Assignments",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Assign a role to a user. Superuser-only.",
|
|
"operationId": "create_assignment_api_v1_authz_role_assignments_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleAssignmentCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleAssignmentRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Assignment",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/role-assignments/": {
|
|
"get": {
|
|
"description": "List role assignments scoped to one user.<br><br>* Omitting ``user_id`` defaults to the caller — no superuser needed.<br>* Passing ``user_id == self.id`` is the same as omitting it.<br>* Passing a different ``user_id`` requires superuser; otherwise 403.<br><br>Results are always filtered by the resolved ``user_id``. Admins who need<br>cross-user lookups make one call per user. Paginated via ``limit`` /<br>``offset`` (default 100, max 200).",
|
|
"operationId": "list_assignments_api_v1_authz_role_assignments__get",
|
|
"parameters": [
|
|
{
|
|
"description": "Filter by user",
|
|
"in": "query",
|
|
"name": "user_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by user",
|
|
"title": "User Id"
|
|
}
|
|
},
|
|
{
|
|
"description": "Filter by role",
|
|
"in": "query",
|
|
"name": "role_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by role",
|
|
"title": "Role Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "domain_type",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Domain Type"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "domain_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Domain Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/RoleAssignmentRead"
|
|
},
|
|
"title": "Response List Assignments Api V1 Authz Role Assignments Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Assignments",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Assign a role to a user. Superuser-only.",
|
|
"operationId": "create_assignment_api_v1_authz_role_assignments__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleAssignmentCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleAssignmentRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Assignment",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/role-assignments/{assignment_id}": {
|
|
"delete": {
|
|
"description": "Revoke a role assignment. Superuser-only.",
|
|
"operationId": "delete_assignment_api_v1_authz_role_assignments__assignment_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "assignment_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Assignment Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Assignment",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/roles": {
|
|
"get": {
|
|
"description": "List roles. Open to authenticated users so the UI can populate dropdowns.<br><br>Paginated via ``limit`` / ``offset`` so a single call cannot return the<br>entire catalog of roles + their permissions. Stable order is ``(name, id)``<br>so ``offset`` is deterministic across calls.",
|
|
"operationId": "list_roles_api_v1_authz_roles_get",
|
|
"parameters": [
|
|
{
|
|
"description": "Filter by is_system flag",
|
|
"in": "query",
|
|
"name": "is_system",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by is_system flag",
|
|
"title": "Is System"
|
|
}
|
|
},
|
|
{
|
|
"description": "Substring match on role name",
|
|
"in": "query",
|
|
"name": "name",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Substring match on role name",
|
|
"title": "Name"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/RoleRead"
|
|
},
|
|
"title": "Response List Roles Api V1 Authz Roles Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Roles",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Create a custom (non-system) role. Superuser-only.",
|
|
"operationId": "create_role_api_v1_authz_roles_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Role",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/roles/": {
|
|
"get": {
|
|
"description": "List roles. Open to authenticated users so the UI can populate dropdowns.<br><br>Paginated via ``limit`` / ``offset`` so a single call cannot return the<br>entire catalog of roles + their permissions. Stable order is ``(name, id)``<br>so ``offset`` is deterministic across calls.",
|
|
"operationId": "list_roles_api_v1_authz_roles__get",
|
|
"parameters": [
|
|
{
|
|
"description": "Filter by is_system flag",
|
|
"in": "query",
|
|
"name": "is_system",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Filter by is_system flag",
|
|
"title": "Is System"
|
|
}
|
|
},
|
|
{
|
|
"description": "Substring match on role name",
|
|
"in": "query",
|
|
"name": "name",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Substring match on role name",
|
|
"title": "Name"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/RoleRead"
|
|
},
|
|
"title": "Response List Roles Api V1 Authz Roles Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Roles",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Create a custom (non-system) role. Superuser-only.",
|
|
"operationId": "create_role_api_v1_authz_roles__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Role",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/roles/{role_id}": {
|
|
"delete": {
|
|
"description": "Delete a custom role.<br><br>System roles cannot be deleted; roles with active assignments return 409<br>(delete the assignments first).",
|
|
"operationId": "delete_role_api_v1_authz_roles__role_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "role_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Role Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Role",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"get": {
|
|
"operationId": "read_role_api_v1_authz_roles__role_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "role_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Role Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Role",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"patch": {
|
|
"description": "Update fields on a custom role. System roles are read-only.",
|
|
"operationId": "update_role_api_v1_authz_roles__role_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "role_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Role Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RoleRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Role",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/shares": {
|
|
"get": {
|
|
"description": "List share rows visible to the caller (paginated, max 200).",
|
|
"operationId": "list_shares_api_v1_authz_shares_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "resource_type",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Resource Type"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "resource_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Resource Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "target_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Target Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "scope",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Scope"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/ShareRead"
|
|
},
|
|
"title": "Response List Shares Api V1 Authz Shares Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Shares",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Create an authz_share row for a resource.",
|
|
"operationId": "create_share_api_v1_authz_shares_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Share",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/shares/": {
|
|
"get": {
|
|
"description": "List share rows visible to the caller (paginated, max 200).",
|
|
"operationId": "list_shares_api_v1_authz_shares__get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "resource_type",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Resource Type"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "resource_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Resource Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "target_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Target Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "scope",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Scope"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/ShareRead"
|
|
},
|
|
"title": "Response List Shares Api V1 Authz Shares Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Shares",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Create an authz_share row for a resource.",
|
|
"operationId": "create_share_api_v1_authz_shares__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Share",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/shares/{share_id}": {
|
|
"delete": {
|
|
"description": "Revoke an existing share.",
|
|
"operationId": "delete_share_api_v1_authz_shares__share_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "share_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Share Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Share",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Fetch a single share by id with the same visibility rules as list.",
|
|
"operationId": "get_share_api_v1_authz_shares__share_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "share_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Share Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Share",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"patch": {
|
|
"description": "Update the permission level of an existing share.",
|
|
"operationId": "update_share_api_v1_authz_shares__share_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "share_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Share Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ShareRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Share",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/teams": {
|
|
"get": {
|
|
"description": "List teams. Open to any authenticated user (for the share dialog's team picker).<br><br>Paginated via ``limit`` / ``offset`` so a single call cannot enumerate every<br>team. Stable order is ``(team_name, id)`` so ``offset`` is deterministic.",
|
|
"operationId": "list_teams_api_v1_authz_teams_get",
|
|
"parameters": [
|
|
{
|
|
"description": "Substring match on team_name or adom_name",
|
|
"in": "query",
|
|
"name": "search",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Substring match on team_name or adom_name",
|
|
"title": "Search"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "is_active",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Is Active"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/TeamRead"
|
|
},
|
|
"title": "Response List Teams Api V1 Authz Teams Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Teams",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "create_team_api_v1_authz_teams_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Team",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/teams/": {
|
|
"get": {
|
|
"description": "List teams. Open to any authenticated user (for the share dialog's team picker).<br><br>Paginated via ``limit`` / ``offset`` so a single call cannot enumerate every<br>team. Stable order is ``(team_name, id)`` so ``offset`` is deterministic.",
|
|
"operationId": "list_teams_api_v1_authz_teams__get",
|
|
"parameters": [
|
|
{
|
|
"description": "Substring match on team_name or adom_name",
|
|
"in": "query",
|
|
"name": "search",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Substring match on team_name or adom_name",
|
|
"title": "Search"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "is_active",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Is Active"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/TeamRead"
|
|
},
|
|
"title": "Response List Teams Api V1 Authz Teams Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Teams",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "create_team_api_v1_authz_teams__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Team",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/teams/{team_id}": {
|
|
"delete": {
|
|
"operationId": "delete_team_api_v1_authz_teams__team_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "team_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Team",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"get": {
|
|
"operationId": "read_team_api_v1_authz_teams__team_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "team_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Team",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"patch": {
|
|
"operationId": "update_team_api_v1_authz_teams__team_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "team_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Team",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/teams/{team_id}/members": {
|
|
"get": {
|
|
"description": "List members of a team. Any authenticated user (so the UI can render team rosters).<br><br>Paginated via ``limit`` / ``offset`` so a single call cannot enumerate a<br>large team's full roster. Stable order is ``(created_at, user_id)``.",
|
|
"operationId": "list_members_api_v1_authz_teams__team_id__members_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "team_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 100,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "offset",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"minimum": 0,
|
|
"title": "Offset",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/TeamMemberRead"
|
|
},
|
|
"title": "Response List Members Api V1 Authz Teams Team Id Members Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Members",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "add_member_api_v1_authz_teams__team_id__members_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "team_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamMemberCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TeamMemberRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Add Member",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/authz/teams/{team_id}/members/{user_id}": {
|
|
"delete": {
|
|
"operationId": "remove_member_api_v1_authz_teams__team_id__members__user_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "team_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Team Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "path",
|
|
"name": "user_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Remove Member",
|
|
"tags": [
|
|
"Authorization"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/build/{flow_id}/flow": {
|
|
"post": {
|
|
"description": "Build and process a flow, returning a job ID for event polling.<br><br>This endpoint requires authentication through the CurrentActiveUser dependency.<br>For public flows that don't require authentication, use the /build_public_tmp/flow_id/flow endpoint.<br><br>Args:<br> flow_id: UUID of the flow to build<br> background_tasks: Background tasks manager<br> inputs: Optional input values for the flow<br> data: Optional flow data<br> files: Optional files to include<br> stop_component_id: Optional ID of component to stop at<br> start_component_id: Optional ID of component to start from<br> log_builds: Whether to log the build process<br> current_user: The authenticated user<br> queue_service: Queue service for job management<br> flow_name: Optional name for the flow<br> event_delivery: Optional event delivery type - default is streaming<br><br>Returns:<br> Dict with job_id that can be used to poll for build status",
|
|
"operationId": "build_flow_api_v1_build__flow_id__flow_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "stop_component_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Stop Component Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "start_component_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Start Component Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "log_builds",
|
|
"required": false,
|
|
"schema": {
|
|
"default": true,
|
|
"title": "Log Builds",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "flow_name",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Name"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "event_delivery",
|
|
"required": false,
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventDeliveryType",
|
|
"default": "polling"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_build_flow_api_v1_build__flow_id__flow_post"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Build Flow",
|
|
"tags": [
|
|
"Chat"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/build/{job_id}/cancel": {
|
|
"post": {
|
|
"description": "Cancel a specific build job.<br><br>Requires authentication and ownership verification to prevent a user from<br>aborting another user's running build (DoS via job cancellation).<br>Jobs with no registered owner (build_public_tmp) are accessible to any<br>authenticated user, consistent with get_build_events.",
|
|
"operationId": "cancel_build_api_v1_build__job_id__cancel_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "job_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Job Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CancelFlowResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Cancel Build",
|
|
"tags": [
|
|
"Chat"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/build/{job_id}/events": {
|
|
"get": {
|
|
"description": "Get events for a specific build job.<br><br>Requires authentication and ownership verification. A job owner is registered<br>when build_flow is called; if a registered owner does not match the requesting<br>user the endpoint returns 404 to avoid leaking job existence.<br>Jobs started via build_public_tmp have no registered owner and remain accessible<br>to any authenticated user.",
|
|
"operationId": "get_build_events_api_v1_build__job_id__events_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "job_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Job Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "event_delivery",
|
|
"required": false,
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventDeliveryType",
|
|
"default": "streaming"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Build Events",
|
|
"tags": [
|
|
"Chat"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/build_public_tmp/{flow_id}/flow": {
|
|
"post": {
|
|
"description": "Build a public flow without requiring authentication.<br><br>This endpoint is specifically for public flows that don't require authentication.<br>It uses a client_id cookie to create a deterministic flow ID for tracking purposes.<br><br>Security Note:<br>- The 'data' parameter is NOT accepted to prevent flow definition tampering<br>- Public flows must execute the stored flow definition only<br>- The flow definition is always loaded from the database<br>- Caller-supplied 'inputs.session' is namespaced under the (client_id,<br> flow_id) virtual flow ID so an unauthenticated caller cannot address a<br> session that lives outside its own namespace (CVE-2026-33017)<br><br>The endpoint:<br>1. Verifies the requested flow is marked as public in the database<br>2. Creates a deterministic UUID based on client_id and flow_id<br>3. Uses the flow owner's permissions to build the flow<br>4. Always loads the flow definition from the database<br><br>Requirements:<br>- The flow must be marked as PUBLIC in the database<br>- The request must include a client_id cookie<br><br>Args:<br> flow_id: UUID of the public flow to build<br> background_tasks: Background tasks manager<br> inputs: Optional input values for the flow<br> files: Optional files to include<br> stop_component_id: Optional ID of component to stop at<br> start_component_id: Optional ID of component to start from<br> log_builds: Whether to log the build process<br> flow_name: Optional name for the flow<br> request: FastAPI request object (needed for cookie access)<br> queue_service: Queue service for job management<br> authenticated_user: Optional authenticated user (resolved from cookie/token if present)<br> event_delivery: Optional event delivery type - default is streaming<br><br>Returns:<br> Dict with job_id that can be used to poll for build status",
|
|
"operationId": "build_public_tmp_api_v1_build_public_tmp__flow_id__flow_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "stop_component_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Stop Component Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "start_component_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Start Component Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "log_builds",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": true,
|
|
"title": "Log Builds"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "flow_name",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Name"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "event_delivery",
|
|
"required": false,
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventDeliveryType",
|
|
"default": "polling"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_build_public_tmp_api_v1_build_public_tmp__flow_id__flow_post"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Build Public Tmp",
|
|
"tags": [
|
|
"Chat"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/build_public_tmp/{job_id}/cancel": {
|
|
"post": {
|
|
"description": "Cancel a public flow build job.<br><br>This endpoint does not require authentication, matching the public build endpoint.<br>It is used by the shareable playground to cancel builds.",
|
|
"operationId": "cancel_build_public_api_v1_build_public_tmp__job_id__cancel_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "job_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Job Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CancelFlowResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Cancel Build Public",
|
|
"tags": [
|
|
"Chat"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/build_public_tmp/{job_id}/events": {
|
|
"get": {
|
|
"description": "Get events for a public flow build job.<br><br>This endpoint does not require authentication, matching the public build endpoint.<br>It is used by the shareable playground to consume build events.",
|
|
"operationId": "get_build_events_public_api_v1_build_public_tmp__job_id__events_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "job_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Job Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "event_delivery",
|
|
"required": false,
|
|
"schema": {
|
|
"$ref": "#/components/schemas/EventDeliveryType",
|
|
"default": "streaming"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Get Build Events Public",
|
|
"tags": [
|
|
"Chat"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/config": {
|
|
"get": {
|
|
"description": "Retrieve application configuration settings.<br><br>Returns different configuration based on authentication status:<br>- Authenticated users: Full ConfigResponse with all settings<br>- Unauthenticated users: PublicConfigResponse with limited, safe-to-expose settings<br><br>Args:<br> user: The authenticated user, or None if unauthenticated.<br><br>Returns:<br> ConfigResponse | PublicConfigResponse: Configuration settings appropriate for the user's auth status.<br><br>Raises:<br> HTTPException: If an error occurs while retrieving the configuration.",
|
|
"operationId": "get_config_api_v1_config_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/ConfigResponse"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/PublicConfigResponse"
|
|
}
|
|
],
|
|
"title": "Response Get Config Api V1 Config Get"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Config",
|
|
"tags": [
|
|
"Base"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/extensions/events": {
|
|
"get": {
|
|
"description": "Poll for extension lifecycle events the current user has triggered.<br><br>Events are scoped to the authenticated user via a server-derived keyspace<br>(``user:{user_id}``); there is no client-controllable keyspace, so an<br>authenticated user cannot read another user's flow-migration or<br>bundle-reload events. A client-supplied ``keyspace`` query parameter is<br>rejected with 422 so the contract is explicit -- previously the value was<br>silently dropped, which masked client bugs that assumed it had effect.<br><br>svc.since() uses blocking sqlite3; run in a thread pool so the asyncio<br>event loop is not held while waiting on disk I/O.",
|
|
"operationId": "get_extension_events_api_v1_extensions_events_get",
|
|
"parameters": [
|
|
{
|
|
"description": "UTC epoch timestamp; return events after this cursor",
|
|
"in": "query",
|
|
"name": "since",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0.0,
|
|
"description": "UTC epoch timestamp; return events after this cursor",
|
|
"title": "Since",
|
|
"type": "number"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ExtensionEventsResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Extension Events",
|
|
"tags": [
|
|
"Extensions"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/extensions/{extension_id}/bundles/{bundle_name}/reload": {
|
|
"post": {
|
|
"description": "Trigger an atomic-swap reload for a single Bundle.<br><br>Returns the typed :class:`~lfx.extension.reload.ReloadResult` body on<br>success. Per the typed-error contract, structural failures<br>(broken bundle, missing source path, name mismatch) surface as<br>``422 Unprocessable Entity`` with the first typed error in the body<br>so clients can surface fix hints inline; the full ``ReloadResult``<br>payload (with all errors and warnings) is returned via the FastAPI<br>``detail`` envelope. Concurrency-control collisions surface as<br>``409 Conflict`` (``reload-in-progress``). Non-2xx is the wire<br>contract for every error path -- the body still carries the typed<br>error so the client renders the same fix-hint envelope.",
|
|
"operationId": "reload_extension_bundle_api_v1_extensions__extension_id__bundles__bundle_name__reload_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "extension_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Extension Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "path",
|
|
"name": "bundle_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Bundle Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Reload Extension Bundle Api V1 Extensions Extension Id Bundles Bundle Name Reload Post",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Reload Extension Bundle",
|
|
"tags": [
|
|
"Extensions"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/delete/{flow_id}/{file_name}": {
|
|
"delete": {
|
|
"operationId": "delete_file_api_v1_files_delete__flow_id___file_name__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "file_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "File Name",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/download/{flow_id}/{file_name}": {
|
|
"get": {
|
|
"operationId": "download_file_api_v1_files_download__flow_id___file_name__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "file_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "File Name",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Download File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/images/{flow_id}/{file_name}": {
|
|
"get": {
|
|
"description": "Download image from storage for browser rendering.",
|
|
"operationId": "download_image_api_v1_files_images__flow_id___file_name__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "file_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "File Name",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Download Image",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/list/{flow_id}": {
|
|
"get": {
|
|
"operationId": "list_files_api_v1_files_list__flow_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Files",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/profile_pictures/list": {
|
|
"get": {
|
|
"description": "List profile pictures from local filesystem.<br><br>Profile pictures are first looked up in config_dir/profile_pictures/,<br>then fallback to the package's bundled profile_pictures directory.",
|
|
"operationId": "list_profile_pictures_api_v1_files_profile_pictures_list_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"summary": "List Profile Pictures",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/profile_pictures/{folder_name}/{file_name}": {
|
|
"get": {
|
|
"description": "Download profile picture from local filesystem.<br><br>Profile pictures are first looked up in config_dir/profile_pictures/,<br>then fallback to the package's bundled profile_pictures directory.",
|
|
"operationId": "download_profile_picture_api_v1_files_profile_pictures__folder_name___file_name__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "folder_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Folder Name",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "path",
|
|
"name": "file_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "File Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Download Profile Picture",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/files/upload/{flow_id}": {
|
|
"post": {
|
|
"operationId": "upload_file_api_v1_files_upload__flow_id__post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_upload_file_api_v1_files_upload__flow_id__post"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/langflow__api__v1__schemas__UploadFileResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Upload File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/": {
|
|
"delete": {
|
|
"description": "Delete multiple flows by their IDs.",
|
|
"operationId": "delete_multiple_flows_api_v1_flows__delete",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
"title": "Flow Ids",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Multiple Flows",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Retrieve a list of flows with optional pagination, filtering, and header-only mode.",
|
|
"operationId": "read_flows_api_v1_flows__get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "remove_example_flows",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Remove Example Flows",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "components_only",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Components Only",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "get_all",
|
|
"required": false,
|
|
"schema": {
|
|
"default": true,
|
|
"title": "Get All",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "folder_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Folder Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "header_flows",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Header Flows",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "page",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 1,
|
|
"minimum": 1,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "size",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 50,
|
|
"maximum": 100,
|
|
"minimum": 1,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/Page_FlowRead_"
|
|
},
|
|
{
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowHeader"
|
|
},
|
|
"type": "array"
|
|
}
|
|
],
|
|
"title": "Response Read Flows Api V1 Flows Get"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Flows",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "create_flow_api_v1_flows__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Flow",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/basic_examples/": {
|
|
"get": {
|
|
"description": "Retrieve a list of basic example flows.",
|
|
"operationId": "read_basic_examples_api_v1_flows_basic_examples__get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
},
|
|
"title": "Response Read Basic Examples Api V1 Flows Basic Examples Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"summary": "Read Basic Examples",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/batch/": {
|
|
"post": {
|
|
"description": "Create multiple new flows.",
|
|
"operationId": "create_flows_api_v1_flows_batch__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowListCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
},
|
|
"title": "Response Create Flows Api V1 Flows Batch Post",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Flows",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/download/": {
|
|
"post": {
|
|
"description": "Download all flows as a zip file.",
|
|
"operationId": "download_multiple_file_api_v1_flows_download__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
"title": "Flow Ids",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Download Multiple File",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/public_flow/{flow_id}": {
|
|
"get": {
|
|
"description": "Read a public flow without requiring authorization (public means public).",
|
|
"operationId": "read_public_flow_api_v1_flows_public_flow__flow_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Read Public Flow",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/upload/": {
|
|
"post": {
|
|
"description": "Upload flows from a JSON or ZIP file (upsert semantics for flows with stable IDs).",
|
|
"operationId": "upload_file_api_v1_flows_upload__post",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "folder_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Folder Id"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_upload_file_api_v1_flows_upload__post"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
},
|
|
"title": "Response Upload File Api V1 Flows Upload Post",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Upload File",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/{flow_id}": {
|
|
"delete": {
|
|
"description": "Delete a flow.",
|
|
"operationId": "delete_flow_api_v1_flows__flow_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Flow",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Read a flow.",
|
|
"operationId": "read_flow_api_v1_flows__flow_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Flow",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
},
|
|
"patch": {
|
|
"description": "Update a flow.",
|
|
"operationId": "update_flow_api_v1_flows__flow_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Flow",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
},
|
|
"put": {
|
|
"description": "Create or update a flow with a specific ID (upsert).<br><br>Returns 201 for creation, 200 for update. Returns 404 if owned by another user.",
|
|
"operationId": "upsert_flow_api_v1_flows__flow_id__put",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Upsert Flow",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/{flow_id}/events": {
|
|
"get": {
|
|
"operationId": "get_flow_events_api_v1_flows__flow_id__events_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "UTC timestamp to get events after",
|
|
"in": "query",
|
|
"name": "since",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0.0,
|
|
"description": "UTC timestamp to get events after",
|
|
"title": "Since",
|
|
"type": "number"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowEventsResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Flow Events",
|
|
"tags": [
|
|
"Flow Events"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Append an event to a flow's event queue.",
|
|
"operationId": "create_flow_event_api_v1_flows__flow_id__events_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowEventCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FlowEventResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Flow Event",
|
|
"tags": [
|
|
"Flow Events"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/flows/{flow_id}/note_translations": {
|
|
"get": {
|
|
"description": "Return translated note node descriptions for the current locale.<br><br>Returns a mapping of node_id → translated markdown text. Only nodes<br>with a matching translation key are included; nodes without translations<br>are omitted so the caller can leave them unchanged.<br><br>A missing or inaccessible flow yields 404 (via ``AuthorizedReadFlow``),<br>consistent with ``GET /flows/{id}``; the sole frontend caller (NoteNode)<br>treats that as \"no translations\" and renders the original text.",
|
|
"operationId": "get_note_translations_api_v1_flows__flow_id__note_translations_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"title": "Response Get Note Translations Api V1 Flows Flow Id Note Translations Get",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Note Translations",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/mcp/project/{project_id}": {
|
|
"get": {
|
|
"description": "List project MCP tools.",
|
|
"operationId": "list_project_tools_api_v1_mcp_project__project_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "mcp_enabled",
|
|
"required": false,
|
|
"schema": {
|
|
"default": true,
|
|
"title": "Mcp Enabled",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Project Tools",
|
|
"tags": [
|
|
"mcp_projects"
|
|
]
|
|
},
|
|
"patch": {
|
|
"description": "Update the MCP settings of all flows in a project and project-level auth settings.<br><br>On MCP Composer failure, this endpoint should return with a 200 status code and an error message in<br>the body of the response to display to the user.",
|
|
"operationId": "update_project_mcp_settings_api_v1_mcp_project__project_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MCPProjectUpdateRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Project Mcp Settings",
|
|
"tags": [
|
|
"mcp_projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/mcp/project/{project_id}/composer-url": {
|
|
"get": {
|
|
"description": "Get the MCP Composer URL for a specific project.<br><br>On failure, this endpoint should return with a 200 status code and an error message in<br>the body of the response to display to the user.",
|
|
"operationId": "get_project_composer_url_api_v1_mcp_project__project_id__composer_url_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/ComposerUrlResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Project Composer Url",
|
|
"tags": [
|
|
"mcp_projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/mcp/project/{project_id}/install": {
|
|
"post": {
|
|
"description": "Install MCP server configuration for Cursor, Windsurf, or Claude.",
|
|
"operationId": "install_mcp_config_api_v1_mcp_project__project_id__install_post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MCPInstallRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Install Mcp Config",
|
|
"tags": [
|
|
"mcp_projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/mcp/project/{project_id}/installed": {
|
|
"get": {
|
|
"description": "Check if MCP server configuration is installed for this project in Cursor, Windsurf, or Claude.",
|
|
"operationId": "check_installed_mcp_servers_api_v1_mcp_project__project_id__installed_get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Check Installed Mcp Servers",
|
|
"tags": [
|
|
"mcp_projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/builds": {
|
|
"delete": {
|
|
"operationId": "delete_vertex_builds_api_v1_monitor_builds_delete",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Vertex Builds",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
},
|
|
"get": {
|
|
"operationId": "get_vertex_builds_api_v1_monitor_builds_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/VertexBuildMapModel"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Vertex Builds",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/job_queue": {
|
|
"get": {
|
|
"description": "Return a snapshot of job-queue observability metrics.<br><br>For the in-memory backend this exposes only ``backend`` and ``active_jobs``.<br>For the Redis backend the snapshot also includes bridge counts, consumer<br>wrappers, cancel-dispatcher liveness, and the cancel-stats counters<br>(``published`` / ``marker_hit`` / ``dispatched_owned`` /<br>``dispatched_foreign`` / ``publish_errors`` / ``dispatcher_reconnects`` /<br>``polling_watchdog_kills`` / ``activity_touch_errors`` /<br>``activity_get_errors`` / ``activity_parse_errors`` /<br>``dispatcher_internal_errors``). ``dispatcher_reconnects`` tracks explicit<br>dispatcher-loop retries and redis-py transparent pubsub reconnect callbacks.<br><br>Restricted to superusers because the snapshot exposes process-wide tenant<br>activity (live job counts, cancel rates) — useful for ops, sensitive in<br>multi-tenant deployments.",
|
|
"operationId": "job_queue_metrics_api_v1_monitor_job_queue_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Job Queue Metrics Api V1 Monitor Job Queue Get",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Job Queue Metrics",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages": {
|
|
"delete": {
|
|
"operationId": "delete_messages_api_v1_monitor_messages_delete",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
"title": "Message Ids",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Messages",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
},
|
|
"get": {
|
|
"operationId": "get_messages_api_v1_monitor_messages_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "session_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "sender",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Sender"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "sender_name",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Sender Name"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "order_by",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "timestamp",
|
|
"title": "Order By"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/MessageResponse"
|
|
},
|
|
"title": "Response Get Messages Api V1 Monitor Messages Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Messages",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/session/{old_session_id}": {
|
|
"patch": {
|
|
"operationId": "update_session_id_api_v1_monitor_messages_session__old_session_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "old_session_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Old Session Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "The new session ID to update to",
|
|
"in": "query",
|
|
"name": "new_session_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The new session ID to update to",
|
|
"title": "New Session Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/MessageResponse"
|
|
},
|
|
"title": "Response Update Session Id Api V1 Monitor Messages Session Old Session Id Patch",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Session Id",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/session/{session_id}": {
|
|
"delete": {
|
|
"description": "Delete messages for a single session.<br><br>Only deletes messages from sessions belonging to flows owned by the current user.",
|
|
"operationId": "delete_messages_session_api_v1_monitor_messages_session__session_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "session_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Session Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Messages Session",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/sessions": {
|
|
"delete": {
|
|
"description": "Bulk delete messages for multiple sessions at once.<br><br>Only deletes messages from sessions belonging to flows owned by the current user.<br><br>Args:<br> session_ids: List of session IDs to delete (max 500)<br> session: Database session<br> current_user: Current authenticated user<br><br>Returns:<br> Confirmation message with count of deleted sessions<br><br>Raises:<br> HTTPException: 400 if session_ids list exceeds 500 items<br> HTTPException: 500 if database operation fails",
|
|
"operationId": "delete_messages_sessions_api_v1_monitor_messages_sessions_delete",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Session Ids",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Messages Sessions",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
},
|
|
"get": {
|
|
"operationId": "get_message_sessions_api_v1_monitor_messages_sessions_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Id"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Response Get Message Sessions Api V1 Monitor Messages Sessions Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Message Sessions",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/shared": {
|
|
"get": {
|
|
"description": "Get messages for a shared/public flow, scoped to the authenticated user.<br><br>Uses a deterministic virtual flow_id derived from the user's ID and the<br>original flow ID. Only messages stored under this virtual flow_id are returned.",
|
|
"operationId": "get_shared_messages_api_v1_monitor_messages_shared_get",
|
|
"parameters": [
|
|
{
|
|
"description": "The original public flow ID",
|
|
"in": "query",
|
|
"name": "source_flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The original public flow ID",
|
|
"format": "uuid",
|
|
"title": "Source Flow Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "session_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "order_by",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "timestamp",
|
|
"title": "Order By"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/MessageResponse"
|
|
},
|
|
"title": "Response Get Shared Messages Api V1 Monitor Messages Shared Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Shared Messages",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/shared/session/{old_session_id}": {
|
|
"patch": {
|
|
"description": "Rename a session on a shared/public flow, scoped to the authenticated user.",
|
|
"operationId": "rename_shared_session_api_v1_monitor_messages_shared_session__old_session_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "old_session_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Old Session Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "The new session ID",
|
|
"in": "query",
|
|
"name": "new_session_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The new session ID",
|
|
"title": "New Session Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "The original public flow ID",
|
|
"in": "query",
|
|
"name": "source_flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The original public flow ID",
|
|
"format": "uuid",
|
|
"title": "Source Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/MessageResponse"
|
|
},
|
|
"title": "Response Rename Shared Session Api V1 Monitor Messages Shared Session Old Session Id Patch",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Rename Shared Session",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/shared/session/{session_id}": {
|
|
"delete": {
|
|
"description": "Delete messages for a session on a shared/public flow, scoped to the authenticated user.",
|
|
"operationId": "delete_shared_messages_session_api_v1_monitor_messages_shared_session__session_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "session_id",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Session Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "The original public flow ID",
|
|
"in": "query",
|
|
"name": "source_flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The original public flow ID",
|
|
"format": "uuid",
|
|
"title": "Source Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Shared Messages Session",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/shared/sessions": {
|
|
"get": {
|
|
"description": "Get session IDs for a shared/public flow, scoped to the authenticated user.<br><br>Uses a deterministic virtual flow_id derived from the user's ID and the<br>original flow ID. Only messages stored under this virtual flow_id are returned.",
|
|
"operationId": "get_shared_message_sessions_api_v1_monitor_messages_shared_sessions_get",
|
|
"parameters": [
|
|
{
|
|
"description": "The original public flow ID",
|
|
"in": "query",
|
|
"name": "source_flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The original public flow ID",
|
|
"format": "uuid",
|
|
"title": "Source Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"title": "Response Get Shared Message Sessions Api V1 Monitor Messages Shared Sessions Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Shared Message Sessions",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/shared/{message_id}": {
|
|
"put": {
|
|
"description": "Update a message on a shared/public flow, scoped to the authenticated user.",
|
|
"operationId": "update_shared_message_api_v1_monitor_messages_shared__message_id__put",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "message_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Message Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "The original public flow ID",
|
|
"in": "query",
|
|
"name": "source_flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"description": "The original public flow ID",
|
|
"format": "uuid",
|
|
"title": "Source Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Shared Message",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/messages/{message_id}": {
|
|
"put": {
|
|
"operationId": "update_message_api_v1_monitor_messages__message_id__put",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "message_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Message Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MessageRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Message",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/traces": {
|
|
"delete": {
|
|
"description": "Delete all traces for a flow.<br><br>Args:<br> flow_id: The ID of the flow whose traces should be deleted.<br> current_user: The authenticated user (required for authorization).",
|
|
"operationId": "delete_traces_by_flow_api_v1_monitor_traces_delete",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Traces By Flow",
|
|
"tags": [
|
|
"Traces"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Get list of traces for a flow.<br><br>Args:<br> current_user: Authenticated user (required for authorization)<br> flow_id: Filter by flow ID<br> session_id: Filter by session ID<br> status: Filter by trace status<br> query: Search query for trace name/id/session id<br> start_time: Filter traces starting on/after this time (ISO)<br> end_time: Filter traces starting on/before this time (ISO)<br> page: Page number (1-based)<br> size: Page size<br><br>Returns:<br> List of traces",
|
|
"operationId": "get_traces_api_v1_monitor_traces_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Flow Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "session_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Session Id"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "status",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/SpanStatus"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Status"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "query",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Query"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "start_time",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Start Time"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "end_time",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"format": "date-time",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "End Time"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "page",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 1,
|
|
"minimum": 0,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "size",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 50,
|
|
"maximum": 200,
|
|
"minimum": 1,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TraceListResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Traces",
|
|
"tags": [
|
|
"Traces"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/traces/{trace_id}": {
|
|
"delete": {
|
|
"description": "Delete a trace and all its spans.<br><br>Args:<br> trace_id: The ID of the trace to delete.<br> current_user: The authenticated user (required for authorization).",
|
|
"operationId": "delete_trace_api_v1_monitor_traces__trace_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "trace_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Trace Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Trace",
|
|
"tags": [
|
|
"Traces"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Get a single trace with its hierarchical span tree.<br><br>Args:<br> trace_id: The ID of the trace to retrieve.<br> current_user: The authenticated user (required for authorization).<br><br>Returns:<br> TraceRead containing the trace and its hierarchical span tree.",
|
|
"operationId": "get_trace_api_v1_monitor_traces__trace_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "trace_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Trace Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TraceRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Trace",
|
|
"tags": [
|
|
"Traces"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/monitor/transactions": {
|
|
"get": {
|
|
"operationId": "get_transactions_api_v1_monitor_transactions_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "flow_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"description": "Page number",
|
|
"in": "query",
|
|
"name": "page",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 1,
|
|
"description": "Page number",
|
|
"minimum": 1,
|
|
"title": "Page",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"description": "Page size",
|
|
"in": "query",
|
|
"name": "size",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 50,
|
|
"description": "Page size",
|
|
"maximum": 100,
|
|
"minimum": 1,
|
|
"title": "Size",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Page_TransactionLogsResponse_"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Transactions",
|
|
"tags": [
|
|
"Monitor"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/projects/": {
|
|
"get": {
|
|
"operationId": "read_projects_api_v1_projects__get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/FolderRead"
|
|
},
|
|
"title": "Response Read Projects Api V1 Projects Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Projects",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "create_project_api_v1_projects__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FolderCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FolderRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Project",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/projects/download/{project_id}": {
|
|
"get": {
|
|
"description": "Download all flows from project as a zip file.",
|
|
"operationId": "download_file_api_v1_projects_download__project_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Download File",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/projects/upload/": {
|
|
"post": {
|
|
"description": "Upload flows from a file.<br><br>Accepts either a JSON file with project metadata (folder_name, folder_description, flows)<br>or a ZIP file containing individual flow JSON files (as produced by the download endpoint).",
|
|
"operationId": "upload_file_api_v1_projects_upload__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_upload_file_api_v1_projects_upload__post"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/FlowRead"
|
|
},
|
|
"title": "Response Upload File Api V1 Projects Upload Post",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Upload File",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/projects/{project_id}": {
|
|
"delete": {
|
|
"operationId": "delete_project_api_v1_projects__project_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"204": {
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Project",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
},
|
|
"get": {
|
|
"operationId": "read_project_api_v1_projects__project_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "page",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Page"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "size",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Size"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "is_component",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Is Component",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "is_flow",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Is Flow",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "search",
|
|
"required": false,
|
|
"schema": {
|
|
"default": "",
|
|
"title": "Search",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"$ref": "#/components/schemas/FolderWithPaginatedFlows"
|
|
},
|
|
{
|
|
"$ref": "#/components/schemas/FolderReadWithFlows"
|
|
}
|
|
],
|
|
"title": "Response Read Project Api V1 Projects Project Id Get"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Project",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
},
|
|
"patch": {
|
|
"operationId": "update_project_api_v1_projects__project_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "project_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "Project Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FolderUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/FolderRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Project",
|
|
"tags": [
|
|
"Projects"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/responses": {
|
|
"post": {
|
|
"description": "Create a response using OpenAI Responses API format.<br><br>This endpoint accepts a flow_id in the model parameter and processes<br>the input through the specified Langflow flow.<br><br>Args:<br> request: OpenAI Responses API request with model (flow_id) and input<br> background_tasks: FastAPI background task manager<br> api_key_user: Authenticated user from API key<br> http_request: The incoming HTTP request<br> telemetry_service: Telemetry service for logging<br><br>Returns:<br> OpenAI-compatible response or streaming response<br><br>Raises:<br> HTTPException: For validation errors or flow execution issues",
|
|
"operationId": "create_response_api_v1_responses_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OpenAIResponsesRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Create Response",
|
|
"tags": [
|
|
"OpenAI Responses API"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/run/advanced/{flow_id_or_name}": {
|
|
"post": {
|
|
"description": "Executes a specified flow by ID with optional input values, output selection, tweaks, and streaming capability.<br><br>This endpoint supports running flows with caching to enhance performance and efficiency.<br><br>### Parameters:<br>- `flow` (Flow): The flow object to be executed, resolved via dependency injection.<br>- `inputs` (List[InputValueRequest], optional): A list of inputs specifying the input values and components<br> for the flow. Each input can target specific components and provide custom values.<br>- `outputs` (List[str], optional): A list of output names to retrieve from the executed flow.<br> If not provided, all outputs are returned.<br>- `tweaks` (Optional[Tweaks], optional): A dictionary of tweaks to customize the flow execution.<br> The tweaks can be used to modify the flow's parameters and components.<br> Tweaks can be overridden by the input values.<br>- `stream` (bool, optional): Specifies whether the results should be streamed. Defaults to False.<br>- `session_id` (Union[None, str], optional): An optional session ID to utilize existing session data for the flow<br> execution.<br>- `api_key_user` (User): The user associated with the current API key. Automatically resolved from the API key.<br><br>### Returns:<br>A `RunResponse` object containing the selected outputs (or all if not specified) of the executed flow<br>and the session ID.<br>The structure of the response accommodates multiple inputs, providing a nested list of outputs for each input.<br><br>### Raises:<br>HTTPException: Indicates issues with finding the specified flow, invalid input formats, or internal errors during<br>flow execution.<br><br>### Example usage:<br>```json<br>POST /run/flow_id<br>x-api-key: YOUR_API_KEY<br>Payload:<br>{<br> \"inputs\": [<br> {\"components\": [\"component1\"], \"input_value\": \"value1\"},<br> {\"components\": [\"component3\"], \"input_value\": \"value2\"}<br> ],<br> \"outputs\": [\"Component Name\", \"component_id\"],<br> \"tweaks\": {\"parameter_name\": \"value\", \"Component Name\": {\"parameter_name\": \"value\"}, \"component_id\": {\"parameter_name\": \"value\"}}<br> \"stream\": false<br>}<br>```<br><br>This endpoint facilitates complex flow executions with customized inputs, outputs, and configurations,<br>catering to diverse application requirements.",
|
|
"operationId": "experimental_run_flow_api_v1_run_advanced__flow_id_or_name__post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id_or_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Flow Id Or Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_experimental_run_flow_api_v1_run_advanced__flow_id_or_name__post"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/RunResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Experimental Run Flow",
|
|
"tags": [
|
|
"Base"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/run/{flow_id_or_name}": {
|
|
"post": {
|
|
"description": "Executes a specified flow by ID with support for streaming and telemetry (API key auth).<br><br>This endpoint executes a flow identified by ID or name, with options for streaming the response<br>and tracking execution metrics. It handles both streaming and non-streaming execution modes.<br>This endpoint uses API key authentication (Bearer token).<br><br>Args:<br> background_tasks (BackgroundTasks): FastAPI background task manager<br> flow (FlowRead | None): The flow to execute, loaded via dependency<br> input_request (SimplifiedAPIRequest | None): Input parameters for the flow<br> stream (bool): Whether to stream the response<br> api_key_user (UserRead): Authenticated user from API key<br> context (dict | None): Optional context to pass to the flow<br> http_request (Request): The incoming HTTP request for extracting global variables<br><br>Returns:<br> Union[StreamingResponse, RunResponse]: Either a streaming response for real-time results<br> or a RunResponse with the complete execution results<br><br>Raises:<br> HTTPException: For flow not found (404) or invalid input (400)<br> APIException: For internal execution errors (500)<br><br>Notes:<br> - Supports both streaming and non-streaming execution modes<br> - Tracks execution time and success/failure via telemetry<br> - Handles graceful client disconnection in streaming mode<br> - Provides detailed error handling with appropriate HTTP status codes<br> - Extracts global variables from HTTP headers with prefix X-LANGFLOW-GLOBAL-VAR-*<br> - Merges extracted variables with the context parameter as \"request_variables\"<br> - In streaming mode, uses EventManager to handle events:<br> - \"add_message\": New messages during execution<br> - \"token\": Individual tokens during streaming<br> - \"end\": Final execution result<br> - Authentication: Requires API key (Bearer token)",
|
|
"operationId": "simplified_run_flow_api_v1_run__flow_id_or_name__post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id_or_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Flow Id Or Name",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "stream",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Stream",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_simplified_run_flow_api_v1_run__flow_id_or_name__post"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Simplified Run Flow",
|
|
"tags": [
|
|
"Base"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/starter-projects/": {
|
|
"get": {
|
|
"description": "Get a list of starter projects.",
|
|
"operationId": "get_starter_projects_api_v1_starter_projects__get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/GraphDumpResponse"
|
|
},
|
|
"title": "Response Get Starter Projects Api V1 Starter Projects Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Starter Projects",
|
|
"tags": [
|
|
"Flows"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/users/": {
|
|
"get": {
|
|
"description": "Retrieve a list of users from the database with pagination.",
|
|
"operationId": "read_all_users_api_v1_users__get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "skip",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"title": "Skip",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "limit",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 10,
|
|
"title": "Limit",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "search",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Search"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UsersResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read All Users",
|
|
"tags": [
|
|
"Users"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Add a new user to the database.<br><br>This endpoint allows public user registration (sign up).<br>User activation is controlled by the NEW_USER_IS_ACTIVE setting.",
|
|
"operationId": "add_user_api_v1_users__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserCreate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Add User",
|
|
"tags": [
|
|
"Users"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/users/whoami": {
|
|
"get": {
|
|
"description": "Retrieve the current user's data.",
|
|
"operationId": "read_current_user_api_v1_users_whoami_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Read Current User",
|
|
"tags": [
|
|
"Users"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/users/{user_id}": {
|
|
"delete": {
|
|
"description": "Delete a user from the database.",
|
|
"operationId": "delete_user_api_v1_users__user_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "user_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Delete User Api V1 Users User Id Delete",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete User",
|
|
"tags": [
|
|
"Users"
|
|
]
|
|
},
|
|
"patch": {
|
|
"description": "Update an existing user's data.",
|
|
"operationId": "patch_user_api_v1_users__user_id__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "user_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Patch User",
|
|
"tags": [
|
|
"Users"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/users/{user_id}/reset-password": {
|
|
"patch": {
|
|
"description": "Reset a user's password.",
|
|
"operationId": "reset_password_api_v1_users__user_id__reset_password_patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "user_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "User Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserUpdate"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UserRead"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Reset Password",
|
|
"tags": [
|
|
"Users"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/version": {
|
|
"get": {
|
|
"operationId": "get_version_api_v1_version_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"summary": "Get Version",
|
|
"tags": [
|
|
"Base"
|
|
]
|
|
}
|
|
},
|
|
"/api/v1/webhook/{flow_id_or_name}": {
|
|
"post": {
|
|
"description": "Run a flow using a webhook request.<br><br>Args:<br> auth: Resolved webhook user and flow, scoped to the authenticated caller.<br> request: The incoming HTTP request.<br><br>Returns:<br> A dictionary containing the status of the task.<br><br>Raises:<br> HTTPException: If the flow is not found or if there is an error processing the request.",
|
|
"operationId": "webhook_run_flow_api_v1_webhook__flow_id_or_name__post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "flow_id_or_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Flow Id Or Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"202": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"additionalProperties": true,
|
|
"title": "Response Webhook Run Flow Api V1 Webhook Flow Id Or Name Post",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"summary": "Webhook Run Flow",
|
|
"tags": [
|
|
"Base"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/files": {
|
|
"delete": {
|
|
"description": "Delete all files for the current user.",
|
|
"operationId": "delete_all_files_api_v2_files_delete",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete All Files",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "List the files available to the current user.",
|
|
"operationId": "list_files_api_v2_files_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/langflow__services__database__models__file__model__File"
|
|
},
|
|
"title": "Response List Files Api V2 Files Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Files",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Upload a file for the current user and track it in the database.",
|
|
"operationId": "upload_user_file_api_v2_files_post",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "append",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Append",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "ephemeral",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Ephemeral",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_upload_user_file_api_v2_files_post"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/langflow__api__schemas__UploadFileResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Upload User File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/files/": {
|
|
"delete": {
|
|
"description": "Delete all files for the current user.",
|
|
"operationId": "delete_all_files_api_v2_files__delete",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete All Files",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "List the files available to the current user.",
|
|
"operationId": "list_files_api_v2_files__get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"$ref": "#/components/schemas/langflow__services__database__models__file__model__File"
|
|
},
|
|
"title": "Response List Files Api V2 Files Get",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "List Files",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Upload a file for the current user and track it in the database.",
|
|
"operationId": "upload_user_file_api_v2_files__post",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "append",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Append",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "ephemeral",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Ephemeral",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/Body_upload_user_file_api_v2_files__post"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/langflow__api__schemas__UploadFileResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Upload User File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/files/batch/": {
|
|
"delete": {
|
|
"description": "Delete multiple files by their IDs.",
|
|
"operationId": "delete_files_batch_api_v2_files_batch__delete",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
"title": "File Ids",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Files Batch",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Download multiple files as a zip file by their IDs.",
|
|
"operationId": "download_files_batch_api_v2_files_batch__post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"items": {
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
"title": "File Ids",
|
|
"type": "array"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Download Files Batch",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/files/{file_id}": {
|
|
"delete": {
|
|
"description": "Delete a file by its ID.",
|
|
"operationId": "delete_file_api_v2_files__file_id__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "file_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "File Id",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Download a file by its ID or return its content as a string/bytes.<br><br>Args:<br> file_id: UUID of the file.<br> current_user: Authenticated user.<br> session: Database session.<br> storage_service: File storage service.<br> return_content: If True, return raw content (str) instead of StreamingResponse.<br><br>Returns:<br> StreamingResponse for client downloads or str for internal use.",
|
|
"operationId": "download_file_api_v2_files__file_id__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "file_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "File Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "return_content",
|
|
"required": false,
|
|
"schema": {
|
|
"default": false,
|
|
"title": "Return Content",
|
|
"type": "boolean"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Download File",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
},
|
|
"put": {
|
|
"description": "Edit the name of a file by its ID.",
|
|
"operationId": "edit_file_name_api_v2_files__file_id__put",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "file_id",
|
|
"required": true,
|
|
"schema": {
|
|
"format": "uuid",
|
|
"title": "File Id",
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"in": "query",
|
|
"name": "name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/langflow__api__schemas__UploadFileResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Edit File Name",
|
|
"tags": [
|
|
"Files"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/mcp/servers": {
|
|
"get": {
|
|
"description": "Get the list of available servers.",
|
|
"operationId": "get_servers_api_v2_mcp_servers_get",
|
|
"parameters": [
|
|
{
|
|
"in": "query",
|
|
"name": "action_count",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "boolean"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Action Count"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Servers",
|
|
"tags": [
|
|
"MCP"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/mcp/servers/{server_name}": {
|
|
"delete": {
|
|
"operationId": "delete_server_api_v2_mcp_servers__server_name__delete",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "server_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Server Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Delete Server",
|
|
"tags": [
|
|
"MCP"
|
|
]
|
|
},
|
|
"get": {
|
|
"description": "Get a specific server.",
|
|
"operationId": "get_server_endpoint_api_v2_mcp_servers__server_name__get",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "server_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Server Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Server Endpoint",
|
|
"tags": [
|
|
"MCP"
|
|
]
|
|
},
|
|
"patch": {
|
|
"operationId": "update_server_endpoint_api_v2_mcp_servers__server_name__patch",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "server_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Server Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MCPServerConfig"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Update Server Endpoint",
|
|
"tags": [
|
|
"MCP"
|
|
]
|
|
},
|
|
"post": {
|
|
"operationId": "add_server_api_v2_mcp_servers__server_name__post",
|
|
"parameters": [
|
|
{
|
|
"in": "path",
|
|
"name": "server_name",
|
|
"required": true,
|
|
"schema": {
|
|
"title": "Server Name",
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/MCPServerConfig"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Add Server",
|
|
"tags": [
|
|
"MCP"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/workflows": {
|
|
"get": {
|
|
"description": "Get status of workflow job by job ID",
|
|
"operationId": "get_workflow_status_api_v2_workflows_get",
|
|
"parameters": [
|
|
{
|
|
"description": "Job ID to query",
|
|
"in": "query",
|
|
"name": "job_id",
|
|
"required": false,
|
|
"schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"description": "Job ID to query",
|
|
"title": "Job Id"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"description": "Synchronous workflow execution response.",
|
|
"properties": {
|
|
"created_timestamp": {
|
|
"title": "Created Timestamp",
|
|
"type": "string"
|
|
},
|
|
"errors": {
|
|
"default": [],
|
|
"items": {
|
|
"$ref": "#/components/schemas/ErrorDetail"
|
|
},
|
|
"title": "Errors",
|
|
"type": "array"
|
|
},
|
|
"flow_id": {
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
},
|
|
"globals": {
|
|
"additionalProperties": {
|
|
"maxLength": 65536,
|
|
"type": "string"
|
|
},
|
|
"propertyNames": {
|
|
"maxLength": 256,
|
|
"minLength": 1
|
|
},
|
|
"title": "Globals",
|
|
"type": "object"
|
|
},
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"default": {},
|
|
"title": "Inputs",
|
|
"type": "object"
|
|
},
|
|
"job_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Job Id"
|
|
},
|
|
"object": {
|
|
"const": "response",
|
|
"default": "response",
|
|
"title": "Object",
|
|
"type": "string"
|
|
},
|
|
"outputs": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/ComponentOutput"
|
|
},
|
|
"default": {},
|
|
"title": "Outputs",
|
|
"type": "object"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/JobStatus"
|
|
}
|
|
},
|
|
"required": [
|
|
"flow_id",
|
|
"status"
|
|
],
|
|
"title": "WorkflowExecutionResponse",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"text/event-stream": {
|
|
"description": "Server-sent events for streaming status",
|
|
"schema": {
|
|
"description": "Streaming event response.",
|
|
"properties": {
|
|
"raw_event": {
|
|
"additionalProperties": true,
|
|
"title": "Raw Event",
|
|
"type": "object"
|
|
},
|
|
"run_id": {
|
|
"title": "Run Id",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"title": "Timestamp",
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"run_id",
|
|
"timestamp",
|
|
"raw_event"
|
|
],
|
|
"title": "WorkflowStreamEvent",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Workflow status response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Get Workflow Status",
|
|
"tags": [
|
|
"Workflow"
|
|
]
|
|
},
|
|
"post": {
|
|
"description": "Execute a workflow with support for sync, stream, and background modes",
|
|
"operationId": "execute_workflow_api_v2_workflows_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowExecutionRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"discriminator": {
|
|
"mapping": {
|
|
"job": "#/components/schemas/WorkflowJobResponse",
|
|
"response": "#/components/schemas/WorkflowExecutionResponse"
|
|
},
|
|
"propertyName": "object"
|
|
},
|
|
"oneOf": [
|
|
{
|
|
"description": "Synchronous workflow execution response.",
|
|
"properties": {
|
|
"created_timestamp": {
|
|
"title": "Created Timestamp",
|
|
"type": "string"
|
|
},
|
|
"errors": {
|
|
"default": [],
|
|
"items": {
|
|
"$ref": "#/components/schemas/ErrorDetail"
|
|
},
|
|
"title": "Errors",
|
|
"type": "array"
|
|
},
|
|
"flow_id": {
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
},
|
|
"globals": {
|
|
"additionalProperties": {
|
|
"maxLength": 65536,
|
|
"type": "string"
|
|
},
|
|
"propertyNames": {
|
|
"maxLength": 256,
|
|
"minLength": 1
|
|
},
|
|
"title": "Globals",
|
|
"type": "object"
|
|
},
|
|
"inputs": {
|
|
"additionalProperties": true,
|
|
"default": {},
|
|
"title": "Inputs",
|
|
"type": "object"
|
|
},
|
|
"job_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"title": "Job Id"
|
|
},
|
|
"object": {
|
|
"const": "response",
|
|
"default": "response",
|
|
"title": "Object",
|
|
"type": "string"
|
|
},
|
|
"outputs": {
|
|
"additionalProperties": {
|
|
"$ref": "#/components/schemas/ComponentOutput"
|
|
},
|
|
"default": {},
|
|
"title": "Outputs",
|
|
"type": "object"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/JobStatus"
|
|
}
|
|
},
|
|
"required": [
|
|
"flow_id",
|
|
"status"
|
|
],
|
|
"title": "WorkflowExecutionResponse",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "Background job response.",
|
|
"properties": {
|
|
"created_timestamp": {
|
|
"title": "Created Timestamp",
|
|
"type": "string"
|
|
},
|
|
"errors": {
|
|
"default": [],
|
|
"items": {
|
|
"$ref": "#/components/schemas/ErrorDetail"
|
|
},
|
|
"title": "Errors",
|
|
"type": "array"
|
|
},
|
|
"flow_id": {
|
|
"title": "Flow Id",
|
|
"type": "string"
|
|
},
|
|
"globals": {
|
|
"additionalProperties": {
|
|
"maxLength": 65536,
|
|
"type": "string"
|
|
},
|
|
"propertyNames": {
|
|
"maxLength": 256,
|
|
"minLength": 1
|
|
},
|
|
"title": "Globals",
|
|
"type": "object"
|
|
},
|
|
"job_id": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"format": "uuid",
|
|
"type": "string"
|
|
}
|
|
],
|
|
"title": "Job Id"
|
|
},
|
|
"links": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"title": "Links",
|
|
"type": "object"
|
|
},
|
|
"object": {
|
|
"const": "job",
|
|
"default": "job",
|
|
"title": "Object",
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"$ref": "#/components/schemas/JobStatus"
|
|
}
|
|
},
|
|
"required": [
|
|
"job_id",
|
|
"flow_id",
|
|
"status"
|
|
],
|
|
"title": "WorkflowJobResponse",
|
|
"type": "object"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"text/event-stream": {
|
|
"description": "Server-sent events for streaming execution",
|
|
"schema": {
|
|
"description": "Streaming event response.",
|
|
"properties": {
|
|
"raw_event": {
|
|
"additionalProperties": true,
|
|
"title": "Raw Event",
|
|
"type": "object"
|
|
},
|
|
"run_id": {
|
|
"title": "Run Id",
|
|
"type": "string"
|
|
},
|
|
"timestamp": {
|
|
"title": "Timestamp",
|
|
"type": "integer"
|
|
},
|
|
"type": {
|
|
"title": "Type",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"type",
|
|
"run_id",
|
|
"timestamp",
|
|
"raw_event"
|
|
],
|
|
"title": "WorkflowStreamEvent",
|
|
"type": "object"
|
|
}
|
|
}
|
|
},
|
|
"description": "Workflow execution response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Execute Workflow",
|
|
"tags": [
|
|
"Workflow"
|
|
]
|
|
}
|
|
},
|
|
"/api/v2/workflows/stop": {
|
|
"post": {
|
|
"description": "Stop a running workflow execution",
|
|
"operationId": "stop_workflow_api_v2_workflows_stop_post",
|
|
"requestBody": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowStopRequest"
|
|
}
|
|
}
|
|
},
|
|
"required": true
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowStopResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Stop Workflow",
|
|
"tags": [
|
|
"Workflow"
|
|
]
|
|
}
|
|
},
|
|
"/health": {
|
|
"get": {
|
|
"operationId": "health_health_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"summary": "Health",
|
|
"tags": [
|
|
"Health Check"
|
|
]
|
|
}
|
|
},
|
|
"/health_check": {
|
|
"get": {
|
|
"operationId": "health_check_health_check_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HealthResponse"
|
|
}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"summary": "Health Check",
|
|
"tags": [
|
|
"Health Check"
|
|
]
|
|
}
|
|
},
|
|
"/logs": {
|
|
"get": {
|
|
"description": "Retrieve application logs with authentication required.<br><br>SECURITY: Logs may contain sensitive information and require authentication.",
|
|
"operationId": "logs_logs_get",
|
|
"parameters": [
|
|
{
|
|
"description": "The number of logs before the timestamp or the last log",
|
|
"in": "query",
|
|
"name": "lines_before",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"description": "The number of logs before the timestamp or the last log",
|
|
"title": "Lines Before",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"description": "The number of logs after the timestamp",
|
|
"in": "query",
|
|
"name": "lines_after",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"description": "The number of logs after the timestamp",
|
|
"title": "Lines After",
|
|
"type": "integer"
|
|
}
|
|
},
|
|
{
|
|
"description": "The timestamp to start getting logs from",
|
|
"in": "query",
|
|
"name": "timestamp",
|
|
"required": false,
|
|
"schema": {
|
|
"default": 0,
|
|
"description": "The timestamp to start getting logs from",
|
|
"title": "Timestamp",
|
|
"type": "integer"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
},
|
|
"422": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/HTTPValidationError"
|
|
}
|
|
}
|
|
},
|
|
"description": "Validation Error"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Logs",
|
|
"tags": [
|
|
"Log"
|
|
]
|
|
}
|
|
},
|
|
"/logs-stream": {
|
|
"get": {
|
|
"description": "HTTP/2 Server-Sent-Event (SSE) endpoint for streaming logs.<br><br>Requires authentication to prevent exposure of sensitive log data.<br>It establishes a long-lived connection to the server and receives log messages in real-time.<br>The client should use the header \"Accept: text/event-stream\".",
|
|
"operationId": "stream_logs_logs_stream_get",
|
|
"responses": {
|
|
"200": {
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {}
|
|
}
|
|
},
|
|
"description": "Successful Response"
|
|
}
|
|
},
|
|
"security": [
|
|
{
|
|
"OAuth2PasswordBearerCookie": []
|
|
},
|
|
{
|
|
"API key query": []
|
|
},
|
|
{
|
|
"API key header": []
|
|
}
|
|
],
|
|
"summary": "Stream Logs",
|
|
"tags": [
|
|
"Log"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
} |