> ## Documentation Index
> Fetch the complete documentation index at: https://guide.chatwize.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Message

> Create a session message for a chatbot session specified by session uuid

<Note>
  This API utilizes streaming technique to transmit data, and as a result,
  it returns the data in the form of a string continuously over the connection.
  Once the connection is over, you can refetch the list of messages to view the actual data.
</Note>

### Path

<ParamField path="uuid" type="string" required />

### Body

<ParamField body="query" type="string" required />

### Response

<ResponseField type="string" />

<RequestExample>
  ```bash Curl
  curl --location --request POST 'https://app.chatwize.ai/api/v1/session/{uuid}/message/stream' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <token>' \
  --data-raw '{"query": "Your query goes here"}'
  ```

  ```py Python
  import requests

  uuid = '<session-uuid>'
  url = f"https://app.chatwize.ai/api/v1/session/{uuid}/message/stream"
  headers = {
      "Authorization": "Bearer <token>",
      "Content-Type": "application/json"
  }

  data = {
      "query": "Your query goes here"
  }

  response = requests.post(url, headers=headers, json=data, stream=True)

  if response.status_code == 200:
      for line in response.iter_lines(decode_unicode=True):
          # Process streaming response here
          print(line)
  else:
      print("Error:", response.status_code)
  ```

  ```ts JavaScript
  const xhr = new XMLHttpRequest();
  const uuid = '<session-uuid>'
  xhr.open("POST", `https://app.chatwize.ai/api/v1/session/${uuid}/message/stream`, true);

  xhr.setRequestHeader("Authorization", "Bearer <token>");
  xhr.setRequestHeader("Content-Type", "application/json;charset=UTF-8");

  const data = JSON.stringify({"query": "Your query goes here"});

  xhr.send(data);

  xhr.onprogress = () => {
      const streamingResponse = xhr.responseText;
      console.log(streamingResponse);
  };

  xhr.onreadystatechange = () => {
      if (xhr.readyState === 4) {
          if (xhr.status === 200) {
              console.log("Streaming completed successfully");
          } else {
              console.error("Error:", xhr.status);
          }
      }
  };
  ```
</RequestExample>

<ResponseExample>
  ```json Response

  "Chat streaming response"

  ```
</ResponseExample>
