Vapi · Schema

ServerMessagePhoneCallControl

AIVoiceAgentsRealtimeCPaaS

Properties

Name Type Description
phoneNumber object This is the phone number that the message is associated with.
type string This is the type of the message. "phone-call-control" is an advanced type of message. When it is requested in `assistant.serverMessages`, the hangup and forwarding responsibilities are delegated to yo
request string This is the request to control the phone call.
destination object This is the destination to forward the call to if the request is "forward".
timestamp number This is the timestamp of the message.
artifact object This is a live version of the `call.artifact`. This matches what is stored on `call.artifact` after the call.
assistant object This is the assistant that the message is associated with.
customer object This is the customer that the message is associated with.
call object This is the call that the message is associated with.
chat object This is the chat object.
View JSON Schema on GitHub

JSON Schema

vapi-servermessagephonecallcontrol-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ServerMessagePhoneCallControl",
  "title": "ServerMessagePhoneCallControl",
  "type": "object",
  "properties": {
    "phoneNumber": {
      "description": "This is the phone number that the message is associated with.",
      "oneOf": [
        {
          "$ref": "#/components/schemas/CreateByoPhoneNumberDTO",
          "title": "ByoPhoneNumber"
        },
        {
          "$ref": "#/components/schemas/CreateTwilioPhoneNumberDTO",
          "title": "TwilioPhoneNumber"
        },
        {
          "$ref": "#/components/schemas/CreateVonagePhoneNumberDTO",
          "title": "VonagePhoneNumber"
        },
        {
          "$ref": "#/components/schemas/CreateVapiPhoneNumberDTO",
          "title": "VapiPhoneNumber"
        },
        {
          "$ref": "#/components/schemas/CreateTelnyxPhoneNumberDTO",
          "title": "TelnyxPhoneNumber"
        }
      ]
    },
    "type": {
      "type": "string",
      "description": "This is the type of the message. \"phone-call-control\" is an advanced type of message.\n\nWhen it is requested in `assistant.serverMessages`, the hangup and forwarding responsibilities are delegated to your server. Vapi will no longer do the actual transfer and hangup.",
      "enum": [
        "phone-call-control"
      ]
    },
    "request": {
      "type": "string",
      "description": "This is the request to control the phone call.",
      "enum": [
        "forward",
        "hang-up"
      ]
    },
    "destination": {
      "description": "This is the destination to forward the call to if the request is \"forward\".",
      "oneOf": [
        {
          "$ref": "#/components/schemas/TransferDestinationNumber",
          "title": "NumberTransferDestination"
        },
        {
          "$ref": "#/components/schemas/TransferDestinationSip",
          "title": "SipTransferDestination"
        }
      ]
    },
    "timestamp": {
      "type": "number",
      "description": "This is the timestamp of the message."
    },
    "artifact": {
      "description": "This is a live version of the `call.artifact`.\n\nThis matches what is stored on `call.artifact` after the call.",
      "allOf": [
        {
          "$ref": "#/components/schemas/Artifact"
        }
      ]
    },
    "assistant": {
      "description": "This is the assistant that the message is associated with.",
      "allOf": [
        {
          "$ref": "#/components/schemas/CreateAssistantDTO"
        }
      ]
    },
    "customer": {
      "description": "This is the customer that the message is associated with.",
      "allOf": [
        {
          "$ref": "#/components/schemas/CreateCustomerDTO"
        }
      ]
    },
    "call": {
      "description": "This is the call that the message is associated with.",
      "allOf": [
        {
          "$ref": "#/components/schemas/Call"
        }
      ]
    },
    "chat": {
      "description": "This is the chat object.",
      "allOf": [
        {
          "$ref": "#/components/schemas/Chat"
        }
      ]
    }
  },
  "required": [
    "type",
    "request"
  ]
}