Stay up to date with the latest changes to Synthflow.

May 14, 2026

Phone Book Support in Call Transfer API

You can now reference an existing phone book in call transfer actions with phone_book_id, bringing the API in line with the UI.

EndpointChange
POST /actionsCreates LIVE_TRANSFER actions with either phone_book_id or phone.
PUT /actions/{action_id}Updates LIVE_TRANSFER actions with either phone_book_id or phone.

May 13, 2026

Synthflow TTS voice model

Synthflow TTS is now available as a voice model option in the agent editor. It delivers low-latency, natural-sounding speech across 32 languages with 12 built-in voices.

The GET /voices endpoint now supports search and provider query parameters for filtering, and voice responses include provider, gender, and languages fields.

Outbound number pooling for agents

You can now assign multiple outbound phone numbers to one agent and choose the caller ID for each outbound call. See the Outbound Number Pooling guide.

EndpointChange
GET /assistants/{model_id}Returns attached_phone_numbers with each attached number’s number, sid, and slug.
PUT /assistants/{model_id}/phone_numbersAttaches multiple outbound numbers using phone_numbers or phone_number_slugs.
DELETE /assistants/…/{phone_number_slug}Detaches one outbound number from the agent.
POST /callsAccepts from_phone_number to select the outbound caller ID for that call.

Knowledge Base API: New Endpoint

You can now update existing knowledge base sources by source ID. The endpoint supports name, url for link and file sources, and content for text sources.

EndpointChange
PUT /sources/{source_id}Updates the source name and type-specific fields.

May 12, 2026

Contacts is now Memory

Nothing was removed, we just cleaned up where things belong. The page that used to be called Contacts in the left-hand sidebar is now Memory, which better describes what it actually holds: the long-term knowledge your agents reuse across calls.

Phone books now live inside Call Transfers, so they sit alongside the rest of your call-handling tools instead of in a separate area of the app. You’ll find them in the same place you configure transfer destinations, no need to switch sections to manage routing.


May 7, 2026

Salesforce Sandbox support in custom actions

Custom actions now support Salesforce Sandbox environments. Use the Salesforce integration guide to connect Salesforce Production and Salesforce Sandbox in the same workspace and choose the right environment for each action.

Authentication type menu with Salesforce and Salesforce Sandbox options


May 5, 2026

Subaccounts API improvements: New permission and quota fields

We’ve improved the Subaccounts API with more options to manage subaccounts, including explicit permission mutations, finer-grained quota controls, and additional permission flags returned.

The legacy permissions object on Update Subaccount is no longer accepted for permission changes; use grant_permissions and revoke_permissions instead.

New request fields on POST and PUT Subaccount

FieldDescription
concurrencyMaximum simultaneous calls.
max_agentsMaximum agents the subaccount can create.
max_minutesMinute allocation for the subaccount.
max_workflow_runsWorkflow-run allocation for the subaccount.
grant_permissionsPermissions to grant. See the supported values.
revoke_permissionsPermissions to revoke. See the supported values.

New response fields added to the permissions object returned by GET Subaccount:

FieldDescription
inboundCan create inbound voice agents.
outboundCan create outbound voice agents.
widgetCan create web widget agents.
chatCan create chat agents.
logsCan access call, chat, API, and webhook logs.
simulationsCan access call simulations.
analyticsCan view the analytics dashboard.

Updated endpoints:

EndpointTitle
POST /subaccountsCreate a subaccount
PUT /subaccounts/{subaccount_id}Update a subaccount
GET /subaccounts/{subaccount_id}Get a subaccount
GET /subaccountsList subaccounts

May 1, 2026

New EU region

The EU cluster is now available for new workspaces, with all data storage and compute kept inside the European Union. Cluster selection is permanent, so review your data residency requirements before creating the workspace.

See Clusters & Regions for details.


April 24, 2026

Global SIP trunking — new signalling and media IPs

We’re expanding the Global region with additional signalling and media infrastructure. New IPs must be allow-listed before the rollout on May 21, 2026.

This change affects Global-region SIP trunking customers only. US and EU regions are not affected.

What you need to do

Update your firewall or ACL rules to include the new Global-region signalling and media IPs:

New signalling IPs (ports 32681 UDP/TCP, 32682 TLS):

  • 34.75.151.191/32
  • 34.23.45.239/32
  • 35.231.28.238/32

New media IPs (UDP 10000–60000):

  • 34.139.134.58
  • 34.73.14.16
  • 34.139.114.28

See the SIP trunking network guidelines page for the full updated allow-list, effective May 21, 2026.

If you have questions, raise a support ticket.


April 21, 2026

Subaccount API — Deprecation of permissions object

The legacy permissions object in the PUT Subaccount endpoint is being deprecated and will no longer be supported for permission updates.

Effective date: May 5, 2026 (in two weeks)

What’s changing

The current permissions object (boolean-based) will be removed from the update flow. Permission updates must instead be made using the new explicit mutation fields:

  • grant_permissions
  • revoke_permissions

Why this change

This update introduces explicit and unambiguous permission handling, preventing accidental overwrites and making permission updates safer and more predictable as the permissions model expands.

What you need to do

If you are currently sending:

1{
2 "permissions": {
3 "assistants": true,
4 "actions": false
5 }
6}

You should migrate to:

1{
2 "grant_permissions": ["assistants"],
3 "revoke_permissions": ["actions"]
4}

Important notes

  • Requests containing the legacy permissions object will be rejected after the effective date.
  • Only grant_permissions and revoke_permissions will be honored moving forward.
  • This change applies specifically to the PUT Subaccount endpoint.

April 16, 2026

Variables on SMS, real-time booking, and call transfers

Send SMS, real-time booking, and call transfers now support variables the same way as Custom Actions, so one value from the caller can flow through those actions without duplicating it.

Learn more about variables on actions.


April 14, 2026

In-call SMS and WhatsApp messaging

Voice agents can now send SMS or WhatsApp messages during a live call and feed the customer’s reply back into the conversation as a variable. This is useful for capturing details that are hard to relay by voice — one-time passcodes, email addresses, invoice IDs, links, and short menus of options.

  • Two new action types, INCALL_SMS and INCALL_WHATSAPP, attachable to a voice agent under the During phase.
  • Blocking or non-blocking reply handling with a configurable timeout and fallback message.
  • Replies are injected into the call transcript and exposed as {sms_reply} / {whatsapp_reply} variables.
  • Requires a connected Twilio account; in-call WhatsApp additionally requires a linked WhatsApp sender.

See the In-Call Messaging guide.

EndpointChange
POST /actionsAccepts INCALL_SMS and INCALL_WHATSAPP action types.
PUT /actions/{action_id}Accepts INCALL_SMS and INCALL_WHATSAPP action types.
GET /actions/{action_id}action_type may be INCALL_SMS or INCALL_WHATSAPP.
GET /actionsaction_type may be INCALL_SMS or INCALL_WHATSAPP.