v51

latestOpenAPI 3.0.0raw.githubusercontent.com2026-08-01979563.0 MB
Assistants

Update Assistant

patch/assistant/{id}

Path parameters

idstring uuid required

The unique identifier for the resource.

Request body

firstMessagestring

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, assistant will wait for user to speak and use the model to respond once they speak.

firstMessageInterruptionsEnabledboolean
firstMessageMode'assistant-speaks-first' | 'assistant-speaks-first-with-model-generated-message' | 'assistant-waits-for-user'

This is the mode for the first message. Default is 'assistant-speaks-first'.

Use:

  • 'assistant-speaks-first' to have the assistant speak first.
  • 'assistant-waits-for-user' to have the assistant wait for the user to speak first.
  • 'assistant-speaks-first-with-model-generated-message' to have the assistant speak first with a message generated by the model based on the conversation state. (assistant.model.messages at call start, call.messages at squad transfer points).

@default 'assistant-speaks-first'

clientMessagesstring[]

These are the messages that will be sent to your Client SDKs. Default is conversation-update,function-call,hang,model-output,speech-update,status-update,transfer-update,transcript,tool-calls,user-interrupted,voice-input,workflow.node.started,assistant.started. You can check the shape of the messages in ClientMessage schema.

serverMessagesstring[]

These are the messages that will be sent to your Server URL. Default is conversation-update,end-of-call-report,function-call,hang,speech-update,status-update,tool-calls,transfer-destination-request,handoff-destination-request,user-interrupted,assistant.started. You can check the shape of the messages in ServerMessage schema.

maxDurationSecondsnumber

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

@default 600 (10 minutes)

modelOutputInMessagesEnabledboolean

This determines whether the model's output is used in conversation history rather than the transcription of assistant's speech.

@default false

namestring

This is the name of the assistant.

This is required when you want to transfer between assistants in a call.

voicemailMessagestring

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

If unspecified, it will hang up.

endCallMessagestring

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

If unspecified, it will hang up without saying anything.

endCallPhrasesstring[]

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

metadataobject

This is for metadata you want to store on the assistant.

credentialIdsstring[]

These are the credentials that will be used for the assistant calls. By default, all the credentials are available for use in the call but you can provide a subset using this.

Response

firstMessagestring

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, assistant will wait for user to speak and use the model to respond once they speak.

firstMessageInterruptionsEnabledboolean
firstMessageMode'assistant-speaks-first' | 'assistant-speaks-first-with-model-generated-message' | 'assistant-waits-for-user'

This is the mode for the first message. Default is 'assistant-speaks-first'.

Use:

  • 'assistant-speaks-first' to have the assistant speak first.
  • 'assistant-waits-for-user' to have the assistant wait for the user to speak first.
  • 'assistant-speaks-first-with-model-generated-message' to have the assistant speak first with a message generated by the model based on the conversation state. (assistant.model.messages at call start, call.messages at squad transfer points).

@default 'assistant-speaks-first'

clientMessagesstring[]

These are the messages that will be sent to your Client SDKs. Default is conversation-update,function-call,hang,model-output,speech-update,status-update,transfer-update,transcript,tool-calls,user-interrupted,voice-input,workflow.node.started,assistant.started. You can check the shape of the messages in ClientMessage schema.

serverMessagesstring[]

These are the messages that will be sent to your Server URL. Default is conversation-update,end-of-call-report,function-call,hang,speech-update,status-update,tool-calls,transfer-destination-request,handoff-destination-request,user-interrupted,assistant.started. You can check the shape of the messages in ServerMessage schema.

maxDurationSecondsnumber

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

@default 600 (10 minutes)

modelOutputInMessagesEnabledboolean

This determines whether the model's output is used in conversation history rather than the transcription of assistant's speech.

@default false

latestVersionstring nullable

This is the latest version label (e.g. v3) of the assistant in the version history. null while the org is not yet onboarded to versioning, or for assistants that have not yet been published under it.

namestring

This is the name of the assistant.

This is required when you want to transfer between assistants in a call.

voicemailMessagestring

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

If unspecified, it will hang up.

endCallMessagestring

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

If unspecified, it will hang up without saying anything.

endCallPhrasesstring[]

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

metadataobject

This is for metadata you want to store on the assistant.

credentialIdsstring[]

These are the credentials that will be used for the assistant calls. By default, all the credentials are available for use in the call but you can provide a subset using this.

idstring required

This is the unique identifier for the assistant.

orgIdstring required

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

createdAtstring date-time required

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

updatedAtstring date-time required

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