Vapi · Schema

ServerMessage

AIVoiceAgentsRealtimeCPaaS

Properties

Name Type Description
message object These are all the messages that can be sent to your server before, after and during the call. Configure the messages you'd like to receive in `assistant.serverMessages`. The server where the message i
View JSON Schema on GitHub

JSON Schema

vapi-servermessage-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ServerMessage",
  "title": "ServerMessage",
  "type": "object",
  "properties": {
    "message": {
      "description": "These are all the messages that can be sent to your server before, after and during the call. Configure the messages you'd like to receive in `assistant.serverMessages`.\n\nThe server where the message is sent is determined by the following precedence order:\n\n1. `tool.server.url` (if configured, and only for \"tool-calls\" message)\n2. `assistant.serverUrl` (if configure)\n3. `phoneNumber.serverUrl` (if configured)\n4. `org.serverUrl` (if configured)",
      "oneOf": [
        {
          "$ref": "#/components/schemas/ServerMessageAssistantRequest",
          "title": "AssistantRequest"
        },
        {
          "$ref": "#/components/schemas/ServerMessageConversationUpdate",
          "title": "ConversationUpdate"
        },
        {
          "$ref": "#/components/schemas/ServerMessageEndOfCallReport",
          "title": "EndOfCallReport"
        },
        {
          "$ref": "#/components/schemas/ServerMessageHandoffDestinationRequest",
          "title": "HandoffDestinationRequest"
        },
        {
          "$ref": "#/components/schemas/ServerMessageHang",
          "title": "Hang"
        },
        {
          "$ref": "#/components/schemas/ServerMessageKnowledgeBaseRequest",
          "title": "KnowledgeBaseRequest"
        },
        {
          "$ref": "#/components/schemas/ServerMessageModelOutput",
          "title": "ModelOutput"
        },
        {
          "$ref": "#/components/schemas/ServerMessagePhoneCallControl",
          "title": "PhoneCallControl"
        },
        {
          "$ref": "#/components/schemas/ServerMessageSpeechUpdate",
          "title": "SpeechUpdate"
        },
        {
          "$ref": "#/components/schemas/ServerMessageStatusUpdate",
          "title": "StatusUpdate"
        },
        {
          "$ref": "#/components/schemas/ServerMessageToolCalls",
          "title": "ToolCalls"
        },
        {
          "$ref": "#/components/schemas/ServerMessageTransferDestinationRequest",
          "title": "TransferDestinationRequest"
        },
        {
          "$ref": "#/components/schemas/ServerMessageTransferUpdate",
          "title": "TransferUpdate"
        },
        {
          "$ref": "#/components/schemas/ServerMessageTranscript",
          "title": "Transcript"
        },
        {
          "$ref": "#/components/schemas/ServerMessageUserInterrupted",
          "title": "UserInterrupted"
        },
        {
          "$ref": "#/components/schemas/ServerMessageLanguageChangeDetected",
          "title": "LanguageChangeDetected"
        },
        {
          "$ref": "#/components/schemas/ServerMessageVoiceInput",
          "title": "VoiceInput"
        },
        {
          "$ref": "#/components/schemas/ServerMessageAssistantSpeech",
          "title": "AssistantSpeech"
        },
        {
          "$ref": "#/components/schemas/ServerMessageVoiceRequest",
          "title": "VoiceRequest"
        },
        {
          "$ref": "#/components/schemas/ServerMessageCallEndpointingRequest",
          "title": "CallEndpointingRequest"
        },
        {
          "$ref": "#/components/schemas/ServerMessageChatCreated",
          "title": "ChatCreated"
        },
        {
          "$ref": "#/components/schemas/ServerMessageChatDeleted",
          "title": "ChatDeleted"
        },
        {
          "$ref": "#/components/schemas/ServerMessageSessionCreated",
          "title": "SessionCreated"
        },
        {
          "$ref": "#/components/schemas/ServerMessageSessionUpdated",
          "title": "SessionUpdated"
        },
        {
          "$ref": "#/components/schemas/ServerMessageSessionDeleted",
          "title": "SessionDeleted"
        },
        {
          "$ref": "#/components/schemas/ServerMessageCallDeleted",
          "title": "CallDeleted"
        },
        {
          "$ref": "#/components/schemas/ServerMessageCallDeleteFailed",
          "title": "CallDeleteFailed"
        }
      ]
    }
  },
  "required": [
    "message"
  ]
}