mirror of
https://github.com/langgenius/dify-docs.git
synced 2026-03-27 13:28:32 +07:00
489 lines
27 KiB
JSON
489 lines
27 KiB
JSON
{
|
|
"openapi": "3.0.1",
|
|
"info": {
|
|
"title": "Workflow App API",
|
|
"description": "Workflow applications offers non-session support and is ideal for translation, article writing, summarization AI, and more.",
|
|
"version": "1.0.0"
|
|
},
|
|
"servers": [
|
|
{
|
|
"url": "{api_base_url}",
|
|
"description": "The base URL for the Workflow App API. Replace {api_base_url} with the actual API base URL.",
|
|
"variables": {
|
|
"api_base_url": {
|
|
"default": "https://api.dify.ai/v1",
|
|
"description": "Actual base URL of the API"
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"security": [
|
|
{
|
|
"ApiKeyAuth": []
|
|
}
|
|
],
|
|
"paths": {
|
|
"/workflows/run": {
|
|
"post": {
|
|
"summary": "Execute Workflow",
|
|
"description": "Execute workflow. Cannot be executed without a published workflow.",
|
|
"operationId": "executeWorkflow",
|
|
"tags": ["Workflow Execution"],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowExecutionRequest"
|
|
},
|
|
"examples": {
|
|
"basic_execution": {
|
|
"summary": "Basic workflow execution",
|
|
"value": {
|
|
"inputs": {
|
|
"query": "Summarize this text: ..."
|
|
},
|
|
"response_mode": "streaming",
|
|
"user": "user_workflow_123"
|
|
}
|
|
},
|
|
"with_file_array_variable":{
|
|
"summary": "Example with a file array input variable",
|
|
"value": {
|
|
"inputs": {
|
|
"my_documents": [
|
|
{
|
|
"type": "document",
|
|
"transfer_method": "local_file",
|
|
"upload_file_id": "uploaded_file_id_abc"
|
|
},
|
|
{
|
|
"type": "image",
|
|
"transfer_method": "remote_url",
|
|
"url": "https://example.com/image.jpg"
|
|
}
|
|
]
|
|
},
|
|
"response_mode": "blocking",
|
|
"user": "user_workflow_456"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successful workflow execution. Structure depends on `response_mode`.\n- `blocking`: `application/json` with `WorkflowCompletionResponse`.\n- `streaming`: `text/event-stream` with `ChunkWorkflowEvent` stream.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/WorkflowCompletionResponse"
|
|
}
|
|
},
|
|
"text/event-stream": {
|
|
"schema": {
|
|
"type": "string",
|
|
"description": "A stream of Server-Sent Events. See `ChunkWorkflowEvent` for structures."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"400": { "$ref": "#/components/responses/BadRequestWorkflow" },
|
|
"500": { "$ref": "#/components/responses/InternalServerError" }
|
|
}
|
|
}
|
|
},
|
|
"/workflows/run/{workflow_run_id}": {
|
|
"get": {
|
|
"summary": "Get Workflow Run Detail",
|
|
"description": "Retrieve the current execution results of a workflow task based on the workflow execution ID.",
|
|
"operationId": "getWorkflowRunDetail",
|
|
"tags": ["Workflow Execution"],
|
|
"parameters": [
|
|
{
|
|
"name": "workflow_run_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Workflow Run ID, can be obtained from workflow execution response or streaming events.",
|
|
"schema": { "type": "string", "format": "uuid" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successfully retrieved workflow run details.",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/WorkflowRunDetailResponse" }
|
|
}
|
|
}
|
|
},
|
|
"404": {"description": "Workflow run not found."}
|
|
}
|
|
}
|
|
},
|
|
"/workflows/tasks/{task_id}/stop": {
|
|
"post": {
|
|
"summary": "Stop Workflow Task Generation",
|
|
"description": "Stops a workflow task generation. Only supported in streaming mode.",
|
|
"operationId": "stopWorkflowTaskGeneration",
|
|
"tags": ["Workflow Execution"],
|
|
"parameters": [
|
|
{
|
|
"name": "task_id",
|
|
"in": "path",
|
|
"required": true,
|
|
"description": "Task ID from the streaming chunk.",
|
|
"schema": { "type": "string", "format": "uuid" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": ["user"],
|
|
"properties": {
|
|
"user": { "type": "string", "description": "User identifier." }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "$ref": "#/components/responses/SuccessResult" }
|
|
}
|
|
}
|
|
},
|
|
"/files/upload": {
|
|
"post": {
|
|
"summary": "File Upload for Workflow",
|
|
"description": "Upload a file for use in workflows. Supports any formats supported by your workflow. Uploaded files are for the current end-user only.",
|
|
"operationId": "uploadWorkflowFile",
|
|
"tags": ["Files"],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"multipart/form-data": {
|
|
"schema": {
|
|
"type": "object",
|
|
"required": ["file", "user"],
|
|
"properties": {
|
|
"file": { "type": "string", "format": "binary", "description": "The file to be uploaded." },
|
|
"user": { "type": "string", "description": "User identifier." }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "File uploaded successfully.",
|
|
"content": { "application/json": { "schema": { "$ref": "#/components/schemas/FileUploadResponse" } } }
|
|
},
|
|
"201": {
|
|
"description": "File created successfully (alternative success code).",
|
|
"content": { "application/json": { "schema": { "$ref": "#/components/schemas/FileUploadResponse" } } }
|
|
},
|
|
"400": { "$ref": "#/components/responses/BadRequestFile" },
|
|
"413": { "$ref": "#/components/responses/FileTooLarge" },
|
|
"415": { "$ref": "#/components/responses/UnsupportedFileTypeFile" },
|
|
"503": { "$ref": "#/components/responses/S3ErrorFile" },
|
|
"500": { "$ref": "#/components/responses/InternalServerError" }
|
|
}
|
|
}
|
|
},
|
|
"/workflows/logs": {
|
|
"get": {
|
|
"summary": "Get Workflow Logs",
|
|
"description": "Returns workflow logs, with the first page returning the latest `{limit}` messages, i.e., in reverse order.",
|
|
"operationId": "getWorkflowLogs",
|
|
"tags": ["Workflow Execution"],
|
|
"parameters": [
|
|
{ "name": "keyword", "in": "query", "description": "Keyword to search.", "schema": { "type": "string" } },
|
|
{ "name": "status", "in": "query", "description": "Filter by status.", "schema": { "type": "string", "enum": ["succeeded", "failed", "stopped", "running"] } },
|
|
{ "name": "page", "in": "query", "description": "Current page.", "schema": { "type": "integer", "default": 1 } },
|
|
{ "name": "limit", "in": "query", "description": "Number of items per page.", "schema": { "type": "integer", "default": 20 } }
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "Successfully retrieved workflow logs.",
|
|
"content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowLogsResponse" } } }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"/info": {
|
|
"get": {
|
|
"summary": "Get Application Basic Information",
|
|
"operationId": "getWorkflowAppInfo",
|
|
"tags": ["Application"],
|
|
"responses": {
|
|
"200": { "description": "Basic application information.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AppInfoResponse" } } } }
|
|
}
|
|
}
|
|
},
|
|
"/parameters": {
|
|
"get": {
|
|
"summary": "Get Application Parameters Information",
|
|
"operationId": "getWorkflowAppParameters",
|
|
"tags": ["Application"],
|
|
"responses": {
|
|
"200": { "description": "Application parameters.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowAppParametersResponse" } } } }
|
|
}
|
|
}
|
|
},
|
|
"/site": {
|
|
"get": {
|
|
"summary": "Get Application WebApp Settings",
|
|
"operationId": "getWorkflowWebAppSettings",
|
|
"tags": ["Application"],
|
|
"responses": {
|
|
"200": { "description": "WebApp settings.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkflowWebAppSettingsResponse" } } } }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"components": {
|
|
"securitySchemes": {
|
|
"ApiKeyAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "API_KEY", "description": "API Key authentication." }
|
|
},
|
|
"responses": {
|
|
"BadRequestWorkflow": { "description": "Bad Request for workflow operation. Possible error codes: invalid_param, app_unavailable, provider_not_initialize, provider_quota_exceeded, model_currently_not_support, workflow_request_error.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } },
|
|
"BadRequestFile": { "description": "Bad Request for file operation.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } },
|
|
"FileTooLarge": { "description": "File is too large.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } },
|
|
"UnsupportedFileTypeFile": { "description": "Unsupported file type for upload.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } },
|
|
"S3ErrorFile": { "description": "S3 storage error.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } },
|
|
"InternalServerError": { "description": "Internal server error.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ErrorResponse" } } } },
|
|
"SuccessResult": { "description": "Operation successful.", "content": { "application/json": { "schema": { "type": "object", "properties": { "result": { "type": "string", "example": "success" } } } } } }
|
|
},
|
|
"schemas": {
|
|
"WorkflowExecutionRequest": {
|
|
"type": "object",
|
|
"required": ["inputs", "response_mode", "user"],
|
|
"properties": {
|
|
"inputs": {
|
|
"type": "object",
|
|
"description": "Key/value pairs for workflow variables. Value for a file array type variable should be a list of InputFileObjectWorkflow.",
|
|
"additionalProperties": {
|
|
"oneOf": [
|
|
{ "type": "string" }, { "type": "number" }, { "type": "boolean" }, { "type": "object" },
|
|
{ "type": "array", "items": { "$ref": "#/components/schemas/InputFileObjectWorkflow" } }
|
|
]
|
|
},
|
|
"example": { "user_query": "Translate this for me.", "target_language": "French" }
|
|
},
|
|
"response_mode": { "type": "string", "enum": ["streaming", "blocking"], "description": "Response mode. Cloudflare timeout is 100s for blocking." },
|
|
"user": { "type": "string", "description": "User identifier." }
|
|
}
|
|
},
|
|
"InputFileObjectWorkflow": {
|
|
"type": "object",
|
|
"required": ["type", "transfer_method"],
|
|
"properties": {
|
|
"type": { "type": "string", "enum": ["document", "image", "audio", "video", "custom"], "description": "Type of file." },
|
|
"transfer_method": { "type": "string", "enum": ["remote_url", "local_file"], "description": "Transfer method, `remote_url` for image URL / `local_file` for file upload" },
|
|
"url": { "type": "string", "format": "url", "description": "Image URL (when the transfer method is `remote_url`)" },
|
|
"upload_file_id": { "type": "string", "description": "Uploaded file ID, which must be obtained by uploading through the File Upload API in advance (when the transfer method is `local_file`)" }
|
|
},
|
|
"anyOf": [
|
|
{
|
|
"properties": {
|
|
"transfer_method": { "enum": ["remote_url"] },
|
|
"url": { "type": "string", "format": "url" }
|
|
},
|
|
"required": ["url"],
|
|
"not": { "required": ["upload_file_id"] }
|
|
},
|
|
{
|
|
"properties": {
|
|
"transfer_method": { "enum": ["local_file"] },
|
|
"upload_file_id": { "type": "string" }
|
|
},
|
|
"required": ["upload_file_id"],
|
|
"not": { "required": ["url"] }
|
|
}
|
|
]
|
|
},
|
|
"WorkflowCompletionResponse": {
|
|
"type": "object",
|
|
"description": "Response for blocking mode workflow execution.",
|
|
"properties": {
|
|
"workflow_run_id": { "type": "string", "format": "uuid" },
|
|
"task_id": { "type": "string", "format": "uuid" },
|
|
"data": { "$ref": "#/components/schemas/WorkflowFinishedData" }
|
|
}
|
|
},
|
|
"ChunkWorkflowEvent": {
|
|
"type": "object",
|
|
"required": ["event"],
|
|
"properties": {
|
|
"event": { "type": "string", "enum": ["workflow_started", "node_started", "text_chunk", "node_finished", "workflow_finished", "tts_message", "tts_message_end", "ping"] }
|
|
},
|
|
"discriminator": {
|
|
"propertyName": "event",
|
|
"mapping": {
|
|
"workflow_started": "#/components/schemas/StreamEventWfWorkflowStarted",
|
|
"node_started": "#/components/schemas/StreamEventWfNodeStarted",
|
|
"text_chunk": "#/components/schemas/StreamEventWfTextChunk",
|
|
"node_finished": "#/components/schemas/StreamEventWfNodeFinished",
|
|
"workflow_finished": "#/components/schemas/StreamEventWfWorkflowFinished",
|
|
"tts_message": "#/components/schemas/StreamEventWfTtsMessage",
|
|
"tts_message_end": "#/components/schemas/StreamEventWfTtsMessageEnd",
|
|
"ping": "#/components/schemas/StreamEventWfPing"
|
|
}
|
|
}
|
|
},
|
|
"StreamEventBaseWf": {
|
|
"type": "object",
|
|
"properties": {
|
|
"task_id": { "type": "string", "format": "uuid" },
|
|
"workflow_run_id": { "type": "string", "format": "uuid" }
|
|
}
|
|
},
|
|
"StreamEventWfWorkflowStarted": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["data"], "properties": { "data": { "$ref": "#/components/schemas/WorkflowStartedData" } } } ]
|
|
},
|
|
"WorkflowStartedData": {
|
|
"type": "object", "required": ["id", "workflow_id", "sequence_number", "created_at"],
|
|
"properties": { "id": { "type": "string", "format": "uuid" }, "workflow_id": { "type": "string", "format": "uuid" }, "sequence_number": { "type": "integer" }, "created_at": { "type": "integer", "format": "int64" } }
|
|
},
|
|
"StreamEventWfNodeStarted": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["data"], "properties": { "data": { "$ref": "#/components/schemas/NodeStartedData" } } } ]
|
|
},
|
|
"NodeStartedData": {
|
|
"type": "object", "required": ["id", "node_id", "node_type", "title", "index", "created_at"],
|
|
"properties": { "id": { "type": "string", "format": "uuid" }, "node_id": { "type": "string", "format": "uuid" }, "node_type": { "type": "string" }, "title": { "type": "string" }, "index": { "type": "integer" }, "predecessor_node_id": { "type": "string", "format": "uuid", "nullable": true }, "inputs": { "type": "object", "additionalProperties": true }, "created_at": { "type": "integer", "format": "int64" } }
|
|
},
|
|
"StreamEventWfTextChunk": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["data"], "properties": { "data": { "$ref": "#/components/schemas/TextChunkData" } } } ]
|
|
},
|
|
"TextChunkData": {
|
|
"type": "object", "required": ["text", "from_variable_selector"],
|
|
"properties": { "text": { "type": "string" }, "from_variable_selector": { "type": "array", "items": { "type": "string" }, "description": "Text source path." } }
|
|
},
|
|
"StreamEventWfNodeFinished": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["data"], "properties": { "data": { "$ref": "#/components/schemas/NodeFinishedData" } } } ]
|
|
},
|
|
"NodeFinishedData": {
|
|
"type": "object", "required": ["id", "node_id", "node_type", "title", "index", "status", "created_at"],
|
|
"properties": { "id": { "type": "string", "format": "uuid" }, "node_id": { "type": "string", "format": "uuid" }, "node_type": { "type": "string" }, "title": { "type": "string" }, "index": { "type": "integer" }, "predecessor_node_id": { "type": "string", "format": "uuid", "nullable": true }, "inputs": { "type": "object", "additionalProperties": true, "nullable": true }, "process_data": { "type": "object", "additionalProperties": true, "nullable": true }, "outputs": { "type": "object", "additionalProperties": true, "nullable": true }, "status": { "type": "string", "enum": ["running", "succeeded", "failed", "stopped"] }, "error": { "type": "string", "nullable": true }, "elapsed_time": { "type": "number", "format": "float", "nullable": true }, "execution_metadata": { "$ref": "#/components/schemas/NodeExecutionMetadata" , "nullable": true }, "created_at": { "type": "integer", "format": "int64" } }
|
|
},
|
|
"NodeExecutionMetadata": {
|
|
"type": "object", "properties": { "total_tokens": { "type": "integer", "nullable": true }, "total_price": { "type": "number", "format": "float", "nullable": true }, "currency": { "type": "string", "nullable": true, "example": "USD" } }
|
|
},
|
|
"StreamEventWfWorkflowFinished": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["data"], "properties": { "data": { "$ref": "#/components/schemas/WorkflowFinishedData" } } } ]
|
|
},
|
|
"WorkflowFinishedData": {
|
|
"type": "object", "required": ["id", "workflow_id", "status", "created_at", "finished_at"],
|
|
"properties": { "id": { "type": "string", "format": "uuid" }, "workflow_id": { "type": "string", "format": "uuid" }, "status": { "type": "string", "enum": ["running", "succeeded", "failed", "stopped"] }, "outputs": { "type": "object", "additionalProperties": true, "nullable": true }, "error": { "type": "string", "nullable": true }, "elapsed_time": { "type": "number", "format": "float", "nullable": true }, "total_tokens": { "type": "integer", "nullable": true }, "total_steps": { "type": "integer", "default": 0 }, "created_at": { "type": "integer", "format": "int64" }, "finished_at": { "type": "integer", "format": "int64" } }
|
|
},
|
|
"StreamEventWfTtsMessage": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["audio", "message_id", "created_at"], "properties": { "audio": { "type": "string", "format": "byte" }, "message_id": {"type": "string", "format": "uuid"}, "created_at": {"type": "integer", "format":"int64"} } }
|
|
]
|
|
},
|
|
"StreamEventWfTtsMessageEnd": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "$ref": "#/components/schemas/StreamEventBaseWf" },
|
|
{ "type": "object", "required": ["audio", "message_id", "created_at"], "properties": { "audio": { "type": "string" }, "message_id": {"type": "string", "format": "uuid"}, "created_at": {"type": "integer", "format":"int64"} } }
|
|
]
|
|
},
|
|
"StreamEventWfPing": {
|
|
"allOf": [ { "$ref": "#/components/schemas/ChunkWorkflowEvent" }, { "type": "object" } ]
|
|
},
|
|
"WorkflowRunDetailResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string", "format": "uuid" },
|
|
"workflow_id": { "type": "string", "format": "uuid" },
|
|
"status": { "type": "string", "enum": ["running", "succeeded", "failed", "stopped"] },
|
|
"inputs": { "type": "string", "description": "JSON string of input content." },
|
|
"outputs": { "type": "object", "additionalProperties": true, "nullable": true, "description": "JSON object of output content." },
|
|
"error": { "type": "string", "nullable": true },
|
|
"total_steps": { "type": "integer" },
|
|
"total_tokens": { "type": "integer" },
|
|
"created_at": { "type": "integer", "format": "int64" },
|
|
"finished_at": { "type": "integer", "format": "int64", "nullable": true },
|
|
"elapsed_time": { "type": "number", "format": "float", "nullable": true }
|
|
}
|
|
},
|
|
"FileUploadResponse": {
|
|
"type": "object", "properties": { "id": { "type": "string", "format": "uuid" }, "name": { "type": "string" }, "size": { "type": "integer" }, "extension": { "type": "string" }, "mime_type": { "type": "string" }, "created_by": { "type": "string", "format": "uuid" }, "created_at": { "type": "integer", "format": "int64" } }
|
|
},
|
|
"WorkflowLogsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"page": { "type": "integer" },
|
|
"limit": { "type": "integer" },
|
|
"total": { "type": "integer" },
|
|
"has_more": { "type": "boolean" },
|
|
"data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkflowLogItem" } }
|
|
}
|
|
},
|
|
"WorkflowLogItem": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string", "format": "uuid" },
|
|
"workflow_run": { "$ref": "#/components/schemas/WorkflowRunSummary" },
|
|
"created_from": { "type": "string" },
|
|
"created_by_role": { "type": "string" },
|
|
"created_by_account": { "type": "string", "format": "uuid", "nullable": true },
|
|
"created_by_end_user": { "$ref": "#/components/schemas/EndUserSummary" },
|
|
"created_at": { "type": "integer", "format": "int64" }
|
|
}
|
|
},
|
|
"WorkflowRunSummary": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string", "format": "uuid" },
|
|
"version": { "type": "string" },
|
|
"status": { "type": "string", "enum": ["running", "succeeded", "failed", "stopped"] },
|
|
"error": { "type": "string", "nullable": true },
|
|
"elapsed_time": { "type": "number", "format": "float" },
|
|
"total_tokens": { "type": "integer" },
|
|
"total_steps": { "type": "integer" },
|
|
"created_at": { "type": "integer", "format": "int64" },
|
|
"finished_at": { "type": "integer", "format": "int64", "nullable": true }
|
|
}
|
|
},
|
|
"EndUserSummary": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string", "format": "uuid" },
|
|
"type": { "type": "string" },
|
|
"is_anonymous": { "type": "boolean" },
|
|
"session_id": { "type": "string" }
|
|
}
|
|
},
|
|
"AppInfoResponse": {
|
|
"type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "tags": { "type": "array", "items": { "type": "string" } } }
|
|
},
|
|
"WorkflowAppParametersResponse": {
|
|
"type": "object", "properties": { "user_input_form": { "type": "array", "items": { "$ref": "#/components/schemas/UserInputFormItem" } }, "file_upload": { "type": "object", "properties": { "image": { "type": "object", "properties": { "enabled": { "type": "boolean" }, "number_limits": { "type": "integer" }, "detail": { "type": "string" }, "transfer_methods": { "type": "array", "items": { "type": "string", "enum": ["remote_url", "local_file"] } } } } } }, "system_parameters": { "type": "object", "properties": { "file_size_limit": { "type": "integer" }, "image_file_size_limit": { "type": "integer" }, "audio_file_size_limit": { "type": "integer" }, "video_file_size_limit": { "type": "integer" } } } }
|
|
},
|
|
"UserInputFormItem": { "type": "object", "oneOf": [ { "$ref": "#/components/schemas/TextInputControlWrapper" }, { "$ref": "#/components/schemas/ParagraphControlWrapper" }, { "$ref": "#/components/schemas/SelectControlWrapper" } ] },
|
|
"TextInputControlWrapper": { "type": "object", "properties": { "text-input": { "$ref": "#/components/schemas/TextInputControl" } }, "required":["text-input"] },
|
|
"ParagraphControlWrapper": { "type": "object", "properties": { "paragraph": { "$ref": "#/components/schemas/ParagraphControl" } }, "required":["paragraph"] },
|
|
"SelectControlWrapper": { "type": "object", "properties": { "select": { "$ref": "#/components/schemas/SelectControl" } }, "required":["select"] },
|
|
"TextInputControl": { "type": "object", "required": ["label", "variable", "required"], "properties": { "label": { "type": "string" }, "variable": { "type": "string" }, "required": { "type": "boolean" }, "default": { "type": "string" } } },
|
|
"ParagraphControl": { "type": "object", "required": ["label", "variable", "required"], "properties": { "label": { "type": "string" }, "variable": { "type": "string" }, "required": { "type": "boolean" }, "default": { "type": "string" } } },
|
|
"SelectControl": { "type": "object", "required": ["label", "variable", "required", "options"], "properties": { "label": { "type": "string" }, "variable": { "type": "string" }, "required": { "type": "boolean" }, "default": { "type": "string" }, "options": { "type": "array", "items": { "type": "string" } } } },
|
|
"WorkflowWebAppSettingsResponse": {
|
|
"type": "object", "properties": { "title": { "type": "string" }, "icon_type": { "type": "string", "enum": ["emoji", "image"] }, "icon": { "type": "string" }, "icon_background": { "type": "string" }, "icon_url": { "type": "string", "format": "url", "nullable": true }, "description": { "type": "string" }, "copyright": { "type": "string" }, "privacy_policy": { "type": "string" }, "custom_disclaimer": { "type": "string" }, "default_language": { "type": "string" }, "show_workflow_steps": { "type": "boolean" } }
|
|
},
|
|
"ErrorResponse": { "type": "object", "properties": { "status": { "type": "integer", "nullable": true }, "code": { "type": "string", "nullable": true }, "message": { "type": "string" } } }
|
|
}
|
|
},
|
|
"tags": [
|
|
{ "name": "Workflow Execution", "description": "Operations related to executing and managing workflows." },
|
|
{ "name": "Files", "description": "File upload and preview operations specific to workflows." },
|
|
{ "name": "Application", "description": "Application settings and info for workflow apps." }
|
|
]
|
|
} |