PATCH
/
assistant
/
{id}

Authorizations

Authorization
string
header
required

Retrieve your key from Dashboard.

Path Parameters

id
string
required

Body

application/json
backgroundSound
enum<string>

This is the background sound in the call. Default for phone calls is 'office' and default for web calls is 'off'.

Available options:
off,
office
clientMessages
enum<string>[]

These are the messages that will be sent to the Client SDKs. Default is ['transcript', 'hang', 'function-call', 'speech-update', 'metadata', 'conversation-update']

Available options:
status-update,
speech-update,
transcript,
hang,
function-call,
metadata,
conversation-update
dialKeypadFunctionEnabled
boolean

This sets whether the assistant can dial digits on the keypad. Defaults to false.

endCallFunctionEnabled
boolean

This sets whether the assistant will be able to hang up the call. Defaults to false.

endCallMessage
string

This is the message that the assistant will say if it ends the call.

If unspecified, it will hang up without saying anything.

Maximum length: 400
endCallPhrases
string[]

This list contains phrases that, if spoken by the assistant, will trigger the call to be hung up. Case insensitive.

firstMessage
string

This is the first message that the assistant will say. This can also be a URL to a containerized audio file (mp3, wav, etc.).

If unspecified, it will wait for the user to speak.

Maximum length: 1000
forwardingPhoneNumber
string

This is the number to forward to if assistant runs into issues.

forwardingPhoneNumbers
object[]

You can provide a set of phone numbers to forward to. You'll want to tell the assistant when to use each of these numbers in the system prompt.

hipaaEnabled
boolean

When this is enabled, no logs, recordings, or transcriptions will be stored. At the end of the call, you will still receive an end-of-call-report message to store on your server. Defaults to false.

llmRequestDelaySeconds
number

The minimum number of seconds to wait after punctuation before sending a request to the LLM. Defaults to 0.1.

Required range: 0 < x < 3
maxDurationSeconds
number

This is the maximum number of seconds that the call will last. When the call reaches this duration, it will be ended.

Required range: 10 < x < 3600
metadata
object

This is the metadata associated with the call.

model
object

These are the options for the assistant's LLM.

name
string

This is the name of the assistant. This is just for your own reference.

Maximum length: 100
numWordsToInterruptAssistant
number

The number of words to wait for before interrupting the assistant. Words like "stop", "actually", "no", etc. will always interrupt immediately regardless of this value. Words like "okay", "yeah", "right" will never interrupt. Defaults to 2.

Required range: 1 < x < 10
recordingEnabled
boolean

This sets whether the assistant's calls are recorded. Defaults to true.

responseDelaySeconds
number

The minimum number of seconds after user speech to wait before the assistant starts speaking. Defaults to 0.4.

Required range: 0 < x < 2
serverMessages
enum<string>[]

These are the messages that will be sent to your Server URL. Default is ['end-of-call-report', 'status-update', 'hang', 'function-call']

Available options:
status-update,
transcript,
hang,
function-call,
end-of-call-report,
conversation-update,
phone-call-control
serverUrl
string

This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.

All requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation.

This overrides the serverUrl set on the org and the phoneNumber. Order of precedence: function.serverUrl > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl

serverUrlSecret
string

This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret.

Same precendence logic as serverUrl.

silenceTimeoutSeconds
number

How many seconds of silence to wait before ending the call. Defaults to 30.

Required range: 10 < x < 600
transcriber
object

These are the options for the assistant's transcriber.

voice
object

These are the options for the assistant's voice.

voicemailDetectionEnabled
boolean

This sets whether the assistant should detect voicemail. Defaults to true.

voicemailMessage
string

This is the message that the assistant will say if the call is forwarded to voicemail.

If unspecified, it will hang up.

Maximum length: 1000

Response

200 - application/json
createdAt
string
required

This is the ISO 8601 date-time string of when the assistant was created.

id
string
required

This is the unique identifier for the assistant.

orgId
string
required

This is the unique identifier for the org that this assistant belongs to.

updatedAt
string
required

This is the ISO 8601 date-time string of when the assistant was last updated.

backgroundSound
enum<string>

This is the background sound in the call. Default for phone calls is 'office' and default for web calls is 'off'.

Available options:
off,
office
clientMessages
enum<string>[]

These are the messages that will be sent to the Client SDKs. Default is ['transcript', 'hang', 'function-call', 'speech-update', 'metadata', 'conversation-update']

Available options:
status-update,
speech-update,
transcript,
hang,
function-call,
metadata,
conversation-update
dialKeypadFunctionEnabled
boolean

This sets whether the assistant can dial digits on the keypad. Defaults to false.

endCallFunctionEnabled
boolean

This sets whether the assistant will be able to hang up the call. Defaults to false.

endCallMessage
string

This is the message that the assistant will say if it ends the call.

If unspecified, it will hang up without saying anything.

Maximum length: 400
endCallPhrases
string[]

This list contains phrases that, if spoken by the assistant, will trigger the call to be hung up. Case insensitive.

firstMessage
string

This is the first message that the assistant will say. This can also be a URL to a containerized audio file (mp3, wav, etc.).

If unspecified, it will wait for the user to speak.

Maximum length: 1000
forwardingPhoneNumber
string

This is the number to forward to if assistant runs into issues.

forwardingPhoneNumbers
object[]

You can provide a set of phone numbers to forward to. You'll want to tell the assistant when to use each of these numbers in the system prompt.

hipaaEnabled
boolean

When this is enabled, no logs, recordings, or transcriptions will be stored. At the end of the call, you will still receive an end-of-call-report message to store on your server. Defaults to false.

llmRequestDelaySeconds
number

The minimum number of seconds to wait after punctuation before sending a request to the LLM. Defaults to 0.1.

Required range: 0 < x < 3
maxDurationSeconds
number

This is the maximum number of seconds that the call will last. When the call reaches this duration, it will be ended.

Required range: 10 < x < 3600
metadata
object

This is the metadata associated with the call.

model
object

These are the options for the assistant's LLM.

name
string

This is the name of the assistant. This is just for your own reference.

Maximum length: 100
numWordsToInterruptAssistant
number

The number of words to wait for before interrupting the assistant. Words like "stop", "actually", "no", etc. will always interrupt immediately regardless of this value. Words like "okay", "yeah", "right" will never interrupt. Defaults to 2.

Required range: 1 < x < 10
recordingEnabled
boolean

This sets whether the assistant's calls are recorded. Defaults to true.

responseDelaySeconds
number

The minimum number of seconds after user speech to wait before the assistant starts speaking. Defaults to 0.4.

Required range: 0 < x < 2
serverMessages
enum<string>[]

These are the messages that will be sent to your Server URL. Default is ['end-of-call-report', 'status-update', 'hang', 'function-call']

Available options:
status-update,
transcript,
hang,
function-call,
end-of-call-report,
conversation-update,
phone-call-control
serverUrl
string

This is the URL Vapi will communicate with via HTTP GET and POST Requests. This is used for retrieving context, function calling, and end-of-call reports.

All requests will be sent with the call object among other things relevant to that message. You can find more details in the Server URL documentation.

This overrides the serverUrl set on the org and the phoneNumber. Order of precedence: function.serverUrl > assistant.serverUrl > phoneNumber.serverUrl > org.serverUrl

serverUrlSecret
string

This is the secret you can set that Vapi will send with every request to your server. Will be sent as a header called x-vapi-secret.

Same precendence logic as serverUrl.

silenceTimeoutSeconds
number

How many seconds of silence to wait before ending the call. Defaults to 30.

Required range: 10 < x < 600
transcriber
object

These are the options for the assistant's transcriber.

voice
object

These are the options for the assistant's voice.

voicemailDetectionEnabled
boolean

This sets whether the assistant should detect voicemail. Defaults to true.

voicemailMessage
string

This is the message that the assistant will say if the call is forwarded to voicemail.

If unspecified, it will hang up.

Maximum length: 1000