3.3.1-Start Upload File in Chatflow
1. Overview
Interface Name: Use websocket protocol to start a chatflow and upload files
Version number: v1.0.0
2. Information
Request method: POST
Request URL: wss://DOMAIN/openapi/v2/ws/dialog/
Domain: Refer to "Service address description"
3. Request parameters
Request header http header field:
cybertron-robot-key
string
Yes
Robot key
cybertron-robot-token
string
Yes
Robot token
Request body field:
username
string
Yes
User account
question
string
Yes
If a user problem is identified, you can open the intent, for example: File Upload
segment_code
string
Yes
Session ID, a round conversation ID, generated by the client
message_source
string
Yes
Source: "WS"
4. Response field description
Response field description:
code
string
"000000" is normal, other exceptions
message
string
Status description
data
object
message body
instruction
string
node guide, for example: "Welcome file upload"
flow_uuid
string
Dialogflow ID
session_id
string
Conversation id
node_id
string
Node ID
upload_file_categories
array
List of Upload File Categories
id
int
File Category ID
name
string
The name of the document category, for example, "Contract", "Certificate"
support_formats
string
File categories support formats, for example: "doc,pdf,text"
upload_max_num
int
The maximum number of files that can be uploaded by a category, for example: 1,3
variable_assign
string
After parsing the file, assign the variable name (which needs to be defined in the dialog flow in advance), for example: "contract", "cards"
customized_parse_methods
array
Custom Model Methods
file_format
string
Specify the format, specify the model and prompt for a specific format, for example: doc, pdf
parse_model
string
Specify the model name
parse_prompt
string
Custom parsing prompt
5. Example
Request packet:
{
"cybertron_robot_key": "xxx",
"cybertron_robot_token": "xxx",
"username": "xxx",
"question": "File upload",
"segment_code": "wWkE3bNkL3SzJX9orcO9P1",
"message_source": "web"
}Response packet:
{
"code": "000000",
"message": "success",
"dialog_id": 1017340986451495206,
"type": "flow",
"index": 0,
"data": {
"final": true,
"id": 88043,
"response_create_time": "2025-03-25 13:34",
"response_create_time_timestamp": "1742880845978",
"response_update_time": "2025-03-25 13:34",
"response_update_time_timestamp": "1742880845978",
"flow_uuid": "4cc96904-049f-11f0-80e7-0e8133e180cd",
"history": [
{
"timestamp": 1742880846780,
"time_date": "20250325133406780308",
"node_id": "start00000000000000000000",
"robot_user_replying": "",
"robot_user_asking": "",
"user_robot_replying": "File upload test"
},
{
"timestamp": 1742880846918,
"time_date": "20250325133406918821",
"node_id": "f9b5d4d1-aa99-4c74-96db-642dfaf51f4d",
"robot_user_replying": "Hello, so are you",
"robot_user_asking": "",
"user_robot_replying": "File upload test"
}
],
"output": {
"inputs": {},
"variables": {},
"entities": {},
"robot_user_asking": "",
"user_robot_replying": "",
"robot_user_replying": ""
},
"answer": {
"type": "upload",
"data": {
"instruction": "Please start uploading your files",
"upload_file_categories": [
{
"id": 77,
"name": "Audio test",
"support_formats": "wav",
"upload_max_num": 5,
"variable_assign_enable": true,
"variable_assign": "test_vvv",
"customized_parse_methods": [
{
"file_format": "",
"parse_model": "text",
"parse_prompt": ""
}
]
}
],
"flow_uuid": "4cc96904-049f-11f0-80e7-0e8133e180cd",
"session_id": "c49bcd42-093a-11f0-be2b-820402e05f84",
"node_id": "21a5fdec-2807-45cd-bc6e-430f26e6f682",
"language": "zh",
"steps": 2,
"is_submit": false
}
},
"content_type": "json",
"session_id": "c49bcd42-093a-11f0-be2b-820402e05f84",
"flow_stage": "flow_running",
"code": "002010",
"node_stream": 0,
"node_answer_finish": "y",
"node_answer_index": 0,
"target_node_id": "21a5fdec-2807-45cd-bc6e-430f26e6f682",
"source_node_id": "f9b5d4d1-aa99-4c74-96db-642dfaf51f4d",
"cur_node_id": "21a5fdec-2807-45cd-bc6e-430f26e6f682",
"parent_node_id": "f9b5d4d1-aa99-4c74-96db-642dfaf51f4d",
"file_upload": {
"instruction": "Please start uploading your files",
"upload_file_categories": [
{
"id": 77,
"name": "Audio test",
"support_formats": "wav",
"upload_max_num": 5,
"variable_assign_enable": true,
"variable_assign": "test_vvv",
"customized_parse_methods": [
{
"file_format": "",
"parse_model": "text",
"parse_prompt": ""
}
]
}
],
"flow_uuid": "4cc96904-049f-11f0-80e7-0e8133e180cd",
"session_id": "c49bcd42-093a-11f0-be2b-820402e05f84",
"node_id": "21a5fdec-2807-45cd-bc6e-430f26e6f682",
"language": "zh",
"steps": 2,
"is_submit": false
}
},
"finish": "y",
"cur_node_id": "21a5fdec-2807-45cd-bc6e-430f26e6f682",
"node_id": "f9b5d4d1-aa99-4c74-96db-642dfaf51f4d",
"debug": 0,
"node_developer": 0,
"flow_name": "vvvvv",
"node_type": "file_upload",
"node_title": "Node 3",
"node_waiting": false,
"flow_jump": 0,
"file_upload": {
"instruction": "Please start uploading your files",
"upload_file_categories": [
{
"id": 77,
"name": "Audio test",
"support_formats": "wav",
"upload_max_num": 5,
"variable_assign_enable": true,
"variable_assign": "test_vvv",
"customized_parse_methods": [
{
"file_format": "",
"parse_model": "text",
"parse_prompt": ""
}
]
}
],
"flow_uuid": "4cc96904-049f-11f0-80e7-0e8133e180cd",
"session_id": "c49bcd42-093a-11f0-be2b-820402e05f84",
"node_id": "21a5fdec-2807-45cd-bc6e-430f26e6f682",
"language": "zh",
"steps": 2,
"is_submit": false
},
"parent_node_id": "f9b5d4d1-aa99-4c74-96db-642dfaf51f4d",
"node_waiting_input": 0,
"node_waiting_jump": 0,
"audio": "api/search-answer-speech/1017340986451495206_1.wav",
"flow_node_dialog_id": "1017340986451495206_1"
}