> Fetch clean Markdown by appending `.md` to any page URL under https://signalwire.com/docs or requesting it with the HTTP header `Accept: text/markdown`. The root index at https://signalwire.com/docs/llms.txt lists the available documentation indexes. # Registration > **Info** > > Do you need to register with The Campaign Registry? If you are using your > SignalWire 10DLC phone numbers to send messages to US numbers, the answer is > yes. Here's how you'll do it: > > 1. Add a payment method if you do not already have one set for your project. > 2. Create a [Brand](#creating-a-new-brand). Make sure your information is correct. Each submission incurs a registration fee. > 3. Register a [Campaign](#campaigns). Include as much detail as possible. There is a monthly fee for each Campaign that varies by use case. You will be charged the monthly fee for the first 3 months up front (as there is a 3 month minimum commitment), and you will not be charged again until the 4th month your Campaign is in use. > 4. Assign [Phone Numbers](#campaign-phone-numbers) to your Campaign. For a brand new campaign, this process can take up to 24 hours, so do not be alarmed if you see a "failed" or "pending" status for a number in that time period. > > If you indicate an interest in messaging when signing up for a SignalWire Space, you will walk through all of these steps in the Campaign Registry sign-up wizard. If you did not already complete the wizard steps, read on for how to use the Messaging Campaigns Space to complete your registration. ## Overview Using 10DLC (10-digit long code) numbers for messaging requires mandatory registration with The Campaign Registry (TCR). This process ensures compliance and helps combat spam, benefiting customers, businesses, and the mobile industry. SignalWire, as a registered Campaign Service Provider (CSP), simplifies this registration for you. The usage of 10DLC for messaging campaigns has increased due to their simplicity and ability to meet application-to-person (A2P) messaging needs between businesses and customers. SignalWire has built powerful messaging APIs to meet these needs. However, the rise in spam texts has led to the creation of TCR to record and validate the sender and content of 10DLC messages. Any business using an application platform (e.g., SignalWire) to send messages from a local phone number must register with TCR, regardless of use case. Even if your business traffic is mostly conversational, it is still considered A2P. ### Registration process **Registration with TCR is required before you can use 10DLC numbers for messaging.** 1. **Brands**: Register your business to receive a unique Brand ID linked to all campaigns and messages. Required information includes: * Company name * Website * Tax ID/EIN * Contact name * Direct number * Email 2. **Campaigns**: Register each messaging campaign with a unique ID. Required details include: * Use case * Opt-in/out process * Message samples The registration process will take approximately 3-5 business days, though can take shorter or longer depending on the information submitted. --- ## Types of Registration When registering your Brand and Campaigns, you will need to choose between two different types of registration. 1. **Managed Brands & Campaigns**: When registering a managed Brand or Campaign, SignalWire acts as the Campaign Service Provider (CSP) and will handle all the registration details with The Campaign Registry (TCR). This is the default option when you submit a registration for a Brand or Campaign. The rest of this guide will be written from the `Managed Brands & Campaigns` option in perspective. 2. **Self-registered**: If you are already registered with TCR and have a CSP ID, you can choose to self-register your Brand or Campaign. This option is available for existing TCR customers who have already completed the registration process with TCR and have a CSP ID. To learn more about what a CSP is, and how to get a `self-registered` CSP ID, see the [CSP Registration Guide](/docs/platform/messaging/campaign-registry/campaign-service-providers). --- ## Brands A Brand is an overall project with which TCR will associate a set of campaigns, numbers, and messages. In this tab, you will see your current Brands and their state: * **Pending** (`pending`) — the submission is still being processed. * **Completed** (`completed`) — [identity verification](#brand-identity-verification) passed and you are ready to add Campaigns. * **Unverified** (`unverified`) — identity verification did not pass. See [Resolving an unverified Brand](#resolving-an-unverified-brand). ### Details of an existing brand > **Tip** > > Existing Brand details can also be viewed by using the [Retrieve a Brand Campaign Registry API](/docs/apis/rest/campaign-registry/brands/retrieve-brand) endpoint. To see the details of an existing Brand, click on the Brand Name. The detail page has **Settings**, **Campaigns**, **Campaign Phone Numbers**, and **Assignment Orders** tabs. It lists the registration details TCR reviewed and the Brand's [SignalWire User Contact](#signalwire-user-contact), with an **Edit** button beside it. The SignalWire User Contact is the one detail you can change on a Brand in any state, including after registration completes. To change any other detail of a registered Brand, use the **Get Support** button on the same page to open a Support ticket. ### Creating a new brand > **Tip** > > New Brands can also be created by using the [Create a Brand Campaign Registry API](/docs/apis/rest/campaign-registry/brands/create-brand) endpoint. To create a new Brand, start by clicking the blue "+ New" button to open the New Brand wizard with two options. 1. Import a Brand that has already been approved by TCR through a different Campaign Service Provider (CSP) by clicking the "Create a Partner Brand" button. 2. 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. For new Brands, all of the fields on the details page are required by The Campaign Registry. Be careful with your information input, because you do not want to be flagged by TCR for a Brand information error. The one optional field is the [SignalWire User Contact](#signalwire-user-contact), on the **Company Contact** step. It names the email addresses SignalWire writes to about this Brand's registration. The **Create a Partner Brand** form has the same optional field. Each Brand should have a unique EIN, or you will risk damaging your trust score. After completing the three Brand creation steps, the Dashboard confirms that the Brand was submitted 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 an Identity Status. Apart from the SignalWire User Contact, Brand details can only be edited and resubmitted for a Brand in an `unverified` state. Your Campaign Registration Specialist will assist you if resubmission is required. **Each submission incurs a registration fee.** ### SignalWire User Contact The SignalWire User Contact is an optional list of email addresses on a Brand and on a Campaign. It receives the registration correspondence SignalWire sends about that Brand or Campaign. It is separate from the Brand's contact email, which describes your company and is what SignalWire submits to The Campaign Registry. Enter one address, or several separated by commas. The field appears on the New Brand wizard's **Company Contact** step, the **Create a Partner Brand** form, the New Campaign wizard's **Basic Information** step, and the **Create a Partner Campaign** form. Each Brand and Campaign detail page shows the current value with an **Edit** button beside it, and you can change it at any time, whatever state the registration is in. SignalWire picks the recipients for a Campaign's correspondence in this order: 1. The Campaign's own SignalWire User Contact. 2. The Brand's SignalWire User Contact, when the Campaign lists no address. 3. The user who submitted the registration, when neither lists an address. A Campaign that names any address replaces its Brand's list for that Campaign rather than adding to it. To reach the Brand's contacts as well, list them on the Campaign too. Correspondence about the Brand itself follows the same rule without the first step. > **Tip** > > Registrations created through the API default to the first administrator on the account instead of the submitting user. Set or change the list from your own code with the `signalwire_contact_emails` parameter on the [Create a Brand](/docs/apis/rest/campaign-registry/brands/create-brand), [Update a Brand](/docs/apis/rest/campaign-registry/brands/update-brand), [Create a Campaign](/docs/apis/rest/campaign-registry/campaigns/create-campaign), and [Update a Campaign](/docs/apis/rest/campaign-registry/campaigns/update-campaign) Campaign Registry API endpoints. --- ## Brand Identity Verification When a Brand is submitted, The Campaign Registry automatically validates the **EIN**, **Brand Legal Name**, and **EIN Issuing Country** against independent third-party identity data sources. The result is the Brand's Identity Status: | Identity Status | What it means | | --------------- | -------------------------------------------------------------- | | **Verified** | Brand identity was confirmed. Campaigns can now be registered. | | **Unverified** | The Brand could not be matched against third-party records. | A Brand whose submission is still processing shows as pending. That is an interim label, not a verification result. > **Warning** > > Campaigns cannot be created for a Brand that has not passed identity verification. This is the > first gate — every later step, including DCA election, is blocked until the Brand is verified. ### Why a Brand comes back unverified The most common cause is a mismatch between the Brand Legal Name and the EIN as filed with the federal government — a DBA or marketing name entered in the legal name field, a typo in the EIN, or the wrong EIN Issuing Country. A Brand can also come back unverified when every field is correct: * **A recently issued EIN.** New EINs take time to propagate into the third-party datasets TCR checks. Until they do, a correct EIN will not match. * **Non-US entities.** TCR's initial verification is frequently insufficient for entities outside the US, and international Brands return unverified at a high rate. * **Non-profits.** A 501(c) organization may verify while its Tax Exempt Status — 501(c)(3), (4), (5), or (6) — fails to resolve. ### Resolving an unverified Brand There are three paths. Correct any inaccurate Brand details *before* resubmitting or appealing. 1. **Correct the details and resubmit.** Use this when something was genuinely wrong. Every resubmission is billed as a new Brand registration, so appeal instead if the details are already correct — resubmitting unchanged or still-inaccurate details will fail again. 2. **File an identity status appeal with supporting documentation.** Use this when the details are already correct — for example a recently issued EIN that has not yet propagated. Attach the IRS CP 575 EIN confirmation letter or equivalent formation documentation. An appeal is also the expected path for international Brands and for a 501(c) Tax Exempt Status that will not resolve. 3. **Request or import external vetting.** A standard vet by an approved vetting provider establishes identity independently, and may also unlock additional MNO classes and throughput tiers. Third-party vetting fees apply. None of these are instant. Allow several business days for an appeal or a vet to come back. For Managed Brands, SignalWire files appeals and vetting requests with TCR on your behalf. Open a Support Ticket using the **`?`** icon in the top right of your Dashboard, tell us which option you want, and attach your supporting documentation. SignalWire surfaces the verification outcome as the Brand's state: `pending` while the submission is processing, `completed` once identity verification passes, and `unverified` when it does not. If you set a `status_callback_url` on the Brand, SignalWire sends a `brand_activated` event when the Brand reaches `completed` and a `brand_unverified` event when verification fails. See the [10DLC status callback](/docs/apis/rest/campaign-registry/webhooks/ten-dlc-status-callback) reference. --- ## 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. Once your Brand reaches the `completed` state, you can add Campaigns — they cannot be created for a Brand that is `pending` or `unverified`. 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 two different use cases and, therefore, two different Campaigns. Some businesses will require only one Campaign while others may require many. There are also mixed-use cases available for businesses that aren't worried about throughput. For a full list of use case descriptions, see our [Campaign Registry](/docs/platform/messaging/campaign-registry#registration-best-practices) guide. ### Details of an existing campaign > **Tip** > > Existing Campaign details can also be viewed by using the [Retrieve a Campaign Campaign Registry API](/docs/apis/rest/campaign-registry/campaigns/retrieve-campaign) endpoint. To see the details of an existing Campaign, click on the Campaign Name. The detail page has **Settings**, **Campaign Phone Numbers**, and **Assignment Orders** tabs. It lists the registration details TCR reviewed and the Campaign's [SignalWire User Contact](#signalwire-user-contact), with an **Edit** button beside it. You can change the SignalWire User Contact on a registered Campaign at any time. To change any of the registration details TCR reviewed, use the **Get Support** button on the same page to open a Support ticket. ### Creating a Campaign > **Tip** > > New Campaigns can also be created by using the [Create a Campaign Campaign Registry API](/docs/apis/rest/campaign-registry/campaigns/create-campaign) endpoint. 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**. The **Basic Information** step includes the optional [SignalWire User Contact](#signalwire-user-contact). Leave it empty to send this Campaign's correspondence to the Brand's SignalWire User Contact, or list addresses to replace the Brand's list for this Campaign. The **Create a Partner Campaign** form has the same optional field. 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 registered directly with the MNO’s. Processing may take 3-5 days. During that time, the status for the Campaign in your Campaigns tab will be **Pending**. After a Campaign has been approved, you will see them listed under this 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 **Settings** tab shows the registration properties, the sample messages, and the SignalWire User Contact with its **Edit** button. 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 provide the connection between your sent messages and the carriers. > **Identity verification and DCA election are separate gates** > > **Brand Identity Verification** validates *who the Brand is*. It runs at The Campaign Registry, > against third-party identity data, and must pass before a Campaign can exist at all. > > **DCA election** validates *what the Campaign sends*. It runs after the Campaign is loaded into > your SignalWire Space, and reviews the website, use case, message content, and CTIA compliance. > > The two are run by different parties and have different remedies. Entity documentation such as an > IRS CP 575 belongs in a TCR identity status appeal — the DCA never reviews it. If your Brand is > unverified, DCA election is not the gate you are waiting on. ## Campaign Phone Numbers The last step to setting up messaging is assigning your SignalWire phone numbers to a Campaign. The **Campaign Phone Numbers** tab displays a list of all of the numbers assigned to any Campaign. > **Info** > > As of December 2025, newly purchased US 10DLC numbers do not have messaging enabled by default. When you assign a phone number to an approved Campaign, messaging capabilities are automatically enabled on that number. > > For inbound-only use cases (receiving messages without sending), contact [Support](https://support.signalwire.com/portal) to request messaging enablement without a TCR campaign. The tab lists each assignment's ID, number, Brand, Campaign, and status. From here, you can click on multiple links to manage your Campaign number details: * Clicking on a specific phone number will take you to that number's details page where you can set up incoming message handling. * Clicking on a Brand will take you to that Brand's details page. * Clicking on a Campaign will take you to that Campaign's details page. * The ⋯ button will give you a menu to go to the phone number's details page or delete the number from its associated campaign. > **Tip** > > Phone Numbers can also be assigned to a Campaign by using the [Assign a Phone Number to a Campaign Campaign Registry API](/docs/apis/rest/campaign-registry/phone-number-assignments/create-order) endpoint. There are two different places to add a number to a Campaign. Click the blue "+ 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 order and choose **Continue** to pick the 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 hours in normal circumstances. You may see **Failed** or **Pending** as the number assignment order status during this time. Rest assured that as soon as it's completed on the carrier end, you will see it reflected in your portal as a **Processed** status! You may have multiple numbers on each Campaign, as long as you have a valid use case for doing so. The maximum is 49 numbers currently. Any more than that will require additional registration for Number Pooling. If this applies to you, open a Support Ticket, and we will discuss this in more detail with you! > The Campaign Registry