---
title: "Create new Campaign in TCR"
method: POST
path: "/v1/projects/{projectId}/campaignRegistrations:submit"
tags: ["10DLC Campaign Registration"]
---

# Create new Campaign in TCR

`POST /v1/projects/{projectId}/campaignRegistrations:submit`

Create a 10DLC campaign at TCR (The Campaign Registry).<br><br> Campaign fees and carrier requirements are determined by the brand and use-case being used.  To check the campaign requirements, use the campaign:qualify API.

## Path parameters

- `projectId` string, required

## Request body

- CreateTcrCampaignRequest
  - `brandId` string, required — The brand is the company or entity represented in the campaign. The brand ID is an alphanumeric identifier that always begins with a "B". When registering a brand in The Campaign Registry (TCR), TCR returns a brand ID value, example: BESINCH. For more info, see [Brand Registrations](https://developers.sinch.com/docs/10dlc-registration/api-reference/10dlc-registration/tag/Brand-Registration/).
  - `useCase` '2FA' | 'ACCOUNT_NOTIFICATION' | 'CUSTOMER_CARE' | 'DELIVERY_NOTIFICATION' | 'FRAUD_ALERT' | 'HIGHER_EDUCATION' | 'LOW_VOLUME' | 'MARKETING' | 'MIXED' | 'POLLING_VOTING' | 'PUBLIC_SERVICE_ANNOUNCEMENT' | 'SECURITY_ALERT' | 'AGENTS_FRANCHISES' | 'CARRIER_EXEMPT' | 'CHARITY' | 'EMERGENCY' | 'K12_EDUCATION' | 'POLITICAL' | 'PROXY' | 'SOCIAL' | 'SWEEPSTAKE' | 'SOLE_PROPRIETOR', required — Select a use case that is the primary use case that is most applicable to the service that messages are providing to subscribers. Standard use cases are immediately available for all qualified registered brands, whereas special use cases require vetting or pre/post approval by mobile network operators (MNOs). Special use cases are sensitive or critical in nature and may require vetting or pre/post registration approval by mobile network operators (MNOs). Requirements may vary according to each MNO. For more information on standard use case versus special use case campaigns, see [10DLC Use Cases - Standard Use Cases vs Special Use Cases](https://community.sinch.com/t5/10DLC/10DLC-Use-Cases-Standard-Use-Cases-vs-Special-Use-Cases/ta-p/7028/).
  - `campaignName` string, required — This is an optional name to help track and view your campaign within Sinch's platform. Use a name that is easily recognizable, this will help you identify your campaign later within the Sinch customer dashboard. This name is not part of the campaign registration in TCR.
  - `vertical` string — This field has been deprecated and is no longer being captured.
  - `description` string, required — Describe in detail the service the message program is providing to the end user and the purpose of the brand's messages (i.e. appointment reminders, OTP alerts, etc.). The description should match the selected use case and identify who is sending the messages, who is receiving the messages, and why messages are being sent.
  - `sample1` string, required — Provide sample production message content. Include the Brand name and opt out instructions (e.g. Reply STOP to stop) in every message. If you have selected Mixed use case, please provide examples of each sub use case selected.
  - `sample2` string, required — Message sample. Some campaign tiers require 2 or more message samples, depending on sub-usecases.
  - `sample3` string, required — Message sample. Some campaign tiers require 3 or more message samples, depending on sub-usecases.
  - `sample4` string — Message sample. Some campaign tiers require 4 or more message samples, depending on sub-usecases.
  - `stopMessage` string, required — Message sent in response to a STOP keyword. It must confirm that the end user has unsubscribed from the message program and will not receive any further messages. Include the brand name. You can also include customer care contact information (e.g. support email or phone number).
  - `optInMessage` string, required — Initial message that is sent confirming the end user's subscription. Include the brand name, opt-out instructions (reply STOP to stop), customer care instructions (reply HELP for help), message frequency (#msgs/mo, msg frequency varies, recurring messages, etc.) and the "message and data rates may apply" disclosure (Msg & Data rates may apply).
  - `helpMessage` string, required — Message sent in response to HELP. Include the brand name and additional customer care contact information (e.g. support email or phone number).
  - `subUseCases` CampaignSubUseCaseType[] — If you have selected a mixed use case, select all sub use cases that apply to your message program. Choose between 2 and 5 sub use cases for this campaign. The input(s) should be one of the accepted enum values.
  - `autoRenewal` boolean, required — Will your campaign automatically renew? If "Yes", a monthly recurring fee will be charged to the account. If "No", only the initial setup fee will be charged, and the campaign will expire after three months unless it is reviewed manually.
  - `embeddedLink` boolean, required — Will your message content include a URL? Note that public URL shorteners are not allowed.
  - `embeddedPhone` boolean, required — Will your message content include embedded phone numbers?
  - `numberPool` boolean, required — Will your campaign support a number pool (more than 50 numbers)? If yes, your use case should clearly support the need for a number pool. For more info, see [When should I use a number pool for my 10DLC campaign](https://community.sinch.com/t5/10DLC/When-should-I-use-a-number-pool-for-my-10DLC-campaign/ta-p/12432).
  - `ageGated` boolean, required — Will your traffic include any content related to age-restricted goods or services? If yes, you must implement an age gate verification process.
  - `directLending` boolean, required — Are you a financial institution engaged in direct, first-party lending to your customers? If yes, note that your campaign description should clearly indicate direct lending, even if your use case is not related to your lending services (e.g. OTP).
  - `subscriberOptIn` boolean, required — Will your campaign collect and process end user opt-ins? This is mandatory for all use cases, except for Machine-to-Machine.
  - `subscriberOptOut` boolean, required — Message sent in response to a STOP keyword. It must confirm that the end user has unsubscribed from the message program and will not receive any further messages. Include the brand name. You can also include customer care contact information (e.g. support email or phone number).
  - `subscriberHelp` boolean, required — Message sent in response to HELP. Include the brand name and additional customer care contact information (e.g. support email or phone number).
  - `optinKeywords` string, required — If subscribers can opt-in via a keyword, enter keyword(s) here (alphanumeric comma separated values, no blank spaces).
  - `optoutKeywords` string, required — Subscriber opt-out keywords. Default values are STOP, QUIT, END, CANCEL and UNSUBSCRIBE. If you accept additional opt-out keywords, you can enter them here (alphanumeric comma separated values, no blank spaces).
  - `helpKeywords` string, required — Subscriber help keywords. Default value is HELP. If you accept additional help keywords, you can enter them here. (alphanumeric comma separated values, no blank spaces).
  - `messageFlow` string, required — Provide instructions for how end users opt-in to receive messages. A compliant opt-in is critical to the approval of your campaign. Include all opt-in mechanisms (e.g. keyword/text-to-join, online form, point-of-sale (POS) system, verbal consent, interactive voice response (IVR) system, paper form) and a clear program description. The Call-to-Action should include opt-out instructions (reply STOP to stop), customer care instructions (reply HELP for help), message frequency (#msgs/mo, msg frequency varies, recurring messages, etc.) and message and data rates disclosure (Msg & Data rates may apply).
  - `terms_and_conditions_link` string — A URL to a page containing the terms and conditions.
  - `privacy_policy_link` string — A URL to a page containing the privacy policy.
  - `attachments` boolean — If this property is set to `true`, this will delay the submission of the campaign until all necessary documentation is uploaded using the [Upload Campaign Files](https://developers.sinch.com/docs/10dlc-registration/api-reference/10dlc-registration/tag/10DLC-Campaign-Registration/#tag/10DLC-Campaign-Registration/operation/CampaignRegistrationExternalService_UploadCampaignFiles) operation.

## Response `200`

A successful response.

- CreateTcrCampaignResponse
  - `campaignRegistrationId` string — Sinch generated campaign ID (ULID format). Note that this is not the TCR campaign ID. The TCR Campaign ID will be available once the campaign has been approved and submitted to TCR.

## Other responses

- `400` — INVALID_ARGUMENT: If the input parameters are not valid
- `429` — Over limit
- `500` — INTERNAL: Internal server error. Typically, a server bug.

---

[API](https://skmtc.net/sinch/apis/registration.md) · [All operations](https://skmtc.net/sinch/apis/registration/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/sinch/registration/revisions/9eecb207c30d/schema)
