Send Message
Última actualización:2024-11-02

Send Message

Send a message to the specified conversation ID and get the bot response message. Supports submitting text and/or images as message content .

Request Method

POST

Request URL

https://api.gptbots.ai/v1/conversation/message

Request Authentication

See Overview for authentication details.

Request

Example Request

curl -X POST https://api.gptbots.ai/v1/conversation/message \ -H 'Authorization: Bearer your_apikey' \ -H 'Content-Type: application/json' \ -d '{ "text": "HI!", "conversation_id": "xxxxxx", "response_mode": "streaming", "short_term_memory": true, "long_term_memory": false, "files":[ { "url": "https://res.gptbots.cc/ailab/botchat/file/38f13465ad5246190b759b3289ecba51.jpg", "name": "something.jpg", "width": 200, "height": 200 }, { "base64_content": "Your_file_base64_content", "name": "something.pdf" } ], "knowledge": { "data_ids": [ "1111111111", "2222222222" ] } }'
          curl -X POST https://api.gptbots.ai/v1/conversation/message \ 
  -H 'Authorization: Bearer your_apikey' \ 
  -H 'Content-Type: application/json' \ 
  -d '{
        "text": "HI!",
        "conversation_id": "xxxxxx",
        "response_mode": "streaming",
        "short_term_memory": true,
        "long_term_memory": false,
        "files":[
          {
            "url": "https://res.gptbots.cc/ailab/botchat/file/38f13465ad5246190b759b3289ecba51.jpg",
            "name": "something.jpg",
            "width": 200,
            "height": 200
          },
          {
            "base64_content": "Your_file_base64_content", 
            "name": "something.pdf"
          }
        ],
        "knowledge": {
            "data_ids": [
                "1111111111",
                "2222222222"
            ]
        }
}'

        
Este bloque de código en la ventana flotante
Field Type Description
Authorization Bearer ${token} Use Authorization: Bearer ${token} for authentication. Get the key from the API Keys page as token.
Content-Type application/json Data type, set to application/json.

Request Body

Field Type Required Description
text string Yes Either text or files must be entered.
The user's text message, the length of the text content cannot exceed the token length limit set by the Bot configuration.
files JSON Array No text and files must have at least one input. Files are used to submit images, audio, and document-type data to the Bot. The Bot supports two file recognition schemes: "System File Recognition" and "LLM File Recognition." Different recognition schemes support different file types. Network paths for file submission are supported, with a maximum of 9 files uploaded. Documents ≤20MB, images ≤10MB, audio ≤5MB.
LLM File Recognition
  • The supported file types depend on the capabilities of each LLM. If it's a flowbot, the intersection of all LLM-supported file types is taken.
  • System File Recognition
  • The GPTBots system recognizes uploaded files and converts them to text.
  • Document types: .pdf, .txt, .docx, .csv, .xlsx, .html, .c, .cpp, .java, .json, .md, .php, .pptx, .py, .rb, .tex, .css, .js, .ts, .xml
  • Image types: .jpg, .jpeg, .png, .gif, .webp
  • Audio types: .mp3, .wav, .acc
  • File Submission Specifications
  • base64_content, string, file stream (choose one with file URL link)
  • url, string, file URL link (choose one with file stream)
  • name, string, file name
  • width, int, image width (required for image types)
  • height, int, image height (required for image types)

  • conversation_id string Yes Conversation ID, pass in to continue previous conversation.
    response_mode string Yes blocking: Blocking, wait for completion before returning result. (Long requests may be interrupted) streaming: Streaming response, based on SSE (Server-Sent Events).
    short_term_memory boolean No Does this message send carry short-term memory within the conversation as context? If not filled out, follow the memory settings of the Bot.
    long_term_memory boolean No Does this message send carry long-term memory within the conversation as context? If not filled out, follow the memory settings of the Bot.
    knowledge object No The message sent this time, in the knowledge base retrieval, only retrieves the knowledge data defined in this parameter as the retrieval scope.
    - data_ids array No The knowledge ID for knowledge base retrieval. If this parameter is not submitted, it is considered as no restriction on the retrieval range, that is, querying all knowledge documents of the entire Bot. If this parameter is submitted, and the array is empty, such as [], it is considered as not retrieving any knowledge documents. If there are data_ids in the array, the retrieval is performed based on these data_ids.

    Response

    Example Response

    { "message_id": "65a4ccfC7ce58e728d5897e0", "message_type": "ANSWER", "text": "Hi, is there anything I can help you?", "flow_output": [ { "content": "Hello", "branch": "1", "from_component_name": "User Input" } ], "create_time": 1679587005, "conversation_id": "657303a8a764d47094874bbe" }
              {
      "message_id": "65a4ccfC7ce58e728d5897e0",
      "message_type": "ANSWER",
      "text": "Hi, is there anything I can help you?",
      "flow_output": [
        {
          "content": "Hello",
          "branch": "1", 
          "from_component_name": "User Input"
        }
      ],
      "create_time": 1679587005,
      "conversation_id": "657303a8a764d47094874bbe"
    }
    
            
    Este bloque de código en la ventana flotante

    Success Response (Blocking)

    Field Type Description
    message_id string Unique message ID.
    message_type string Message type, value: ANSWER, QUESTION.
    text string Reply text.
    flow_output JSON Array flow bot reply content.
    content string flow bot component reply text.
    branch string flow bot branch.
    from_component_name string flow bot upstream component name.
    create_time long Timestamp when reply message was created.
    conversation_id string Conversation ID.

    Success Response (Streaming)

    Field Type Description
    code int Message type code, 3-Text, 10-FlowOutput, 0-End.
    message string Message type, value: Text, FlowOutput, End.
    data object Reply content.

    Streaming data is returned in multiple chunks:

    {"code":3,"message":"Text","data":"I"} {"code":3,"message":"Text","data":"can"} {"code":3,"message":"Text","data":"help"} {"code":3,"message":"Text","data":"you"} {"code":3,"message":"Text","data":"?"} {"code":10,"message":"FlowOutput","data":[{"content":"Hello","branch":null,"from_component_name":"User Input"}]} {"code":0,"message":"End","data":null}
              {"code":3,"message":"Text","data":"I"}
    {"code":3,"message":"Text","data":"can"}  
    {"code":3,"message":"Text","data":"help"}
    {"code":3,"message":"Text","data":"you"}
    {"code":3,"message":"Text","data":"?"}
    {"code":10,"message":"FlowOutput","data":[{"content":"Hello","branch":null,"from_component_name":"User Input"}]}
    {"code":0,"message":"End","data":null}
    
            
    Este bloque de código en la ventana flotante

    Failure Response

    Field Type Description
    code int Error code.
    message string Error details.

    Error Codes

    Code Message
    40000 Invalid parameter
    40127 Developer authentication failed
    40356 Conversation does not exist
    50000 Internal server error
    40364 This Bot does not use an LLM that supports image mode
    20059 Bot deleted
    20040 Exceeded question limit
    40358 conversation_id does not match bot or user
    20022 Credit not enough