diff --git a/fern/products/apis/pages/core/authorization.mdx b/fern/products/apis/pages/core/authorization.mdx
index ed51089324..afe01bd26c 100644
--- a/fern/products/apis/pages/core/authorization.mdx
+++ b/fern/products/apis/pages/core/authorization.mdx
@@ -44,10 +44,20 @@ Authorization: Basic YTFiMmMzZDQtZTVmNi03ODkwLWFiY2QtZWYxMjM0NTY3ODkwOjR0akNHbm1
Your Project ID and API Tokens are available in the
[SignalWire Dashboard](/docs/platform/your-signalwire-api-space).
+
+
+
+
+
+
+In the Dashboard, open **API Credentials**. Copy the **Project ID**, then reveal and copy an existing API token or select **+ New** to create one.
+
+
+
### API token scopes
Tokens can be scoped to limit API access.
diff --git a/fern/products/compatibility-api/pages/cxml/guides/gathering-user-input.mdx b/fern/products/compatibility-api/pages/cxml/guides/gathering-user-input.mdx
index eb872d3e90..10666a6f5d 100644
--- a/fern/products/compatibility-api/pages/cxml/guides/gathering-user-input.mdx
+++ b/fern/products/compatibility-api/pages/cxml/guides/gathering-user-input.mdx
@@ -76,6 +76,14 @@ incoming webhook requests.
The final step is to configure one of your SignalWire phone numbers to answer calls using the cXML Script we just created.
You can do that from the "Phone Numbers" section:
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the cXML script, and save.
+
diff --git a/fern/products/compatibility-api/pages/cxml/guides/receiving-your-first-sms.mdx b/fern/products/compatibility-api/pages/cxml/guides/receiving-your-first-sms.mdx
index c0ee94648a..b4a437dc92 100644
--- a/fern/products/compatibility-api/pages/cxml/guides/receiving-your-first-sms.mdx
+++ b/fern/products/compatibility-api/pages/cxml/guides/receiving-your-first-sms.mdx
@@ -57,10 +57,20 @@ which allows you to generate scripts dynamically.
Navigate to the "Resources" tab from the sidebar and create a new Resource.
There, select the resource type of "Script", and pick "cXML script".
+
+

+
+
+
+
+In **My Resources**, select **+ Add New** > **Script** > **cXML Script**.
+
+
+
### Paste the script
@@ -102,10 +112,20 @@ You will need at least one number to receive messages.
Navigate to the "Phone Numbers" section of your Dashboard and open the settings for the number you want to configure.
There, assign the cXML script you just created to handle messages.
+
+

+
+
+
+
+On the phone number's edit page, select **+ Assign Resource** under **Inbound Message Settings**, choose the cXML script, and save.
+
+
+
### Send a test SMS
Try sending a message to the configured phone number.
@@ -149,10 +169,20 @@ Follow the above guide, with the following changes:
Navigate to the "LaML/cXML" section of your Dashboard and create a new cXML bin with the content above.
+
+

+
+
+
+
+In the legacy Dashboard, open **cXML/LaML** > **Bins** and select **+ New** to create a cXML bin.
+
+
+
**Assign a phone number**
Open the settings for the number you want to configure.
diff --git a/fern/products/compatibility-api/pages/cxml/guides/securing-callback-for-inbound-fax.mdx b/fern/products/compatibility-api/pages/cxml/guides/securing-callback-for-inbound-fax.mdx
index b8229d2f65..69f76d24a5 100644
--- a/fern/products/compatibility-api/pages/cxml/guides/securing-callback-for-inbound-fax.mdx
+++ b/fern/products/compatibility-api/pages/cxml/guides/securing-callback-for-inbound-fax.mdx
@@ -24,10 +24,20 @@ How To Run the Application
In order to achieve this via XML, you will have to navigate to the **cXML/LaML** section on the left side of your SignalWire Dashboard and under **Bins** select **+ New** to create a new LaML Bin.
+
+

+
+
+
+
+In the legacy Dashboard, open **cXML/LaML** > **Bins**, select **+ New**, and create the cXML bin used to receive the fax.
+
+
+
We then need to enter in the XML language for receiving a fax into our LaML Bin.
The below code is taken from the [Receive a Fax in Compatibility XML example](/docs/compatibility-api/cxml/reference/fax/receive#examples).
diff --git a/fern/products/compatibility-api/pages/cxml/guides/sending-your-first-sms.mdx b/fern/products/compatibility-api/pages/cxml/guides/sending-your-first-sms.mdx
index 3be2afa5b9..009e3642db 100644
--- a/fern/products/compatibility-api/pages/cxml/guides/sending-your-first-sms.mdx
+++ b/fern/products/compatibility-api/pages/cxml/guides/sending-your-first-sms.mdx
@@ -26,12 +26,22 @@ you need API credentials. Find these in your [SignalWire Space](https://signalwi
If this is the first time you are using API credentials, you will need to create
an API token.
+
+

+
+
+
+
+Open **API Credentials** in the Dashboard and copy the **Project ID**, **Space URL**, and an API token with the scopes required to send messages. If necessary, select **+ New** to create a token.
+
+
+
In the "API" section you will find all the information you'll need. In particular:
@@ -150,4 +160,4 @@ Make sure to replace all placeholders with your own values.
This example used the [Compatibility API](/docs/compatibility-api), and in
particular the [Compatibility REST API](/docs/compatibility-api/rest), to
-send a message.
\ No newline at end of file
+send a message.
diff --git a/fern/products/compatibility-api/pages/cxml/guides/webhooks/index.mdx b/fern/products/compatibility-api/pages/cxml/guides/webhooks/index.mdx
index b7debe6455..1084cc127f 100644
--- a/fern/products/compatibility-api/pages/cxml/guides/webhooks/index.mdx
+++ b/fern/products/compatibility-api/pages/cxml/guides/webhooks/index.mdx
@@ -92,12 +92,22 @@ Some carriers may send delayed DLRs, and others may not send DLRs at all. Provid
To access the number settings and configure the webhooks in the SignalWire Space, click on **Phone Numbers** and find the number to set up.
+
+

+
+
+
+
+Open **Phone Numbers** > **Purchased**, search for the number if necessary, and select its name to open its settings.
+
+
+
Click on the phone number to be set up and then click to **Edit Settings**.
In the Edit Settings page, the number can be given a name and set up **Voice/Fax & Messaging** settings.
diff --git a/fern/products/compatibility-api/pages/cxml/guides/webhooks/webhook-security.mdx b/fern/products/compatibility-api/pages/cxml/guides/webhooks/webhook-security.mdx
index 171f4a2602..cb9c16aec6 100644
--- a/fern/products/compatibility-api/pages/cxml/guides/webhooks/webhook-security.mdx
+++ b/fern/products/compatibility-api/pages/cxml/guides/webhooks/webhook-security.mdx
@@ -17,12 +17,22 @@ If your application exposes sensitive data or makes changes to your data, then y
You can find your personalized signing key in the [API Credentials Space](https://my.signalwire.com?page=credentials) of your Dashboard. Click "Show" to display the key and a copy icon to easily copy the signature into your code. Each project in your Dashboard will have its own signing key for verification. You can reset the signing key by clicking the reset button. Please note that it takes about a minute for the new key to be active. You will also be able to see the new key before finalizing the reset request so that you can copy it to wherever it needs to be updated.
+
+

+
+
+
+
+In the Dashboard, open **API Credentials**, find **Signing Key**, and select **Show**. Copy the key for the project whose webhook requests you are verifying.
+
+
+
## Verifying the webhook signature
### NodeJs
diff --git a/fern/products/compatibility-api/pages/rest-api/core/authorization.mdx b/fern/products/compatibility-api/pages/rest-api/core/authorization.mdx
index b141000b8f..a709e16c53 100644
--- a/fern/products/compatibility-api/pages/rest-api/core/authorization.mdx
+++ b/fern/products/compatibility-api/pages/rest-api/core/authorization.mdx
@@ -44,10 +44,20 @@ Authorization: Basic YTFiMmMzZDQtZTVmNi03ODkwLWFiY2QtZWYxMjM0NTY3ODkwOjR0akNHbm1
Your Project ID and API Tokens are available in the
[SignalWire Dashboard](/docs/platform/your-signalwire-api-space).
+
+
+
+
+
+
+In the Dashboard, open **API Credentials**. Copy the **Project ID**, then reveal and copy an existing API token or select **+ New** to create one.
+
+
+
### API token scopes
Tokens can be scoped to limit API access.
diff --git a/fern/products/platform/pages/calling/fax/overview.mdx b/fern/products/platform/pages/calling/fax/overview.mdx
index 33f1548e9b..79d6982a4f 100644
--- a/fern/products/platform/pages/calling/fax/overview.mdx
+++ b/fern/products/platform/pages/calling/fax/overview.mdx
@@ -51,11 +51,21 @@ If you don't have a number yet, navigate to the Phone Numbers section and [buy a
From your [SignalWire Dashboard](https://my.signalwire.com/dashboard), create a new Resource by navigating to the resources tab, then select the "New Script" option and choose "New SWML application".
+
+

+
+
+
+
+In the Dashboard, open **My Resources**, select **+ Add New** > **Script** > **SWML Application**, then create a hosted script for the fax-handling SWML.
+
+
+
Paste the following code into your script:
```yaml
@@ -97,11 +107,21 @@ Navigate to the "Phone Numbers" tab on the left sidebar.
From this tab, click on your newly purchased phone number, then on the "edit settings" option.
In the settings page that appears, select "Assign Resource" for "Inbound Call Settings".
+
+

+
+
+
+
+On the phone number's edit page, select **+ Assign Resource** under **Inbound Call Settings**, choose the fax script, and save.
+
+
+
Select the newly created script, then click "Save" to apply the configuration.
@@ -112,10 +132,20 @@ Send a test fax to your configured phone number and then open the respective cal
Copy the link found in the **Document** parameter and paste it into your browser to view your fax.
+
+

+
+
+
+
+Open **Logs** > **Calling**, select the fax call's log entry, and copy the URL in its **Document** field to view the received fax.
+
+
+
diff --git a/fern/products/platform/pages/calling/voice/SIP/sip-trunking/index.mdx b/fern/products/platform/pages/calling/voice/SIP/sip-trunking/index.mdx
index 0a4bfffc5b..3e9371a86f 100644
--- a/fern/products/platform/pages/calling/voice/SIP/sip-trunking/index.mdx
+++ b/fern/products/platform/pages/calling/voice/SIP/sip-trunking/index.mdx
@@ -57,8 +57,18 @@ See [Buying a Phone Number](/docs/platform/phone-numbers) for step-by-step instr
In the number's setting, click on the "Assign Resource" button and select your SIP endpoint resource.
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the SIP Endpoint Resource, and save.
+
+
+
If you prefer to use API calls, you will need the [Search for Available Phone Numbers](/docs/apis/rest/phone-numbers/search-available-phone-numbers),
@@ -133,6 +143,8 @@ that you would like to register, and then click `Edit Settings` button. From her
`Handle Incoming Calls` section, select `SIP Endpoint`, then input the SIP address you created.
+
+
+
+
+
+
+In the legacy Dashboard, edit the phone number, set **Accept Incoming Calls as** to **Voice Calls**, set **Handle Calls Using** to **a SIP Endpoint**, and select the SIP address under **When a Call Comes In, Forward the Call to**.
+
+
+
diff --git a/fern/products/platform/pages/calling/voice/TTS/fish.mdx b/fern/products/platform/pages/calling/voice/TTS/fish.mdx
index 8d87a9c3e3..6565c2a40b 100644
--- a/fern/products/platform/pages/calling/voice/TTS/fish.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/fish.mdx
@@ -133,9 +133,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/grok.mdx b/fern/products/platform/pages/calling/voice/TTS/grok.mdx
index e6d680a166..d6afec15bf 100644
--- a/fern/products/platform/pages/calling/voice/TTS/grok.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/grok.mdx
@@ -96,9 +96,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/groq-tts.mdx b/fern/products/platform/pages/calling/voice/TTS/groq-tts.mdx
index 6b34d6c583..c72eb77861 100644
--- a/fern/products/platform/pages/calling/voice/TTS/groq-tts.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/groq-tts.mdx
@@ -153,9 +153,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/inworld.mdx b/fern/products/platform/pages/calling/voice/TTS/inworld.mdx
index d9f4002db7..02362dd350 100644
--- a/fern/products/platform/pages/calling/voice/TTS/inworld.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/inworld.mdx
@@ -155,9 +155,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/minimax.mdx b/fern/products/platform/pages/calling/voice/TTS/minimax.mdx
index d0ad5d44c0..286cac1bd8 100644
--- a/fern/products/platform/pages/calling/voice/TTS/minimax.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/minimax.mdx
@@ -145,9 +145,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/mistral.mdx b/fern/products/platform/pages/calling/voice/TTS/mistral.mdx
index f1bd7297ed..f0a1893765 100644
--- a/fern/products/platform/pages/calling/voice/TTS/mistral.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/mistral.mdx
@@ -136,9 +136,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/rime.mdx b/fern/products/platform/pages/calling/voice/TTS/rime.mdx
index 6604f32796..150446a925 100644
--- a/fern/products/platform/pages/calling/voice/TTS/rime.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/rime.mdx
@@ -184,9 +184,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/smallest.mdx b/fern/products/platform/pages/calling/voice/TTS/smallest.mdx
index 81dc6f7b08..f98133a823 100644
--- a/fern/products/platform/pages/calling/voice/TTS/smallest.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/smallest.mdx
@@ -141,9 +141,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/TTS/speechify.mdx b/fern/products/platform/pages/calling/voice/TTS/speechify.mdx
index 5a2ce830d0..00a7e9ef3d 100644
--- a/fern/products/platform/pages/calling/voice/TTS/speechify.mdx
+++ b/fern/products/platform/pages/calling/voice/TTS/speechify.mdx
@@ -133,9 +133,7 @@ Navigate to the **Phone Numbers** section of the Dashboard's left sidebar menu.
Purchase a phone number and assign it to the desired SWML script.
-
- 
-
+
### Give it a call!
diff --git a/fern/products/platform/pages/calling/voice/caller-id-and-cnam.mdx b/fern/products/platform/pages/calling/voice/caller-id-and-cnam.mdx
index fe10a15c69..4d630fdec6 100644
--- a/fern/products/platform/pages/calling/voice/caller-id-and-cnam.mdx
+++ b/fern/products/platform/pages/calling/voice/caller-id-and-cnam.mdx
@@ -51,12 +51,22 @@ On a SIP credential, two fields control the displayed identity:
Configure both fields in your [SIP Endpoint settings](https://my.signalwire.com/resources/sips).
+
+

+
+
+
+
+The SIP Endpoint settings include **Username**, **Password**, **Caller ID**, and **Send As** fields. Use **Caller ID** for SIP-to-SIP calls and **Send As** for PSTN calls.
+
+
+
To set caller names by extension on SIP-to-SIP calls, configure that within your PBX.
For example, Asterisk uses the **Outbound Caller ID name** option on the dialplan. Check your PBX documentation for details.
diff --git a/fern/products/platform/pages/messaging/sms/character-limits.mdx b/fern/products/platform/pages/messaging/sms/character-limits.mdx
index e067fbe0a5..a856ec1e6e 100644
--- a/fern/products/platform/pages/messaging/sms/character-limits.mdx
+++ b/fern/products/platform/pages/messaging/sms/character-limits.mdx
@@ -33,12 +33,22 @@ View Message Encoding
Check your SignalWire Space portal for the full breakdown to see how your messages are encoded and sent. Click an individual message record to see the encoding details, cost, character count, number of segments, and number of media attachments.
+
+

+
+
+
+
+The **Message Encoding Details** view separates a multipart message into numbered segments. It marks the User Data Header (UDH) at the start of each segment and identifies characters such as emoji that affect encoding.
+
+
+
GSM
---
diff --git a/fern/products/platform/pages/messaging/sms/the-campaign-registry/registration/index.mdx b/fern/products/platform/pages/messaging/sms/the-campaign-registry/registration/index.mdx
index 2f1fb7be1a..42e658987c 100644
--- a/fern/products/platform/pages/messaging/sms/the-campaign-registry/registration/index.mdx
+++ b/fern/products/platform/pages/messaging/sms/the-campaign-registry/registration/index.mdx
@@ -94,8 +94,18 @@ To see the details of an existing Brand, click on the Brand Name. None of these
details are editable. If you are trying to make changes to an existing Brand,
please use the button to contact Support for assistance.
+
+

+
+
+
+
+Select a Brand name to open its detail page. The page has **Settings**, **Campaigns**, **Campaign Phone Numbers**, and **Assignment Orders** tabs; use **Contact Support** if its locked details must change.
+
+
+
### Creating a new brand
@@ -108,8 +118,18 @@ To create a new Brand, start by clicking the blue "+ New" button to open the New
Campaign Service Provider (CSP) by clicking the "Create a Partner Brand" button.
1. Create a new Brand to register and manage with SignalWire by filling out the form.
+
+

+
+
+
+
+The New Brand wizard has **Company Details**, **Company Contact**, and **Legal** steps. To import an approved brand from another Campaign Service Provider, choose **Create a Partner Brand** instead.
+
+
+
For new Brands, all of the fields on the details page are required by The
Campaign Registry. Be careful with your
@@ -118,8 +138,18 @@ information error.
Each Brand should have a unique EIN, or you will risk damaging your trust score. After completing the three Brand creation steps, you will see a success message.
+
+

+
+
+
+
+After submission, the Dashboard confirms that the Brand was submitted successfully and is usually reviewed within one business day. Continue to Campaign registration after approval.
+
+
+
TCR will check all of your information against multiple databases and return a status of _Verified_ or _Unverified_. Brand details can only be edited and resubmitted for a Brand in an _Unverified_ status. Your Campaign Registration Specialist will assist you if resubmission is required.
**Each submission incurs a $4 charge.**
@@ -128,8 +158,18 @@ TCR will check all of your information against multiple databases and return a s
## Campaigns
+
+

+
+
+
+
+Open **Messaging Campaigns** and select the **Campaigns** tab to view Campaign names, associated Brands, use cases, and statuses. Select **+ New** to register a Campaign.
+
+
+
After your Brand is verified, you can add Campaigns. The simplest way to
describe a Campaign is a unique use case. For example, if you send marketing
messages and also send two-factor authentication messages, that would represent
@@ -150,8 +190,18 @@ To see the details of an existing Campaign, click on the Campaign Name. None of
these details are editable. If you are trying to make changes to an existing
Campaign, please use the button to contact Support for assistance.
+
+

+
+
+
+
+Select a Campaign name to open its **Settings**, **Campaign Phone Numbers**, and **Assignment Orders** tabs. Use **Contact Support** if its locked registration details must change.
+
+
+
### Creating a Campaign
@@ -163,12 +213,22 @@ Information required for each Campaign will be your Campaign's use cases,
opt-in/out process, and message samples. Begin by clicking the blue "+ New"
button on the top right of your Campaigns page.
+
+

+
+
+
+
+Complete the New Campaign wizard's five steps: **Basic Information**, **Campaign Templates**, **Opt-in/Opt-out**, **Legal**, and **Terms and Conditions**.
+
+
+
Fill in the fields with as much detail as possible. Submitting incomplete or inaccurate information could add processing time and require resubmission with additional fees. When you reach the last step, please take note of the submission fees before submitting. You will see the success screen when you have completed this process.
Once registered, each campaign will be given a unique ID which will be
@@ -180,8 +240,18 @@ Campaigns tab. If you click on the Campaign name, you will see the Campaign
details, phone numbers assigned to the Campaign, and an Assignment Orders tab to
add new numbers to the Campaign.
+
+

+
+
+
+
+The Campaign detail page exposes **Settings**, **Campaign Phone Numbers**, and **Assignment Orders**. Settings show registration properties and sample messages; use the other tabs to review or add assigned numbers.
+
+
+
You can assign phone numbers to your Campaign while the registration is still
pending, but they can not be put to use until the registration process is
complete with **both The Campaign Registry and our upstream DCA partners** who
@@ -201,8 +271,18 @@ For inbound-only use cases (receiving messages without sending), contact [Suppor
+
+

+
+
+
+
+The **Campaign Phone Numbers** tab lists each assignment's ID, number, Brand, Campaign, and status. Select **+ New** to create an assignment order.
+
+
+
From here, you can click on multiple links to manage your Campaign number
details:
@@ -222,8 +302,18 @@ New" button on either this **Campaign Phone Numbers tab** or from the **Campaign
details page** you can create a new assignment order in the **Assignment Orders
tab**.
+
+

+
+
+
+
+In the **Assign Phone Numbers** workflow, select the Campaign for the number-assignment order and choose **Continue** to select numbers.
+
+
+
Whichever method you use, when you create a phone number assignment for a brand
new Campaign, SignalWire has to send information up to our carriers to get it
connected on their end. For a brand new campaign, this process can take up to 24
diff --git a/fern/products/platform/pages/platform/call-fabric/resources.mdx b/fern/products/platform/pages/platform/call-fabric/resources.mdx
index c91b1f0e01..6a6f6e77e5 100644
--- a/fern/products/platform/pages/platform/call-fabric/resources.mdx
+++ b/fern/products/platform/pages/platform/call-fabric/resources.mdx
@@ -83,16 +83,36 @@ You can create, manage, edit, delete, and test your Space's Resources all from y
+
+

+
+
+
+
+Open **My Resources** in the Dashboard's left sidebar. Resources are grouped as **AI Agents**, **Call Flows**, **FreeSWITCH Connectors**, **Relay Applications**, **Scripts**, **SIP**, **Subscribers**, and **Video Rooms**; select **+ Add** to create one.
+
+
+
Click the **Add** button to select from the grid of available Resource types.
+
+

+
+
+
+
+The Resource picker offers **Script**, **AI Agent**, **Conference Room**, **Relay Application**, **Subscriber**, **FreeSWITCH Connector**, **Call Flow**, and **SIP**.
+
+
+
Alternatively, you can create new Resources from their subpages in the sidebar menu, or using the shortcuts on the Dashboard homepage.
After selecting a Resource, enter the details for the Resource on a new page, and select Create to confirm.
@@ -108,10 +128,20 @@ to upgrade your Space to the new UI.
From the Resources page in your SignalWire Dashboard, select the desired Resource to open a detailed view.
Here, by selecting the `Edit` button, you can alter the specifics of the Resource.
+
+

+
+
+
+
+The **My Resources** page lists each Resource's name, type, and last update time. Use its search and type filters to find a Resource, then select it to modify or delete it.
+
+
+
## Next steps
diff --git a/fern/products/platform/pages/platform/core/how-to-enable-international-outbound-dialing-sms.mdx b/fern/products/platform/pages/platform/core/how-to-enable-international-outbound-dialing-sms.mdx
index ecb8e7218b..99b112e29a 100644
--- a/fern/products/platform/pages/platform/core/how-to-enable-international-outbound-dialing-sms.mdx
+++ b/fern/products/platform/pages/platform/core/how-to-enable-international-outbound-dialing-sms.mdx
@@ -58,10 +58,20 @@ Follow the steps below to complete:
First, navigate to your signalwire Dashboard, and click on the Space dropdown menu at top left of the page:
+
+

+
+
+
+
+Open the Space-name menu at the top-left of the Dashboard and select **Space Settings**.
+
+
+
There select `Space Settings`. You'll be taken to the Settings page.
diff --git a/fern/products/platform/pages/platform/core/media-protection.mdx b/fern/products/platform/pages/platform/core/media-protection.mdx
index 73fb5ae7f2..fb6585dbe2 100644
--- a/fern/products/platform/pages/platform/core/media-protection.mdx
+++ b/fern/products/platform/pages/platform/core/media-protection.mdx
@@ -34,10 +34,20 @@ Navigate to the [projects page][projects-page] and select the project where you
Once in your project dashboard, click on the area where your project name is displayed. This should open a menu with an option called `Project Configuration`.
Click on this option to be directed to the project settings page.
+
+

+
+
+
+
+Open the project-name menu at the top of the Dashboard and select **Project Configuration**.
+
+
+
### Locate media URL protection
Scroll down to find the **Media URL Protection Details** section, which contains three independent toggles:
@@ -47,10 +57,20 @@ Scroll down to find the **Media URL Protection Details** section, which contains
- **Protect Fax Media URLs** - secures fax documents and their attachments. Fax metadata and delivery confirmations remain unaffected.
+
+

+
+
+
+
+Under **Settings** > **Media URL Protection Details**, independently set **Protect Recording Media URLs**, **Protect Message Media URLs**, and **Protect Fax Media URLs** to **Yes** as needed.
+
+
+
### Enable protection
Toggle any combination of the three protection options from **No** to **Yes** based on your security requirements. Changes take effect immediately.
@@ -64,4 +84,3 @@ Now when a request is sent to a media URL, if no valid authentication is provide
-
diff --git a/fern/products/platform/pages/platform/core/segment-ids.mdx b/fern/products/platform/pages/platform/core/segment-ids.mdx
index be3d143a1b..657ba7efc2 100644
--- a/fern/products/platform/pages/platform/core/segment-ids.mdx
+++ b/fern/products/platform/pages/platform/core/segment-ids.mdx
@@ -19,10 +19,20 @@ You will see sections related to Voice, Conferencing, Messaging, and Fax.
Open the detail view of any individual log you'd like to investigate or find the SID of.
+
+

+
+
+
+
+Open **Logs** in the Dashboard, choose **Calling**, **Conferencing**, **Messaging**, or **Fax**, and select a log entry to view its SID.
+
+
+
The SID will be displayed in the log under the "Voice Segment ID", "Message Segment ID", or "Fax Segment ID" section, depending on the type of communication.
In REST APIs related to calls, messages, and faxes, the SID is returned in the response as `id`.
diff --git a/fern/products/platform/pages/platform/core/webhooks/index.mdx b/fern/products/platform/pages/platform/core/webhooks/index.mdx
index b88e4d2e87..7184d68470 100644
--- a/fern/products/platform/pages/platform/core/webhooks/index.mdx
+++ b/fern/products/platform/pages/platform/core/webhooks/index.mdx
@@ -37,38 +37,78 @@ flowchart LR
In the SignalWire Dashboard, open the **My Resources** tab and click **+ Add**, then choose **SWML Script**.
+
+

+
+
+
+
+In **My Resources**, select **+ Add**, then choose **Script** > **SWML Application**.
+
+
+
Give the script a name, set **Handle Calls Using** to **External URL**, and enter your webhook URL in the **Primary Script URL** field. Click **Create** to save the Resource.
+
+

+
+
+
+
+In the **New SWML Application** form, enter a name, set **Handle Calls Using** to **External URL**, enter the webhook endpoint in **Primary Script URL**, and create the Resource.
+
+
+
### Assign the Resource to your phone number
Open the **Phone Numbers** tab and select the number you want to configure.
+
+

+
+
+
+
+Open **Phone Numbers** > **Purchased**, search for the number if necessary, and select its name to open its settings.
+
+
+
Click **Edit Settings**. Under **Inbound Call Settings** (or **Inbound Message Settings** for messaging), choose **Assign Resource**, select the Resource you created, and click **Save**.
+
+

+
+
+
+
+On the phone number's edit page, select **+ Assign Resource** under **Inbound Call Settings** for calls or **Inbound Message Settings** for messages. Choose the webhook Resource and save.
+
+
+
@@ -167,12 +207,22 @@ For critical paths, use a mechanism whose failure modes are visible to your appl
To verify webhooks that originated from SignalWire, SignalWire signs its requests with a digital HMAC security key.
You can verify that the security key matches the key documented in your Dashboard's [API Credentials](https://my.signalwire.com?page=credentials) with the `validateRequest` method.
+
+

+
+
+
+
+In the Dashboard, open **API Credentials**, find **Signing Key**, and select **Show** to reveal the key for the current project.
+
+
+
For production applications, it is extremely important to verify the webhook signature to ensure the requests are coming from SignalWire and not a malicious third party.
diff --git a/fern/products/platform/pages/platform/integrations/FreeSWITCH/add-ai-to-freeswitch/index.mdx b/fern/products/platform/pages/platform/integrations/FreeSWITCH/add-ai-to-freeswitch/index.mdx
index dba71f3380..dbcdaac562 100644
--- a/fern/products/platform/pages/platform/integrations/FreeSWITCH/add-ai-to-freeswitch/index.mdx
+++ b/fern/products/platform/pages/platform/integrations/FreeSWITCH/add-ai-to-freeswitch/index.mdx
@@ -57,12 +57,22 @@ For more complex AI use-cases, you might want to consider using [SignalWire Mark
You can use a SWML script resource to define the AI agent's behavior.
+
+

+
+
+
+
+In the Dashboard, open **SIP** > **Domain Apps**, edit the domain application, set **Handle Using** to **an AI Agent**, and select the agent under **When a Call Comes In**.
+
+
+
---
## **FreeSWITCH Dialplan Configuration**
@@ -176,4 +186,3 @@ the TCP transport. This effectively forwards the call to the specified SIP addre
-
diff --git a/fern/products/platform/pages/platform/integrations/FreeSWITCH/installing-freeswitch-or-freeswitch-advantage/index.mdx b/fern/products/platform/pages/platform/integrations/FreeSWITCH/installing-freeswitch-or-freeswitch-advantage/index.mdx
index f338cda8af..7af78b3005 100644
--- a/fern/products/platform/pages/platform/integrations/FreeSWITCH/installing-freeswitch-or-freeswitch-advantage/index.mdx
+++ b/fern/products/platform/pages/platform/integrations/FreeSWITCH/installing-freeswitch-or-freeswitch-advantage/index.mdx
@@ -28,6 +28,8 @@ Before we begin, here is some general FreeSWITCH terminology that may be importa
A SignalWire account is now required to download the pre-build FreeSWITCH binaries. First [create a SignalWire Space](/docs/platform/signing-up-for-a-space), then go to the `Personal Access Tokens`
section located on the left side of the Dashboard. From there, create a Personal Access Token. [Click here to learn more](https://freeswitch.org/confluence/display/FREESWITCH/Debian).
+
+

@@ -40,6 +42,14 @@ section located on the left side of the Dashboard. From there, create a Personal
+
+
+
+
+Open the user menu in the Dashboard's top-right corner, select **Personal Access Tokens**, then select **+ Add New** to create a token.
+
+
+
In case you missed the previous emails on the matter, here is the recap of this change:
- This specifically (and only) affects the built copy of the FreeSWITCH software - the binaries that turn Linux into FreeSWITCH instantly.
diff --git a/fern/products/platform/pages/platform/phone-numbers/overview.mdx b/fern/products/platform/pages/platform/phone-numbers/overview.mdx
index f31d5d89ed..1b656749b4 100644
--- a/fern/products/platform/pages/platform/phone-numbers/overview.mdx
+++ b/fern/products/platform/pages/platform/phone-numbers/overview.mdx
@@ -11,10 +11,20 @@ position: 0
Whether working with Voice, Messaging, or Fax, manage your Phone Numbers with this section of the Dashboard.
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers**, choose **Local**, **Toll Free**, or **Shortcode**, then use the search filters to find and buy a number.
+
+
+
SignalWire offers three main types of numbers:
| Type | About |
diff --git a/fern/products/platform/pages/platform/setup/api-credentials.mdx b/fern/products/platform/pages/platform/setup/api-credentials.mdx
index 21b7c11b30..820232bd13 100644
--- a/fern/products/platform/pages/platform/setup/api-credentials.mdx
+++ b/fern/products/platform/pages/platform/setup/api-credentials.mdx
@@ -7,10 +7,20 @@ slug: /your-signalwire-api-space
The API credentials found on this page are your key to accessing SignalWire's APIs and SDKs.
+
+

+
+
+
+
+Open **API Credentials** in the Dashboard to find the current project's **Project ID** and **Space URL**. Reveal and copy an existing API token or select **+ New** to create one.
+
+
+
Most SignalWire API endpoints require authentication using
[HTTP Basic Auth](https://en.wikipedia.org/wiki/Basic_access_authentication).
HTTP Basic Authentication requires you to send an Authorization header with your Project ID and API Token.
diff --git a/fern/products/platform/pages/platform/setup/create-an-account.mdx b/fern/products/platform/pages/platform/setup/create-an-account.mdx
index 882acd697f..b2320e01b7 100644
--- a/fern/products/platform/pages/platform/setup/create-an-account.mdx
+++ b/fern/products/platform/pages/platform/setup/create-an-account.mdx
@@ -11,10 +11,20 @@ x-custom:
---
+
+

+
+
+
+
+Create an account with an email address, or sign in with **GitHub**, **Google**, or **LinkedIn**.
+
+
+
### Sign up
diff --git a/fern/products/platform/pages/tools/wirestarter/index.mdx b/fern/products/platform/pages/tools/wirestarter/index.mdx
index 11344e85fc..04b41aefe2 100644
--- a/fern/products/platform/pages/tools/wirestarter/index.mdx
+++ b/fern/products/platform/pages/tools/wirestarter/index.mdx
@@ -82,12 +82,16 @@ Copy the Project ID and REST API token from the
docker exec -ti wirestarter bash
```
+
+

+
+
When prompted, select your preferred editor: nano, vim, or emacs.
We recommend nano for beginners.
@@ -111,24 +115,38 @@ Phone numbers purchased in the Dashboard UI must be named before being assigned
Any name will work — just edit and save the populated number as its own name. Numbers purchased in SWSH are not affected by this limitation.
+
+

+
+
Purchase and configure a phone number using the **`phone_number`** command.
Enter `help` or `help -v` to view more options for SWSH.
You can also purchase a phone number in the Web UI in your [SignalWire Space](https://my.signalwire.com?page=phone_numbers).
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased** to search existing numbers or select **+ New** to purchase one.
+
+
+
### Set Startup Variables
Set the following variables from the same bash prompt in order to streamline startup.
@@ -181,12 +199,22 @@ run `exit` once to exit SWSH.
+
+

+
+
+
+
+A successful `setup.sh` run prints the public ngrok tunnel and its local `/workdir/public` mapping, confirms that `/workdir` is persistent, and then opens the SWSH prompt.
+
+
+
@@ -201,5 +229,3 @@ Have a question or bug to report?
Help us improve WireStarter for your use case by
[reporting an Issue on the GitHub Repository](https://github.com/signalwire/WireStarter).
-
-
diff --git a/fern/products/swml/pages/guides/basics/swml_remote_server.mdx b/fern/products/swml/pages/guides/basics/swml_remote_server.mdx
index 366a1ee386..f2edc819eb 100644
--- a/fern/products/swml/pages/guides/basics/swml_remote_server.mdx
+++ b/fern/products/swml/pages/guides/basics/swml_remote_server.mdx
@@ -118,10 +118,20 @@ If you don't see the **My Resources** tab, your SignalWire Space is on the **Leg
Refer to the [Legacy](#legacy-dashboard) section of this guide for instructions for your Dashboard and information about the migration.
+
+

+
+
+
+
+In the **New SWML Application** form, enter a name, set **Handle Calls Using** to **External URL**, put the public application URL in **Primary Script URL**, and create the Resource.
+
+
+
#### In the Legacy Dashboard [#legacy-dashboard]
diff --git a/fern/products/swml/pages/guides/basics/webhook-security.mdx b/fern/products/swml/pages/guides/basics/webhook-security.mdx
index c28c50e0c5..10b47866e2 100644
--- a/fern/products/swml/pages/guides/basics/webhook-security.mdx
+++ b/fern/products/swml/pages/guides/basics/webhook-security.mdx
@@ -85,12 +85,22 @@ Your signing key is on the [API Credentials](https://my.signalwire.com?page=cred
your Dashboard. Click **Show** to reveal it. Each project has its own key, so use the key belonging
to the project that serves the call.
+
+

+
+
+
+
+In the Dashboard, open **API Credentials**, find **Signing Key**, and select **Show**. Use the key belonging to the project that serves the call.
+
+
+
You can rotate the key with the reset button on the same page. A new key takes about a minute to
become active, and the page shows it to you before you confirm the reset so you can copy it into
your application first.
diff --git a/fern/products/swml/pages/guides/get-started/quickstart.mdx b/fern/products/swml/pages/guides/get-started/quickstart.mdx
index 6b7b833cd0..53a42a617b 100644
--- a/fern/products/swml/pages/guides/get-started/quickstart.mdx
+++ b/fern/products/swml/pages/guides/get-started/quickstart.mdx
@@ -96,14 +96,34 @@ You can write and save new SWML scripts from the "Relay/SWML" section of your Da
In that section, switch to the tab named [SWML Scripts](https://my.signalwire.com/relay-bins).
Once there, you can create a new SWML script:
+
+

+
+
+
+
+On the **New SWML Script** page, enter a name, paste the script into the **SWML** field, and click **Save**.
+
+
+
After you save the SWML, navigate to the [Phone Numbers](https://my.signalwire.com/phone_numbers) page.
Open the settings for a phone number you own (you may have to buy a new one),
and configure it to handle incoming calls using the SWML script you just saved.
+
+

+
+
+
+
+In **Voice and Fax Settings**, set **Accept Incoming Calls As** to **Voice Calls**, set **Handle Calls Using** to **a SWML Script**, and choose the saved script under **When a Call Comes In**. Enable the external-URL fallback option only if you need a fallback SWML handler.
+
+
+
@@ -115,8 +135,18 @@ Identify your Dashboard and select between Legacy and New UIs using the tabs bel
+
+

+
+
+
+
+The new Dashboard has a unified **My Resources** entry in its left sidebar.
+
+
+
The new SignalWire Dashboard features a streamlined sidebar menu. Many items are now located in the unified My Resources menu.
Resources that were previously accessible in the sidebar of the legacy UI are now located in the unified **My Resources** menu.
@@ -124,8 +154,18 @@ Resources that were previously accessible in the sidebar of the legacy UI are no
+
+

+
+
+
+
+The legacy Dashboard has no **My Resources** entry; resource types such as **Relay/SWML**, **SIP**, and **cXML/LaML** appear separately in its left sidebar.
+
+
+
In the Legacy Dashboard, there is no **My Resources** tab.
Instead, Resources are accessible as individual tabs in the main navigational sidebar.
diff --git a/fern/products/swml/pages/guides/recipes/creating-ivr-with-swml.mdx b/fern/products/swml/pages/guides/recipes/creating-ivr-with-swml.mdx
index d74e991fcb..d9313dc0f7 100644
--- a/fern/products/swml/pages/guides/recipes/creating-ivr-with-swml.mdx
+++ b/fern/products/swml/pages/guides/recipes/creating-ivr-with-swml.mdx
@@ -503,8 +503,18 @@ Then we'll purchase a phone number from our [SignalWire Space](https://my.signal
Follow the [Buying a Phone Number](/docs/platform/phone-numbers) if you need help.
Once you have your phone number, we can assign our newly crafted SWML Script resource to handle incoming calls for that number.
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the IVR SWML script, and save.
+
+
+
Upon calling the assigned phone number, our script will execute, and you should hear the instructions running as intended.
This exciting step will allow us to experience firsthand the interactive capabilities of our SWML-based IVR system.
In just a matter of minutes, we have successfully crafted a basic IVR system using SWML script.
diff --git a/fern/products/swml/pages/guides/recipes/forwarding-calls.mdx b/fern/products/swml/pages/guides/recipes/forwarding-calls.mdx
index 1fe1279414..2b08137c15 100644
--- a/fern/products/swml/pages/guides/recipes/forwarding-calls.mdx
+++ b/fern/products/swml/pages/guides/recipes/forwarding-calls.mdx
@@ -47,8 +47,18 @@ is maintained as caller ID for the forwarded call.
The final step is to configure one of your SignalWire phone numbers to answer calls using the SWML Script we just created.
You can do that from the **Phone Numbers** section:
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the forwarding SWML script, and save.
+
+
+
After clicking on the **Phone Numbers** section, click on the phone number that you'd like to assign, then click **edit settings**.
From there, click **Assign Resource** and assign the newly created SWML Script.
Now any calls that are routed to that number will be forwarded, with the caller ID being the original number that called in.
diff --git a/fern/products/swml/pages/guides/recipes/making-and-receiving-calls.mdx b/fern/products/swml/pages/guides/recipes/making-and-receiving-calls.mdx
index 3df6542fd9..eec68ea963 100644
--- a/fern/products/swml/pages/guides/recipes/making-and-receiving-calls.mdx
+++ b/fern/products/swml/pages/guides/recipes/making-and-receiving-calls.mdx
@@ -33,12 +33,22 @@ Find your API tokens in the API section of your Space, as shown below.
You may need to create a new token if you never used one.
Make sure that your token has at least the "Voice" scope enabled.
+
+

+
+
+
+
+Open **API Credentials** in the Dashboard and copy the **Project ID** and an API token with the **Voice** scope. If necessary, select **+ New** to create a token.
+
+
+
## SWML
diff --git a/fern/products/swml/pages/guides/recipes/recording-calls.mdx b/fern/products/swml/pages/guides/recipes/recording-calls.mdx
index 7ba461fae3..c48a20860d 100644
--- a/fern/products/swml/pages/guides/recipes/recording-calls.mdx
+++ b/fern/products/swml/pages/guides/recipes/recording-calls.mdx
@@ -31,8 +31,18 @@ sections:
We used the [`record_call`](/docs/swml/reference/record-call) method to start the recording in the background, then the [`play`](/docs/swml/reference/play) method to play a text-to-speech message.
The recording will be available from your SignalWire Space in the **Storage** section, within **Recordings**.
+
+

+
+
+
+
+Save the example above as a hosted SWML Script Resource. Recordings created by the script appear under **Storage** > **Recordings**.
+
+
+
The [`record_call`](/docs/swml/reference/record-call) method accepts parameters to configure the format, direction of the recording, terminators, and more.
For additional information, see the `record_call` [technical documentation](/docs/swml/reference/record-call).
@@ -40,8 +50,18 @@ For additional information, see the `record_call` [technical documentation](/doc
The final step is to configure one of your SignalWire phone numbers to answer calls using the SWML Script we just created. You can do that from the **Phone Numbers** section:
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the recording SWML script, and save.
+
+
+
Refer to [Making and receiving phone calls](/docs/swml/guides/make-and-receive-calls#receiving-incoming-calls) for more information about this step.
## Conclusion
diff --git a/fern/products/swml/pages/guides/recipes/voicemail.mdx b/fern/products/swml/pages/guides/recipes/voicemail.mdx
index c28da2409a..621b6ed34a 100644
--- a/fern/products/swml/pages/guides/recipes/voicemail.mdx
+++ b/fern/products/swml/pages/guides/recipes/voicemail.mdx
@@ -45,8 +45,18 @@ If you don't have a number yet, now is the time to [buy one](/docs/platform/phon
Edit the settings of your selected number, and assign the SWML script you created to
the Inbound Call Settings.
+
+

+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the voicemail SWML script, and save.
+
+
+
## How to access the recordings
You can view, listen to, and download all your recordings in the Storage section of your SignalWire Space. From the sidebar, navigate to **Storage** > **Recordings**.
diff --git a/fern/snippets/common/call-fabric/resource-addresses.md b/fern/snippets/common/call-fabric/resource-addresses.md
index 316090f2fe..93158b9a2a 100644
--- a/fern/snippets/common/call-fabric/resource-addresses.md
+++ b/fern/snippets/common/call-fabric/resource-addresses.md
@@ -41,6 +41,16 @@ Once you have created a Resource, you can use the address to interact with it wi
Additionally, you can view the created resource in the `Resources` tab of the SignalWire Dashboard.
Here, you can view the address, type, and other details of the resource.
+
+
+
+
+
+
+
+The **My Resources** page lists each Resource's name, type, and last update time and provides search and type filters.
+
+
diff --git a/fern/snippets/common/call-fabric/resource-subscribers.md b/fern/snippets/common/call-fabric/resource-subscribers.md
deleted file mode 100644
index 047bc2bbf4..0000000000
--- a/fern/snippets/common/call-fabric/resource-subscribers.md
+++ /dev/null
@@ -1,14 +0,0 @@
-{/* Shared component: Resource Subscribers */}
-
-[Subscribers](/docs/platform/subscribers) are a special type of Resource that represent internal account-holders.
-
-Subscribers always use the `private` context by default, though `public` Aliases can be added.
-
-Subscribers can receive or initiate calls, messages, and other forms of interaction.
-
-The SignalWire platform facilitates smooth transitions between different communication modes,
-such as switching from a voice call to a video conference, or from a text chat to a voice call.
-
-
-
-
diff --git a/fern/snippets/common/dashboard/_assign-resource-voice.mdx b/fern/snippets/common/dashboard/_assign-resource-voice.mdx
new file mode 100644
index 0000000000..1f9b23ec2b
--- /dev/null
+++ b/fern/snippets/common/dashboard/_assign-resource-voice.mdx
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+In the Dashboard, open **Phone Numbers** > **Purchased**, select the number, and open its edit page. Under **Inbound Call Settings**, select **+ Assign Resource**, choose the SWML script, and save the settings.
+
+
diff --git a/fern/snippets/dashboard/ui-accordion.mdx b/fern/snippets/dashboard/ui-accordion.mdx
deleted file mode 100644
index c1973a860b..0000000000
--- a/fern/snippets/dashboard/ui-accordion.mdx
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-Identify your Dashboard and select between Legacy and New UIs using the tabs below.
-
-
-
-
-
-
- 
-
-
-
- 
-
-
-Resources that were previously accessible in the sidebar of the legacy UI are now located in the unified **My Resources** menu.
-
-
-
-
-
-
- 
-
-
-In the Legacy Dashboard, there is no **My Resources** tab.
-
-Instead, Resources are accessible as individual tabs in the main navigational sidebar.
-
-To upgrade your Space to the New UI, [contact Support](https://support.signalwire.com/).
-
-
-
-
-
-
diff --git a/scripts/llm-export-cases.json b/scripts/llm-export-cases.json
index 3c305dde98..82cdde5088 100644
--- a/scripts/llm-export-cases.json
+++ b/scripts/llm-export-cases.json
@@ -157,7 +157,8 @@
],
"notContains": [
"Press play to audition any",
- "