Surge

What's New

All the most recent updates and improvements to Surge.

January 22, 2026
Bugfix

Allow SMS autoresponse message to be edited

Once an SMS autoresponse message was set, the form on the phone number settings page would hide itself when you attempted to change it. This made it impossible to edit the autoresponse message.

We’ve fixed this issue so that the form remains visible, allowing you to edit it once it’s been set.

January 21, 2026
Bugfix

Hide unread count with invalid filters

Previously when an invalid id was passed to the embeddable unread count component, the filters would just be ignored, and the component would show the count of all messages the user could view but hadn’t read.

We have now fixed this behavior so that if an invalid filter id is provided, the component will hide the unread count entirely, similar to how it behaves when the user has no unread messages. This change helps prevent confusion so that it won’t appear that there are unread messages when the filters are not valid.

January 18, 2026
Feature

By default, any links included in messages sent through our platform are shortened to better fit within a single SMS segment. These links are also tracked to provide insights on user engagement. Historically we’ve only shown statistics about link clicks within our dashboard and the embedded inbox component.

With this update, we’ve introduced a new link.followed webhook event that notifies you whenever a recipient follows a tracked link. For more information, see the documentation for the link followed webhook.

January 18, 2026
Feature

Metadata for messages

We now support attaching custom metadata to messages sent via the API. Like the metadata fields on Contacts and Users, this allows you to store additional information relevant to your application. Metadata can be used for filtering, reporting, tracking, and analytics.

The metadata field allows you to attach up to 50 key-value pairs to a message, with each value being a string up to 500 characters long. For more information, see the documentation for the Create message endpoint.

January 15, 2026
Feature

Delete users

Users can now be deleted via the API using DELETE /users/{user_id}. Deleting a user removes their access to any any embedded UI components, and they will no longer show up as targets for incoming calls. Any messages sent by that user will still show the user’s name as the sender. For more information, see the documentation for the delete user endpoint.

January 13, 2026
Feature

Filter API logs by request ID

You can now filter API logs by request ID, making it easier to trace specific requests and debug issues. This also makes it so that you can link to individual log entries directly for sharing with your team or with Surge support.

January 12, 2026
Improvement

Business fields for toll-free verification

Toll-free numbers will now require business information for verification. This matches the requirements for local numbers and helps to prevent spam from application-to-person messaging. The carriers are requiring this change to be implemented for all SMS APIs before February, so we’ve added these fields now to ensure compliance ahead of time.

Now when registering a toll-free number, you’ll be prompted to provide the following fields:

  • Business Type (sole proprietorship, corporation, LLC, etc.)
  • Legal Business Name (as registered with the IRS)
  • EIN (Employer Identification Number)

Sole proprietors will still be able to register toll-free numbers without needing an EIN, but all other business types will need to provide this information for verification.

January 11, 2026
Feature

Archive accounts

Accounts can now be archived both from the dashboard and via the API. Archiving an account removes it from the account list, releases all phone numbers in the account, and deactivates any campaigns in the account. After an account is archived, messages and other resources can no longer be created in the account.

Please note that this will not delete the associated data. To permanently delete an account and its data, please contact Surge support.

Dashboard

To archive an account from the dashboard, navigate to the account settings page and look for the “Archive” button in the top right corner of the page.

API

Accounts can be archived from the API using the DELETE /accounts/{account_id} endpoint. See the API documentation for more information.

January 9, 2026
Feature Private Beta

Receive incoming calls with the embeddable phone component

The embeddable phone component can now receive incoming calls. This allows users to take calls directly within the embedded UI, enhancing the communication experience.

This feature is in private beta. Please reach out to [email protected] or use the in-product chat to contact support and request access.

January 9, 2026
Improvement

Allow longer webhook endpoint URLs

Webhook endpoint URLs can now be up to 2048 characters long, accommodating more complex configurations and integrations.

January 2, 2026
Improvement

Custom 500 error page

Rather than displaying a generic error message when something goes wrong on our servers, we’ve implemented a custom 500 error page that provides a little more direction. Hopefully you never get the chance to see it, but it will be slightly more delightful when you do.

January 2, 2026
Improvement

Terms and conditions fields for carrier registration

Carriers have begun enforcing the requirement that a terms and conditions URL be provided when registering a number to be able to send SMS. While we were previously accepting a terms and conditions URL for campaigns registered via the API, we have now made this a required field for all new campaign registrations, and we’ve added a new screen in the dashboard to allow users to provide this URL when registering a new campaign. This screen also contains boilerplate terms and conditions that you can host on your site in order to be compliant.

January 1, 2026
Feature

Filter Inbox component by phone number

You can now provide a phone_number_id parameter to the Inbox component to tell it to only show conversations associated with a specific phone number. This is great for use cases where you have multiple phone numbers and want to embed the Inbox component for each individual number separately.

See the Inbox component documentation for more details.