Vapi · Schema

ToolMessageStart

AIVoiceAgentsRealtimeCPaaS

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 starts. This message is never triggered for async tools. If this message is not provided, one of the default filler messages "Hold on a sec", "One moment",
blocking boolean This is an optional boolean that if true, the tool call will only trigger after the message is spoken. Default is false. @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.
View JSON Schema on GitHub

JSON Schema

vapi-toolmessagestart-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ToolMessageStart",
  "title": "ToolMessageStart",
  "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",
      "enum": [
        "request-start"
      ],
      "description": "This message is triggered when the tool call starts.\n\nThis message is never triggered for async tools.\n\nIf this message is not provided, one of the default filler messages \"Hold on a sec\", \"One moment\", \"Just a sec\", \"Give me a moment\" or \"This'll just take a sec\" will be used."
    },
    "blocking": {
      "type": "boolean",
      "description": "This is an optional boolean that if true, the tool call will only trigger after the message is spoken. Default is false.\n\n@default false",
      "example": false,
      "default": 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"
  ]
}