{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/WebChat",
  "title": "WebChat",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "This is the unique identifier for the chat."
    },
    "sessionId": {
      "type": "string",
      "description": "This is the ID of the session for the chat. Send it in the next chat request to continue the conversation."
    },
    "output": {
      "type": "array",
      "description": "This is the output messages generated by the system in response to the input.",
      "items": {
        "oneOf": [
          {
            "$ref": "#/components/schemas/SystemMessage",
            "title": "SystemMessage"
          },
          {
            "$ref": "#/components/schemas/UserMessage",
            "title": "UserMessage"
          },
          {
            "$ref": "#/components/schemas/AssistantMessage",
            "title": "AssistantMessage"
          },
          {
            "$ref": "#/components/schemas/ToolMessage",
            "title": "ToolMessage"
          },
          {
            "$ref": "#/components/schemas/DeveloperMessage",
            "title": "DeveloperMessage"
          }
        ]
      }
    }
  },
  "required": [
    "id",
    "output"
  ]
}