Skip to contentSkip to navigationSkip to topbar
Rate this page:
On this page

A2P 10DLC - BrandRegistration Resource


(warning)

Warning

This API Reference page is meant to supplement the ISV API Onboarding Guides. Do not attempt to use this API Resource without following the appropriate guide, or you may incur delays in registration and unintended fees.

The BrandRegistration resource represents an A2P 10DLC Brand. It is a "container" that holds all of the business details required by The Campaign Registry (TCR) to create an A2P 10DLC Brand.


BrandRegistrations Properties

Property nameTypePIIDescription
sidSID<BN>
Not PII

The unique string to identify Brand Registration.

Pattern: ^BN[0-9a-fA-F]{32}$Min length: 34Max length: 34

account_sidSID<AC>

The SID of the Account that created the Brand Registration resource.

Pattern: ^AC[0-9a-fA-F]{32}$Min length: 34Max length: 34

customer_profile_bundle_sidSID<BU>

A2P Messaging Profile Bundle BundleSid.

Pattern: ^BU[0-9a-fA-F]{32}$Min length: 34Max length: 34

a2p_profile_bundle_sidSID<BU>

A2P Messaging Profile Bundle BundleSid.

Pattern: ^BU[0-9a-fA-F]{32}$Min length: 34Max length: 34

date_createdstring<date-time>

date_updatedstring<date-time>

The date and time in GMT when the resource was last updated specified in ISO 8601 format.


brand_typestring

Type of brand. One of: "STANDARD", "SOLE_PROPRIETOR". SOLE_PROPRIETOR is for the low volume, SOLE_PROPRIETOR campaign use case. There can only be one SOLE_PROPRIETOR campaign created per SOLE_PROPRIETOR brand. STANDARD is for all other campaign use cases. Multiple campaign use cases can be created per STANDARD brand.


statusenum<string>

Brand Registration status. One of "PENDING", "APPROVED", "FAILED", "IN_REVIEW", "DELETED".

Possible values:
PENDINGAPPROVEDFAILEDIN_REVIEWDELETED

tcr_idstring

Campaign Registry (TCR) Brand ID. Assigned only after successful brand registration.


failure_reasonstring

DEPRECATED. A reason why brand registration has failed. Only applicable when status is FAILED.


errorsarray

A list of errors that occurred during the brand registration process.


urlstring<uri>

The absolute URL of the Brand Registration resource.


brand_scoreinteger

The secondary vetting score if it was done. Otherwise, it will be the brand score if it's returned from TCR. It may be null if no score is available.


brand_feedbackarray[enum<string>]

DEPRECATED. Feedback on how to improve brand score

Possible values:
TAX_IDSTOCK_SYMBOLNONPROFITGOVERNMENT_ENTITYOTHERS

identity_statusenum<string>

When a brand is registered, TCR will attempt to verify the identity of the brand based on the supplied information.

Possible values:
SELF_DECLAREDUNVERIFIEDVERIFIEDVETTED_VERIFIED

russell_3000boolean

Publicly traded company identified in the Russell 3000 Index


government_entityboolean

Identified as a government entity


tax_exempt_statusstring

Nonprofit organization tax-exempt status per section 501 of the U.S. tax code.


skip_automatic_sec_vetboolean

A flag to disable automatic secondary vetting for brands which it would otherwise be done.


mockboolean

A boolean that specifies whether brand should be a mock or not. If true, brand will be registered as a mock brand. Defaults to false if no value is provided.


linksobject<uri-map>

Create a BrandRegistration resource

POST https://messaging.twilio.com/v1/a2p/BrandRegistrations

Request body parameters

Property nameTypeRequiredPIIDescription
CustomerProfileBundleSidSID<BU>required

Customer Profile Bundle Sid.

Pattern: ^BU[0-9a-fA-F]{32}$Min length: 34Max length: 34

A2PProfileBundleSidSID<BU>required

A2P Messaging Profile Bundle Sid.

Pattern: ^BU[0-9a-fA-F]{32}$Min length: 34Max length: 34

BrandTypestringOptional

Type of brand being created. One of: "STANDARD", "SOLE_PROPRIETOR". SOLE_PROPRIETOR is for low volume, SOLE_PROPRIETOR use cases. STANDARD is for all other use cases.


MockbooleanOptional

A boolean that specifies whether brand should be a mock or not. If true, brand will be registered as a mock brand. Defaults to false if no value is provided.


SkipAutomaticSecVetbooleanOptional

A flag to disable automatic secondary vetting for brands which it would otherwise be done.

The sample below shows how to create a BrandRegistration resource.

The customer_profile_bundle_sid is the SID associated with the Secondary Customer Profile. It starts with BU. You can see Secondary Customer Profile SIDs in the the Console, or you can list CustomerProfiles via the TrustHub API. Be sure to use the correct Account SID and Auth Token for the request.

The a2p_profile_bundle_sid is the SID of the TrustProduct resource associated with the business. It also starts with BU. You can find the appropriate SID by using the TrustHub API to list all of an Account's TrustProducts. Be sure to use the correct Account SID and Auth Token for the request.

Create a BrandRegistration resource

Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_21
// Download the helper library from https://www.twilio.com/docs/node/install
_21
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_21
_21
// Find your Account SID and Auth Token at twilio.com/console
_21
// and set the environment variables. See http://twil.io/secure
_21
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_21
const authToken = process.env.TWILIO_AUTH_TOKEN;
_21
const client = twilio(accountSid, authToken);
_21
_21
async function createBrandRegistrations() {
_21
const brandRegistration = await client.messaging.v1.brandRegistrations.create(
_21
{
_21
a2PProfileBundleSid: "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_21
customerProfileBundleSid: "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_21
}
_21
);
_21
_21
console.log(brandRegistration.sid);
_21
}
_21
_21
createBrandRegistrations();

Output

_29
{
_29
"sid": "BN0044409f7e067e279523808d267e2d85",
_29
"account_sid": "AC78e8e67fc0246521490fb9907fd0c165",
_29
"customer_profile_bundle_sid": "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_29
"a2p_profile_bundle_sid": "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_29
"date_created": "2021-01-28T10:45:51Z",
_29
"date_updated": "2021-01-28T10:45:51Z",
_29
"brand_type": "STANDARD",
_29
"status": "PENDING",
_29
"tcr_id": "BXXXXXX",
_29
"failure_reason": "Registration error",
_29
"url": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85",
_29
"brand_score": 42,
_29
"brand_feedback": [
_29
"TAX_ID",
_29
"NONPROFIT"
_29
],
_29
"identity_status": "VERIFIED",
_29
"russell_3000": true,
_29
"government_entity": false,
_29
"tax_exempt_status": "501c3",
_29
"skip_automatic_sec_vet": false,
_29
"errors": [],
_29
"mock": false,
_29
"links": {
_29
"brand_vettings": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/Vettings",
_29
"brand_registration_otps": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/SmsOtp"
_29
}
_29
}

The sample below shows an example of how to use the skip_automatic_sec_vet parameter when creating a new BrandRegistration. This is only for registering a Low Volume Standard Brand, 527 political organization, or political organization with a Campaign Verify token.

Create a BrandRegistration resource and skip secondary vetting

Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_22
// Download the helper library from https://www.twilio.com/docs/node/install
_22
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_22
_22
// Find your Account SID and Auth Token at twilio.com/console
_22
// and set the environment variables. See http://twil.io/secure
_22
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_22
const authToken = process.env.TWILIO_AUTH_TOKEN;
_22
const client = twilio(accountSid, authToken);
_22
_22
async function createBrandRegistrations() {
_22
const brandRegistration = await client.messaging.v1.brandRegistrations.create(
_22
{
_22
a2PProfileBundleSid: "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_22
customerProfileBundleSid: "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_22
skipAutomaticSecVet: true,
_22
}
_22
);
_22
_22
console.log(brandRegistration.sid);
_22
}
_22
_22
createBrandRegistrations();

Output

_29
{
_29
"sid": "BN0044409f7e067e279523808d267e2d85",
_29
"account_sid": "AC78e8e67fc0246521490fb9907fd0c165",
_29
"customer_profile_bundle_sid": "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_29
"a2p_profile_bundle_sid": "BUXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_29
"date_created": "2021-01-28T10:45:51Z",
_29
"date_updated": "2021-01-28T10:45:51Z",
_29
"brand_type": "STANDARD",
_29
"status": "PENDING",
_29
"tcr_id": "BXXXXXX",
_29
"failure_reason": "Registration error",
_29
"url": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85",
_29
"brand_score": 42,
_29
"brand_feedback": [
_29
"TAX_ID",
_29
"NONPROFIT"
_29
],
_29
"identity_status": "VERIFIED",
_29
"russell_3000": true,
_29
"government_entity": false,
_29
"tax_exempt_status": "501c3",
_29
"skip_automatic_sec_vet": true,
_29
"errors": [],
_29
"mock": false,
_29
"links": {
_29
"brand_vettings": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/Vettings",
_29
"brand_registration_otps": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/SmsOtp"
_29
}
_29
}


Fetch a specific BrandRegistration resource

GET https://messaging.twilio.com/v1/a2p/BrandRegistrations/{Sid}

This request returns a specific BrandRegistration. You can use this request to check the status of a BrandRegistration.

Path parameters

Property nameTypeRequiredPIIDescription
SidSID<BN>required

The SID of the Brand Registration resource to fetch.

Pattern: ^BN[0-9a-fA-F]{32}$Min length: 34Max length: 34

Fetch a BrandRegistration resource

Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_18
// Download the helper library from https://www.twilio.com/docs/node/install
_18
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_18
_18
// Find your Account SID and Auth Token at twilio.com/console
_18
// and set the environment variables. See http://twil.io/secure
_18
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_18
const authToken = process.env.TWILIO_AUTH_TOKEN;
_18
const client = twilio(accountSid, authToken);
_18
_18
async function fetchBrandRegistrations() {
_18
const brandRegistration = await client.messaging.v1
_18
.brandRegistrations("BNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
_18
.fetch();
_18
_18
console.log(brandRegistration.sid);
_18
}
_18
_18
fetchBrandRegistrations();

Output

_29
{
_29
"sid": "BNXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
_29
"account_sid": "AC78e8e67fc0246521490fb9907fd0c165",
_29
"customer_profile_bundle_sid": "BU3344409f7e067e279523808d267e2d85",
_29
"a2p_profile_bundle_sid": "BU3344409f7e067e279523808d267e2d85",
_29
"date_created": "2021-01-27T14:18:35Z",
_29
"date_updated": "2021-01-27T14:18:36Z",
_29
"brand_type": "STANDARD",
_29
"status": "PENDING",
_29
"tcr_id": "BXXXXXX",
_29
"failure_reason": "Registration error",
_29
"url": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85",
_29
"brand_score": 42,
_29
"brand_feedback": [
_29
"TAX_ID",
_29
"NONPROFIT"
_29
],
_29
"identity_status": "VERIFIED",
_29
"russell_3000": true,
_29
"government_entity": false,
_29
"tax_exempt_status": "501c3",
_29
"skip_automatic_sec_vet": false,
_29
"mock": false,
_29
"errors": [],
_29
"links": {
_29
"brand_vettings": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/Vettings",
_29
"brand_registration_otps": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/SmsOtp"
_29
}
_29
}


Read multiple BrandRegistration resources

GET https://messaging.twilio.com/v1/a2p/BrandRegistrations

This request returns a list of an Account's BrandRegistrations. If working with subaccounts, be sure to use the appropriate Account SID and Auth Token when sending this request.

Query parameters

Property nameTypeRequiredPIIDescription
PageSizeintegerOptional

How many resources to return in each list page. The default is 50, and the maximum is 1000.

Minimum: 1Maximum: 1000

PageintegerOptional

The page index. This value is simply for client state.

Minimum: 0

PageTokenstringOptional

The page token. This is provided by the API.

List an Account's BrandRegistration Resources

Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_18
// Download the helper library from https://www.twilio.com/docs/node/install
_18
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_18
_18
// Find your Account SID and Auth Token at twilio.com/console
_18
// and set the environment variables. See http://twil.io/secure
_18
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_18
const authToken = process.env.TWILIO_AUTH_TOKEN;
_18
const client = twilio(accountSid, authToken);
_18
_18
async function listBrandRegistrations() {
_18
const brandRegistrations = await client.messaging.v1.brandRegistrations.list({
_18
limit: 20,
_18
});
_18
_18
brandRegistrations.forEach((b) => console.log(b.sid));
_18
}
_18
_18
listBrandRegistrations();

Output

_42
{
_42
"meta": {
_42
"page": 0,
_42
"page_size": 50,
_42
"first_page_url": "https://messaging.twilio.com/v1/a2p/BrandRegistrations?PageSize=50&Page=0",
_42
"previous_page_url": null,
_42
"next_page_url": null,
_42
"key": "data",
_42
"url": "https://messaging.twilio.com/v1/a2p/BrandRegistrations?PageSize=50&Page=0"
_42
},
_42
"data": [
_42
{
_42
"sid": "BN0044409f7e067e279523808d267e2d85",
_42
"account_sid": "AC78e8e67fc0246521490fb9907fd0c165",
_42
"customer_profile_bundle_sid": "BU3344409f7e067e279523808d267e2d85",
_42
"a2p_profile_bundle_sid": "BU3344409f7e067e279523808d267e2d85",
_42
"date_created": "2021-01-27T14:18:35Z",
_42
"date_updated": "2021-01-27T14:18:36Z",
_42
"brand_type": "STANDARD",
_42
"status": "APPROVED",
_42
"tcr_id": "BXXXXXX",
_42
"failure_reason": "Registration error",
_42
"url": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85",
_42
"brand_score": 42,
_42
"brand_feedback": [
_42
"TAX_ID",
_42
"NONPROFIT"
_42
],
_42
"identity_status": "VERIFIED",
_42
"russell_3000": true,
_42
"tax_exempt_status": "501c3",
_42
"government_entity": false,
_42
"skip_automatic_sec_vet": false,
_42
"errors": [],
_42
"mock": false,
_42
"links": {
_42
"brand_vettings": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/Vettings",
_42
"brand_registration_otps": "https://messaging.twilio.com/v1/a2p/BrandRegistrations/BN0044409f7e067e279523808d267e2d85/SmsOtp"
_42
}
_42
}
_42
]
_42
}


Update a BrandRegistration resource

POST https://messaging.twilio.com/v1/a2p/BrandRegistrations/{Sid}

Path parameters

Property nameTypeRequiredPIIDescription
SidSID<BN>required

The SID of the Brand Registration resource to update.

Pattern: ^BN[0-9a-fA-F]{32}$Min length: 34Max length: 34

Update a BrandRegistration Resource

Node.js
Python
C#
Java
Go
PHP
Ruby
twilio-cli
curl

_18
// Download the helper library from https://www.twilio.com/docs/node/install
_18
const twilio = require("twilio"); // Or, for ESM: import twilio from "twilio";
_18
_18
// Find your Account SID and Auth Token at twilio.com/console
_18
// and set the environment variables. See http://twil.io/secure
_18
const accountSid = process.env.TWILIO_ACCOUNT_SID;
_18
const authToken = process.env.TWILIO_AUTH_TOKEN;
_18
const client = twilio(accountSid, authToken);
_18
_18
async function updateBrandRegistrations() {
_18
const brandRegistration = await client.messaging.v1
_18
.brandRegistrations("BNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
_18
.update();
_18
_18
console.log(brandRegistration.sid);
_18
}
_18
_18
updateBrandRegistrations();

Output

_25
{
_25
"a2p_profile_bundle_sid": "BUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
_25
"account_sid": "ACaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
_25
"brand_feedback": [
_25
"STOCK_SYMBOL"
_25
],
_25
"brand_score": 529,
_25
"brand_type": "BrandType",
_25
"customer_profile_bundle_sid": "BUaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
_25
"date_created": "2009-07-06T20:30:00Z",
_25
"date_updated": "2009-07-06T20:30:00Z",
_25
"errors": [],
_25
"failure_reason": "FailureReason",
_25
"government_entity": false,
_25
"identity_status": "SELF_DECLARED",
_25
"links": {},
_25
"mock": false,
_25
"russell_3000": false,
_25
"sid": "BNaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
_25
"skip_automatic_sec_vet": false,
_25
"status": "DELETED",
_25
"tax_exempt_status": "TaxExemptStatus",
_25
"tcr_id": "TcrId",
_25
"url": "https://www.example.com"
_25
}


Rate this page: