Per-message link shortening settings
You can now pass a settings object when creating a message to override account-level settings for that message. Currently, settings.link_shortening supports "enabled" and "disabled".
You can now pass a settings object when creating a message to override account-level settings for that message. Currently, settings.link_shortening supports "enabled" and "disabled".
We redesigned the login, registration, email confirmation, forgot password, and reset password pages with the updated Surge visual design system. More of HQ to come!
SIP trunk private beta projects can now list, retrieve, update, and delete SIP trunks through the API, in addition to creating them.
This feature is in private beta. Please reach out to support@surge.app or use the in-product chat to contact support and request access.
HQ now has call list and call detail pages, including call direction, status, duration, contact, phone number, and call leg details.
This feature is in private beta. Please reach out to support@surge.app or use the in-product chat to contact support and request access.
Phone number call handling can now use audio files for voicemail greetings.
This feature is in private beta. Please reach out to support@surge.app or use the in-product chat to contact support and request access.
Fixed an issue where monthly campaign fees could be counted once per campaign submission instead of once per campaign.
Message senders are now easier to identify in the inbox and embedded conversation views.
Fixed an issue where request and response bodies could disappear from API logs when filtering.
You can now update a phone number through the API, including its display name and attached campaign. See the documentation for the update phone number endpoint.
Accounts can now create and retrieve call signing profile registration status through the API. This means that you can now register so that we can send phone calls on behalf of you and your customers with an A-level STIR/SHAKEN attestation.
This feature is in private beta. Please reach out to support@surge.app or use the in-product chat to contact support and request access.
Inbound vCard attachments now render as contact cards in message views instead of appearing as generic files. The API also has a contact attachment type now to indicate when an attachment is a vCard.
Fixed a race condition that could move delivered messages back to sent. All affected messages have been updated.
Verification requests to reserved 555 numbers (eg +18015551234) now return an immediate validation error instead of failing silently.
Platform admins can now remove team members and cancel pending invites from the Team page.
Usage and invoice calculations now split campaign and phone number pricing, which lowers phone number pricing for accounts with multiple numbers on one campaign. Updated phone number and campaign pricing can be seen on our pricing page.
Surge now blocks sends earlier when the selected sender cannot be used for a destination country, returning an invalid_sender error instead of failing later.
Projects in our SIP trunking private beta can now create their own SIP trunks through the API. SIP trunks support both IP-based and credential-based authentication, and once created you can attach a phone number to a SIP trunk as a call handling method.
This feature is in private beta. Please reach out to support@surge.app or use the in-product chat to contact support and request access.
Previously, if you submitted a campaign to us through either the API or HQ, we would charge you for it. Now we will only bill you for the campaigns that are sent through to the carriers.
We've added optional monthly message limits that cap the number of outbound messages a project can send each month based on its subscription plan. These limits are high enough that most accounts will never see them, but they will prevent unintentional runaway spend or abuse. If you'd like to have the limit lifted for your account, please reach out to support.
You can now release a phone number through the API with the new DELETE /phone_numbers/{phone_number_id} endpoint. See the release phone number endpoint in the documentation for more details.
Fixed an issue where re-purchasing or re-adding a phone number that had previously been released could cause conflicts between the released and active versions of the number.
We've added new API endpoints to streamline onboarding for AI agent platforms. POST /agents/v0/projects provisions a passwordless user, platform, account, and API key in a single call, along with a demo phone verification, and POST /agents/v0/phone_verifications/{verification_id}/checks confirms the SMS verification code to finish setting up a demo participant. See our new skills file for instructions.
Following our undeliverable number detection, projects can now choose to bypass the undeliverable-number check. This is useful if you'd rather attempt delivery to numbers that have previously failed than risk blocking a message that might still get through. Reach out to support to enable this for your project.
In order to prevent abuse through demo numbers, Surge now prepends [SURGE DEMO] at the beginning of any messages sent through the demo number. This way recipients will be able to see that it's a demo message, and demo numbers can't be used for smishing attacks.
We added a new endpoint for listing all of the accounts in your project. See the documentation for the list accounts endpoint for more details.