October 22 to October 25, 2024
- Specify API Traffic Channel for Organizations: You can now configure which
channel
(cluster) your API traffic will be routed to. Select between daily or weekly in your organization settings page

Organization Settings Page
- Customize Tavus Voice Properties: You can now use Tavus as a voice provider under
assistant.voice
. Configure additional properties like language, recording options, and transcriptions viaassistant.voice.properties
.

Tavus Voice Properties
-
Multilingual Support in Tool Messages: You can now use the
contents
property inToolMessageStart
,ToolMessageFailed
,ToolMessageDelayed
, andToolMessageComplete
to provide message variants for different languages. If you don’t provide content for a language, the first item will be automatically translated to the active language during the conversation. -
Automatic Translation of Message Contents: For
CustomMessage
,BlockStartMessage
, andBlockCompleteMessage
, if specific content isn’t provided for a language incontents
, Vapi automatically translates the first item to the active language by default. -
Removed Backchanneling Configuration: The
backchannelingEnabled
property has been removed from when creating or updatingAssistant
or `AssistantOverrides. Backchanneling is no longer configurable in assistant settings.
October 19 to October 22, 2024
October 19 to October 22, 2024
- Invite Multiple Users via Email: You can now invite up to 100 users at once by providing a list of email addresses inside your org users page. Click
'+'
after entering an email address, select the role as Editor or Admin, and click'Invite'
.

Invite Multiple Users via Email
- Simplified Subscription Status Handling: Your subscription status no longer includes the
past-due
status, so you can streamline your subscription management without handling ‘past-due’ scenarios.
October 16 to October 19, 2024
October 16 to October 19, 2024
-
Custom Transcriber Support: You can now integrate your own transcription service by using
CustomTranscriber
atassistant.transcriber
,call.squad.members.assistant.transcriber
, andcall.squad.members.assistantOverrides.transcriber
. Provide your custom transcription server details viaserver.url
to receive real-time transcriptions during calls. -
Increased Maximum Call Duration: The maximum allowed value for
maxDurationSeconds
has increased from 21,600 to 43,200 seconds when creating or updatingAssistant
orAssistantOverrides
. You can now configure your assistant to handle calls lasting up to 12 hours. -
New Voice Provider ‘tavus’: You can now specify
tavus
as a voice provider inAssistant.voice
,AssistantOverrides.voice
,Call.voice
and in the Voice Library. -
Subscription Status ‘frozen’ Added: A new status
frozen
has been added toSubscription.status
, indicating when a subscription is temporarily inactive. - Added Subscription Coupon Codes: You can now apply coupon codes to your subscription. Visit the billing page to apply coupons to specific organizations within a subscription.

Subscription Coupon Codes
October 13 to October 16, 2024
October 13 to October 16, 2024
-
Apply Coupons to Subscriptions: You can now apply coupons by specifying a
couponId
to add to a subscription. -
Detect Custom Transcriber Failures in Call End Reasons: You can now handle cases where a custom transcriber fails during a call with
'pipeline-error-custom-transcriber-failed'
, a newendedReason
option. This is now accessible inCall
,ServerMessageStatusUpdate
, andServerMessageEndOfCallReport
. -
Corrected Typo in Example Custom Voice Request: We fixed a typo in
CustomVoice.server
, where the example request now shows how to use the"message"
parameter instead of the misspelled"messsage"
.
October 10 to October 13, 2024
October 10 to October 13, 2024
-
New Call Transfer Modes Added: you can now wait for an operator to speak first before providing a transfer message or summary when transferring calls to a new destination with
TransferPlan
. Configure this through transferPlan.mode='warm-transfer-wait-for-operator-to-speak-first-and-then-say-message'
or transferPlan.mode='warm-transfer-wait-for-operator-to-speak-first-and-then-say-summary'
inside the request body ofPOST /assistant
orPATCH /assistant
. -
Unified Server Configuration in Assistants: You can now use the
server
property inAssistant.server
,AssistantOverrides.server
, and when creating or updating assistants to specify webhook settings, including URL, secret, custom headers, and timeout. This replaces the oldserverUrl
andserverUrlSecret
properties ofAssistant
.
Include custom headers in your webhook requests by using the
headers
property within the server
object when creating or updating assistants.- Configure PlayHT Voice Engines: You can now configure which PlayHT voice
model
generates voices for your application betweenPlayHT2.0
,PlayHT2.0-turbo
, andPlay3.0-mini
.
October 9 to October 10, 2024
October 9 to October 10, 2024

Click Here to Switch to Credit Based Billing
- Purchase Reserved Concurrency and Scale Infinitely: You can now reserve more concurrent calls with Vapi and scale infinitely by switching to our new top up payment system on the billing page. To migrate, click “Switch to Credit Based Billing” and make a payment. Advantages include:
- Support More Users Without Limits: You don’t need to worry about getting throttled or staying under usage limits on the conversations you can have with Vapi.
- Predictable Budgets: You know exactly how much you will spend on Vapi each month, and you can top up at any time as your needs grow.
- Select Add-Ons You Need: The credit based billing page allows you to select HIPAA compliance, dedicated Slack support, and the maximum number of concurrent calls you expect.
This will require human input to login and migrate your account. You will not be able to revert back to the old billing system.
October 8 to October 9, 2024
October 8 to October 9, 2024
-
Call Cost Information: You can now use
call.costs[type=vapi].subType
to determine if a VAPI cost isnormal
or anoverage
. - Updated Billing Page: Your payments are now returned inside a table with pages on the billing page.
October 7 to October 8, 2024
October 7 to October 8, 2024
-
New GPT-4o Model Support for Azure OpenAI: You can now specify the
gpt-4o-2024-08-06
model in themodels
field when configuring Azure OpenAI credentials. Use this model to access the latest GPT-4 operational capabilities in your applications. -
Specify Timestamps as Strings in
/logs
: We now expect timestamps as strings when working with logs. Please make sure to handle this accordingly in your applications.
October 6 to October 7, 2024
October 6 to October 7, 2024
-
Add Structured Outputs for OpenAI Functions in Assistant Tools: You can use OpenAI Structured Outputs by specifying a new parameter called
strict
as true or false when creating or usingOpenAIFunction
s inassistant.model.tools[type=function]
. Set thename
, provide adescription
(up to 1000 characters), and specifyparameters
as a JSON Schema object. See the OpenAI guide for examples. -
Secure Incoming SIP Phone Calls to Vapi Provided SIP Numbers: You can now specify a
username
,password
, and optionalrealm
in SIP Invite AuthZ header, through digest authentication. Create this secure SIP number by specifying an “authentication” object with the username and password fields insidePOST /phone-number
request body. Example:
-
Use Updated
handoff
,callback
Steps in Blocks: You can now useassistant.model.steps[type=handoff]
andassistant.model.steps[type=callback]
to control conversation flow in your assistant. UseHandoffStep
to move to the next step linearly without returning to the previous step, ideal for sequential tasks like forms. UseCallbackStep
to spawn a new conversation thread and return to the previous step once done, good for handling interruptions or sub-tasks within a conversation. -
Use Step Destinations and Assignment Mutation in Blocks: Specify destination nodes for each step with
assistant.model.steps[type=handoff].destinations[type=step]
to direct the workflow to specific steps based on certain conditions. Update context variables in each callback step withmutations[type=assignment]
, for example:assistant.model.steps[type=callback].mutations[type=assignment]