Properties
| Name | Type | Description |
|---|---|---|
| contents | array | This is an alternative to the `content` property. It allows to specify variants of the same content, one per language. Usage: - If your assistants are multilingual, you can provide content for each la |
| type | string | This message is triggered when the tool call is complete. This message is triggered immediately without waiting for your server to respond for async tool calls. If this message is not provided, the mo |
| role | string | This is optional and defaults to "assistant". When role=assistant, `content` is said out loud. When role=system, `content` is passed to the model in a system message. Example: system: default one assi |
| endCallAfterSpokenEnabled | boolean | This is an optional boolean that if true, the call will end after the message is spoken. Default is false. This is ignored if `role` is set to `system`. @default false |
| content | string | This is the content that the assistant says when this message is triggered. |
| conditions | array | This is an optional array of conditions that the tool call arguments must meet in order for this message to be triggered. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/ToolMessageComplete",
"title": "ToolMessageComplete",
"type": "object",
"properties": {
"contents": {
"type": "array",
"description": "This is an alternative to the `content` property. It allows to specify variants of the same content, one per language.\n\nUsage:\n- If your assistants are multilingual, you can provide content for each language.\n- If you don't provide content for a language, the first item in the array will be automatically translated to the active language at that moment.\n\nThis will override the `content` property.",
"items": {
"oneOf": [
{
"$ref": "#/components/schemas/TextContent",
"title": "Text"
}
]
}
},
"type": {
"type": "string",
"description": "This message is triggered when the tool call is complete.\n\nThis message is triggered immediately without waiting for your server to respond for async tool calls.\n\nIf this message is not provided, the model will be requested to respond.\n\nIf this message is provided, only this message will be spoken and the model will not be requested to come up with a response. It's an exclusive OR.",
"enum": [
"request-complete"
]
},
"role": {
"type": "string",
"description": "This is optional and defaults to \"assistant\".\n\nWhen role=assistant, `content` is said out loud.\n\nWhen role=system, `content` is passed to the model in a system message. Example:\n system: default one\n assistant:\n user:\n assistant:\n user:\n assistant:\n user:\n assistant: tool called\n tool: your server response\n <--- system prompt as hint\n ---> model generates response which is spoken\nThis is useful when you want to provide a hint to the model about what to say next.",
"enum": [
"assistant",
"system"
]
},
"endCallAfterSpokenEnabled": {
"type": "boolean",
"description": "This is an optional boolean that if true, the call will end after the message is spoken. Default is false.\n\nThis is ignored if `role` is set to `system`.\n\n@default false",
"example": false
},
"content": {
"type": "string",
"description": "This is the content that the assistant says when this message is triggered.",
"maxLength": 1000
},
"conditions": {
"description": "This is an optional array of conditions that the tool call arguments must meet in order for this message to be triggered.",
"type": "array",
"items": {
"$ref": "#/components/schemas/Condition"
}
}
},
"required": [
"type"
]
}