diff --git a/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/index.mdx b/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/index.mdx
index 45930f97..8cf6d05f 100644
--- a/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/index.mdx
+++ b/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/index.mdx
@@ -381,17 +381,43 @@ If you don't have a phone
number yet, make sure to [buy one](/platform/phone-numbers/getting-started/buying-a-phone-number). You
will need at least one number to receive messages.
-Then, open the settings for the number. Under "Messaging Settings", choose to
-handle messages using "LaML Webhooks", then paste the public ngrok URL which
-connects to your application.
-
-
-
-
- Connecting a number to your XML endpoint. First select "LaML Webhooks", then paste the
- URL of the bin.
-
-
+First, we need to create a new cXML script resource that points to your ngrok URL.
+To do so, go to the "Resources" section from your sidebar, and create a new Script Resource.
+Select the Script type as cXML.
+
+
+
+When configuring the cXML script, select the "External URL" option, and paste the ngrok URL.
+
+
+
+import NewLegacy from '/docs/home/platform/dashboard/_ui-admonition.mdx'
+
+
+
+If you don't have a phone
+number yet, make sure to [buy one](/platform/phone-numbers/getting-started/buying-a-phone-number). You
+will need at least one number to receive messages.
+
+You can do that from the "Phone Numbers" section in the Sidebar. Go to the Settings page of the number you
+want to configure. In the `Handling Inbound Messages` section, assign your cXML script.
+
+
+
+
+
+You don't need to create a new cXML resource for your call.
+
+Simply open the settings for the number you want to configure, and under "**Inbound Message Settings**",
+choose to handle incoming messages using "LaML Webhooks", then paste the public ngrok URL
+which connects to your application.
+
+
+
+
Try sending a message to the configured phone number: after a few seconds you'll
receive an automated reply, whose content will be different depending on what
diff --git a/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/number-messaging-settings.webP b/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/number-messaging-settings.webP
deleted file mode 100644
index 2ad26def..00000000
Binary files a/docs/compatibility-api/guides/messaging/general/handling-incoming-messages-from-code/number-messaging-settings.webP and /dev/null differ
diff --git a/docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/index.mdx b/docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/index.mdx
index ca151af7..14f6ab07 100644
--- a/docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/index.mdx
+++ b/docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/index.mdx
@@ -14,7 +14,7 @@ x-custom:
This guide will use the SignalWire Python SDK to get a list of owned DIDs, and compare inbound and outbound messages to provide statistics on reply rate.
-
+ The resulting stats.
diff --git a/docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/a5ae77e-ReplyStats.webP b/docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/reply-stats.webp
similarity index 100%
rename from docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/a5ae77e-ReplyStats.webP
rename to docs/compatibility-api/guides/messaging/python/how-to-get-reply-statistics-with-python/reply-stats.webp
diff --git a/docs/compatibility-api/guides/messaging/python/text-subscription/71021f8-Screen_Shot_2021-12-16_at_11.18.20_AM.webP b/docs/compatibility-api/guides/messaging/python/text-subscription/71021f8-Screen_Shot_2021-12-16_at_11.18.20_AM.webP
deleted file mode 100644
index db4d237e..00000000
Binary files a/docs/compatibility-api/guides/messaging/python/text-subscription/71021f8-Screen_Shot_2021-12-16_at_11.18.20_AM.webP and /dev/null differ
diff --git a/docs/compatibility-api/guides/messaging/python/text-subscription/index.mdx b/docs/compatibility-api/guides/messaging/python/text-subscription/index.mdx
index d2fce82f..466b2590 100644
--- a/docs/compatibility-api/guides/messaging/python/text-subscription/index.mdx
+++ b/docs/compatibility-api/guides/messaging/python/text-subscription/index.mdx
@@ -21,9 +21,11 @@ You will need the [Python SignalWire SDK](/compatibility-api/sdks) and the [Mail
You will need a SignalWire phone number as well as your API Credentials (**API Token**, **Space URL**, and **Project ID**) which can all be found in an easily copyable format within the **API** tab of your SignalWire portal.
-
-
-
+
+
+
+
+
How to Run Application
----------------------
diff --git a/docs/compatibility-api/guides/messaging/python/text-to-email/index.mdx b/docs/compatibility-api/guides/messaging/python/text-to-email/index.mdx
index 3408f114..1914a655 100644
--- a/docs/compatibility-api/guides/messaging/python/text-to-email/index.mdx
+++ b/docs/compatibility-api/guides/messaging/python/text-to-email/index.mdx
@@ -20,10 +20,6 @@ You can find the full code for this application on GitHub [here](https://github.
You will also need a SignalWire phone number which is configured for webhooks. Within the **Phone Numbers** tab of your SignalWire portal you will be able to acquire a phone number: you should configure its "Messaging Settings" to handle messages using a "LaML Webhook". Then, you need to specify the _public URL_ where your application is listening to. You can use ngrok to get a public address, see our guide on [How to Locally Test Webhooks with Ngrok](/platform/basics/guides/technical-troubleshooting/how-to-test-webhooks-with-ngrok). Regardless of what your public address will be, this application listens for POST requests on the `/sms-webhook` route, so your URL will be something like `https:///sms-webhook`.
-
-
-
-
How to Run the Application
--------------------------
diff --git a/docs/rest/_img/21c4221-token.webp b/docs/rest/_img/21c4221-token.webp
deleted file mode 100644
index 305ea585..00000000
Binary files a/docs/rest/_img/21c4221-token.webp and /dev/null differ
diff --git a/docs/rest/_img/postman.webp b/docs/rest/_img/postman.webp
deleted file mode 100644
index d0d75418..00000000
Binary files a/docs/rest/_img/postman.webp and /dev/null differ
diff --git a/docs/rest/compatibility-api/overview/overview.mdx b/docs/rest/compatibility-api/overview/overview.mdx
index ea926c12..4dabbd83 100644
--- a/docs/rest/compatibility-api/overview/overview.mdx
+++ b/docs/rest/compatibility-api/overview/overview.mdx
@@ -2,7 +2,7 @@
sidebar_position: 0
---
-import PostmanCollectionImg from '../../_img/postman.webp'
+import { SiPostman } from "react-icons/si";
import LamlAdmonition from '/docs/compatibility-api/_laml-admonition.md'
# Overview
@@ -14,12 +14,12 @@ This can all be achieved by sending HTTP requests to the SignalWire REST API.
-
+
+} href="https://github.com/signalwire/rest-apis">
+ Postman Collection for SignalWire REST APIs.
+
+
+
## Base URL
diff --git a/docs/rest/overview/authorization.mdx b/docs/rest/overview/authorization.mdx
index 6521fc71..dbaf03b5 100644
--- a/docs/rest/overview/authorization.mdx
+++ b/docs/rest/overview/authorization.mdx
@@ -13,12 +13,9 @@ Each project has its own Project ID and Authentication Tokens you will need to
use when making each request to the API. You can find your Project ID and
Authentication Tokens in your SignalWire Dashboard.
-
-
+
+
+
---
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/34f4a27-Screen_Shot_2022-06-08_at_6.10.17_PM.webP b/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/34f4a27-Screen_Shot_2022-06-08_at_6.10.17_PM.webP
deleted file mode 100644
index 4bac3f6e..00000000
Binary files a/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/34f4a27-Screen_Shot_2022-06-08_at_6.10.17_PM.webP and /dev/null differ
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/index.mdx b/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/index.mdx
index 4a5bf429..66420d74 100644
--- a/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/index.mdx
+++ b/docs/rest/signalwire-rest/guides/campaign-registry/assigning-numbers-to-a-campaign-in-bulk/index.mdx
@@ -71,13 +71,9 @@ Required Resources
This script does not require any additional packages except for those native to Python!
However, you will need the `campaignSID` of the campaign that will contain the numbers you are assigning.
You can find your campaign SID by going to the Messaging Campaigns section of your SignalWire Space and clicking the specific campaign whose numbers you need.
-The SID is the long alphanumeric string at the top as shown here:
+The SID is the UUID listed under your Campaign Name.
-
-
-
-
-** How to get API Credentials **
+### How to get API Credentials
The API also requires that you authenticate yourself using your Project ID, API Token, and Space URL. If you do not know where to find these values, check out our guide to [Navigating your SignalWire Space](/platform/dashboard/get-started/explore#api)!
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/54c5936-Screen_Shot_2022-04-25_at_5.23.43_PM.webP b/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/54c5936-Screen_Shot_2022-04-25_at_5.23.43_PM.webP
deleted file mode 100644
index 03ec035f..00000000
Binary files a/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/54c5936-Screen_Shot_2022-04-25_at_5.23.43_PM.webP and /dev/null differ
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/index.mdx b/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/index.mdx
index 4f97f5b8..c8216d49 100644
--- a/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/index.mdx
+++ b/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-a-campaign/index.mdx
@@ -77,10 +77,7 @@ What do I need to run this code?
The API requires that you authenticate yourself using your Project ID, API Token, and Space URL. If you do not know where to find these values, check out our guide [here](/platform/dashboard/get-started/explore#api)!
You will also need your campaign SID which can be found in your portal under **Messaging Campaigns** -> **Campaigns** or by [listing campaigns using our endpoint](/rest/signalwire-rest/endpoints/space/list-campaigns).
-
-
-
-
+It is the UUID listed under your Campaign Name.
Step by Step Code Walkthrough
-----------------------------
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-multiple-campaigns/index.mdx b/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-multiple-campaigns/index.mdx
index 1ab6a6c1..e243fbd8 100644
--- a/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-multiple-campaigns/index.mdx
+++ b/docs/rest/signalwire-rest/guides/campaign-registry/deleting-all-number-assignments-from-multiple-campaigns/index.mdx
@@ -38,10 +38,7 @@ CampaignSID,CampaignID
```
Your campaign SIDs can be found in your portal under **Messaging Campaigns** -> **Campaigns** or by [listing campaigns using our endpoint](/rest/signalwire-rest/endpoints/space/list-campaigns).
-
-
-
-
+It is the UUID listed under your Campaign Name.
Step by Step Code Walkthrough
-----------------------------
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/d5a0e5c-Screen_Shot_2022-02-14_at_1.09.45_PM.webP b/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/d5a0e5c-Screen_Shot_2022-02-14_at_1.09.45_PM.webP
deleted file mode 100644
index fc1db39e..00000000
Binary files a/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/d5a0e5c-Screen_Shot_2022-02-14_at_1.09.45_PM.webP and /dev/null differ
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/index.mdx b/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/index.mdx
index e895d2a6..3a842a94 100644
--- a/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/index.mdx
+++ b/docs/rest/signalwire-rest/guides/campaign-registry/how-to-list-phone-numbers-assigned-to-a-specific-campaign/index.mdx
@@ -406,11 +406,7 @@ public class ListCampaignNumbers {
You will need your API credentials as well as the campaign ID that you would like to pull information on. You can [find your API credentials](/platform/dashboard/get-started/explore#api) in the API tab of your SignalWire Space!
-You can find your campaign ID by going to the Messaging Campaigns section of your SignalWire Space and clicking the specific campaign whose numbers you need. The ID is the long alphanumeric string at the top as shown here:
-
-
-
-
+You can find your campaign ID by going to the Messaging Campaigns section of your SignalWire Space and clicking the specific campaign whose numbers you need. The ID is the UUID listed under your Campaign Name.
Python
------
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/3492f36-Screen_Shot_2022-06-02_at_11.14.45_AM.webP b/docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/brand-table.webp
similarity index 100%
rename from docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/3492f36-Screen_Shot_2022-06-02_at_11.14.45_AM.webP
rename to docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/brand-table.webp
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/index.mdx b/docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/index.mdx
index e2381090..1f279984 100644
--- a/docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/index.mdx
+++ b/docs/rest/signalwire-rest/guides/campaign-registry/list-all-messaging-campaign-number-assignments-to-csv/index.mdx
@@ -237,7 +237,7 @@ Output
------
-
+
Comments
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/6d1b4f7-a5d9dec-Screen_Shot_2022-03-14_at_2.24.18_PM.webP b/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/6d1b4f7-a5d9dec-Screen_Shot_2022-03-14_at_2.24.18_PM.webP
deleted file mode 100644
index c7db4677..00000000
Binary files a/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/6d1b4f7-a5d9dec-Screen_Shot_2022-03-14_at_2.24.18_PM.webP and /dev/null differ
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/77a7104-Screen_Shot_2022-06-21_at_12.45.04_PM.webP b/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/77a7104-Screen_Shot_2022-06-21_at_12.45.04_PM.webP
deleted file mode 100644
index 4ff490d8..00000000
Binary files a/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/77a7104-Screen_Shot_2022-06-21_at_12.45.04_PM.webP and /dev/null differ
diff --git a/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/index.mdx b/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/index.mdx
index b190e6f6..489293c4 100644
--- a/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/index.mdx
+++ b/docs/rest/signalwire-rest/guides/campaign-registry/release-campaign-numbers-from-csv/index.mdx
@@ -20,12 +20,8 @@ sidebar_custom_props:
This snippet will show how you can easily use our [Delete Phone Number Assignments Endpoint](/rest/signalwire-rest/endpoints/space/delete-number-assignment) to remove specific phone number assignments from a campaign. This frees up the numbers to be used in any other campaigns or for use cases other than 10DLC messaging. You only need a CSV with numbers to remove in order to get started!
-We will use Python to accomplish this, but check out our handy **Try It** feature in our docs by replacing the variables here with your own and running it in the browser. You can then easily copy the generated code in cURL or your favorite language!
-
-
-
-
-
+We will use Python to accomplish this. But feel free to try the [`delete-number-assignment` endpoint](/rest/signalwire-rest/endpoints/space/delete-number-assignment) directly from your browser! You can
+call the REST API or copy generated code in cURL or your favorite language.
Full code example: How to Delete Numbers from Campaign Based on CSV
@@ -91,10 +87,7 @@ Required Resources
The API requires that you authenticate yourself using your Project ID, API Token, and Space URL. If you do not know where to find these values, check out our guide [here](/platform/dashboard/get-started/explore#api)!
You will need a campaign SID of the campaign containing the numbers you want to remove. Your campaign SIDs can be found in your portal under **Messaging Campaigns** -> **Campaigns** or by [listing campaigns using our endpoint](/rest/signalwire-rest/endpoints/space/list-campaigns).
-
-
-
-
+It is the UUID listed under your Campaign Name.
You will also need a CSV containing numbers to delete in the first column. You can name the column headers anything you want but if the number is not in the first column, you will need to adjust the code.
diff --git a/docs/rest/signalwire-rest/overview/overview.mdx b/docs/rest/signalwire-rest/overview/overview.mdx
index 66b9b548..067d4a6b 100644
--- a/docs/rest/signalwire-rest/overview/overview.mdx
+++ b/docs/rest/signalwire-rest/overview/overview.mdx
@@ -2,7 +2,7 @@
sidebar_position: 0
---
-import PostmanCollectionImg from '../../_img/postman.webp'
+import { SiPostman } from "react-icons/si";
# Overview
@@ -13,12 +13,10 @@ The REST API is structured like most other [REST](http://en.wikipedia.org/wiki/R
Proper HTTP status codes and [JSON](http://www.json.org/) are returned in all REST API endpoints, including errors.
-
-
+
+} href="https://github.com/signalwire/rest-apis">
+ Postman Collection for SignalWire REST APIs.
+
+
Be sure to subscribe to the [SignalWire Community](https://signalwire.community) for information on new features and changes to the API and language libraries.
diff --git a/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/074f995-numbers-handlers.webP b/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/074f995-numbers-handlers.webP
deleted file mode 100644
index 9ed9b26e..00000000
Binary files a/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/074f995-numbers-handlers.webP and /dev/null differ
diff --git a/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/index.mdx b/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/index.mdx
index b53949f8..d7cf0a3c 100644
--- a/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/index.mdx
+++ b/docs/sdks/reference/realtime-sdk/guides/messaging/forwarding-texts-to-email-nodejs/index.mdx
@@ -34,10 +34,10 @@ We will write a simple server that listens for a message event from SignalWire w
- You will need a [Mailgun](https://www.mailgun.com/) API key and Domain.
- You will need your SignalWire credentials (i.e., Space URL, Project ID, and API token). If you need help finding these, please see [Navigating your SignalWire Space](/platform/dashboard/get-started/explore).
- You will also need to visit your SignalWire Space to set up your SignalWire phone number message handler.
- 1. Within the **Phone Numbers** tab of your Space, click on a number you wish to forward texts for and **Edit Settings**.
+ {/* 1. Within the **Phone Numbers** tab of your Space, click on a number you wish to forward texts for and **Edit Settings**.
2. Scroll down to **Message Settings** and choose the **Relay Application** option to "Handle Messages".
3. Set any Relay **context** you like. This just has to match your webhook code. Our example will use **"office"**.
- 4. Remember to **save** your settings!
+ 4. Remember to **save** your settings! */}
@@ -47,22 +47,49 @@ We will write a simple server that listens for a message event from SignalWire w
- You will need a [Mailgun](https://www.mailgun.com/) API key and Domain.
- You will need your SignalWire credentials (i.e., Space URL, Project ID, and API token). If you need help finding these, please see [Navigating your SignalWire Space](/platform/dashboard/get-started/explore).
- You will also need to visit your SignalWire Space to set up your SignalWire phone number message handler.
- 1. Within the **Phone Numbers** tab of your Space, click on a number you wish to forward texts for and **Edit Settings**.
+ {/* 1. within the **phone numbers** tab of your space, click on a number you wish to forward texts for and **edit settings**.
2. Scroll down to **Message Settings** and choose the **Relay Application** option to "Handle Messages".
3. Set any Relay **topic** you like. This just has to match your webhook code. Our example will use **"office"**.
- 4. Remember to **save** your settings!
+ 4. Remember to **save** your settings! */}
-
-
- Phone number configuration page.
-
+### Configuring the phone number
+
+First, we need to create a new Relay Application resource.
+To do so, go to the "Resources" section from your sidebar, and create a new Relay ApplicationResource.
+
+
+
+When configuring the Relay Application, set the topic to "office" (to match what we have in the code).
+
+import NewLegacy from '/docs/home/platform/dashboard/_ui-admonition.mdx'
+
+
+
+If you don't have a phone
+number yet, make sure to [buy one](/platform/phone-numbers/getting-started/buying-a-phone-number). You
+will need at least one number to receive messages.
+
+You can do that from the "Phone Numbers" section in the Sidebar. Go to the Settings page of the number you
+want to configure. In the `Inbound Message Settings` section, assign your relay application.
+
+
+
+
+
+You don't need to create a new resource for your call.
+
+Simply open the settings for the number you want to configure, and under "**Inbound Message Settings**",
+choose to handle incoming messages using "Relay Application", and set the topic to "office" to match the code.
+
+
+
+
:::info Note on Email Delivery Service
diff --git a/docs/sdks/reference/realtime-sdk/guides/voice/coaching/2b2aa48-coach-screen-snap.webP b/docs/sdks/reference/realtime-sdk/guides/voice/coaching/2b2aa48-coach-screen-snap.webP
deleted file mode 100644
index 8a9aaad5..00000000
Binary files a/docs/sdks/reference/realtime-sdk/guides/voice/coaching/2b2aa48-coach-screen-snap.webP and /dev/null differ
diff --git a/docs/sdks/reference/realtime-sdk/guides/voice/coaching/index.mdx b/docs/sdks/reference/realtime-sdk/guides/voice/coaching/index.mdx
index c95bd124..5bcf258d 100644
--- a/docs/sdks/reference/realtime-sdk/guides/voice/coaching/index.mdx
+++ b/docs/sdks/reference/realtime-sdk/guides/voice/coaching/index.mdx
@@ -17,10 +17,6 @@ This guide will show you how to use Coaching and Recording features. Quickly lea
The [Coach](/compatibility-api/cxml/voice/conference-noun#coaching-a-conference-call) attribute accepts a call SID of a call that is currently connected to an in-progress conference. The application we will be building out examines an agent and a customer on a call, with a supervisor who later joins by coaching the conference.
-
-
-
-
## What do I need to run this application?
Find the full implementation on the [Github Repo](https://github.com/signalwire/guides/tree/main/Voice/Implement%20Coaching%20and%20Recording%20with%20NodeJS).
diff --git a/docs/sdks/reference/realtime-sdk/guides/voice/first-steps-with-voice/number-config.webP b/docs/sdks/reference/realtime-sdk/guides/voice/first-steps-with-voice/number-config.webP
deleted file mode 100644
index b125cb9e..00000000
Binary files a/docs/sdks/reference/realtime-sdk/guides/voice/first-steps-with-voice/number-config.webP and /dev/null differ
diff --git a/images/dashboard/legacy/number-message-config-relay.png b/images/dashboard/legacy/number-message-config-relay.png
new file mode 100644
index 00000000..1980f2da
Binary files /dev/null and b/images/dashboard/legacy/number-message-config-relay.png differ
diff --git a/images/dashboard/resources/add-new-relay-application.png b/images/dashboard/resources/add-new-relay-application.png
new file mode 100644
index 00000000..b4059c55
Binary files /dev/null and b/images/dashboard/resources/add-new-relay-application.png differ
diff --git a/src/components/Extras/Card/CardGroup.module.css b/src/components/Extras/Card/CardGroup.module.css
index 194966bc..ac075a3c 100644
--- a/src/components/Extras/Card/CardGroup.module.css
+++ b/src/components/Extras/Card/CardGroup.module.css
@@ -1,6 +1,7 @@
.cardGroup {
display: grid;
gap: 1rem;
+ margin-bottom: 1rem;
}
.cardGroup > :global(.card) {
margin: 0;