10DLC Brand and Campaign Provisioning

Overview

APIs relating to 10DLC brand and campaign management

For more information, please read the following documentation:

Changes

Upcoming changes

Reseller requirements

Date: Dec 1st 2024
The feature was postponed by TCR. In an effort to give more time to adapt to our customers, this change is being rescheduled and should be released around the 6th of January 2025.

TCR is making the reseller ID attribute mandatory on all new and updated campaigns starting on December 1st.

Customer campaigns (aka non reseller campaigns) will be assigned a default reseller ID R000000 by Vonage. Preventing any further modification to the reseller information for that campaign.

As a reminder, Vonage introduced the concept of reseller brands, handling automatically the reseller information for all its campaigns, by setting brand.reseller to true.

More information here.


message_flow deprecation

Date: Jan 6th 2025

The message_flow field in the POST /brands/{brand_id}/campaigns and PATCH /brands/{brand_id}/campaigns/{campaign_id} endpoints was deprecated in favor of message_flow_details. It will be removed on January 6th.

The message_flow will still exist and be readable. Its value will be computed by the API from the message_flow_details object.

Please make the appropriate changes in the time.

Changelog

Active campaign reviews

Date: Oct 28th 2024

Vonage is introducing a new traffic_enabled flag and will now trigger a new compliance review after campaign updates. Please remember that 10DLC campaign should adhere to 10DLC compliance requirements through their lifetime.

More information on:

  • The october changes here.
  • 10DLC campaign requirements here.

Authentication+

Date: Oct 17th 2024

TCR is introduction a new brand verification process named "Authentication+" which involves a 2FA verification email. This new verification process is required for all new and existing PUBLIC_PROFIT brands. TCR will extend to more entity types in the future.

More information here.

Descargar la especificación OpenAPI

Enums

The list of values available for enum properties across all APIs

Operaciones disponibles

Get enumeration values

Get the list of all enum values available for each enum parameter

gethttps://api-eu.vonage.com/v1/10dlc/enum

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Respuestas
Tipo de contenido
application/json

List of all enumeration values

alt_business_id_type
array
id
string
brand_relationship
array
id
string
brand_status
array
id
string
campaign_status
array
description
string
id
string
campaign_op_status
array
id
string
compliance
array
id
string
country
array
description
string
id
string
cnp
array
description
string
id
string
dca
array
description
string
id
string
entity_type
array
id
string
event_category
array
id
string
identity_status
array
id
string
mno
array
id
string
mno
string
nudge_intent
array
id
string
number_status
array
id
string
opt_attribute_name
array
description
string
id
string
type
string
sharing_status
array
id
string
stock_exchange
array
country
string
description
string
id
string
tcr_campaign_status
array
id
string
tmo_brand_tier
array
id
string
usecase
array
classification
string
description
string
display_name
string
id
string
max_sub_usecases
number
min_sub_usecases
number
valid_sub_usecase
number
min_msg_samples
number

This is the minimum number of message samples for a campaign's usecase. This does not account for additional samples needed by a campaign's sub usecases.

usstate
array
description
string
id
string
vertical
array
description
string
display_name
string
id
string
industry_id
string
vetting_class
array
description
string
display_name
string
enabled
number
id
string
validity_months
number
vetting_provider
array
display_name
string
id
string
vetting_classes
string
vetting_status
array
id
string
vetting_appeal_category
array
id
string
display_name
string
description
string

Ejemplo Respuesta

{
   "alt_business_id_type": [
      {
         "id": "string"
      }
   ],
   "brand_relationship": [
      {
         "id": "string"
      }
   ],
   "brand_status": [
      {
         "id": "string"
      }
   ],
   "campaign_status": [
      {
         "description": "string",
         "id": "string"
      }
   ],
   "campaign_op_status": [
      {
         "id": "string"
      }
   ],
   "compliance": [
      {
         "id": "string"
      }
   ],
   "country": [
      {
         "description": "string",
         "id": "string"
      }
   ],
   "cnp": [
      {
         "description": "string",
         "id": "string"
      }
   ],
   "dca": [
      {
         "description": "string",
         "id": "string"
      }
   ],
   "entity_type": [
      {
         "id": "string"
      }
   ],
   "event_category": [
      {
         "id": "string"
      }
   ],
   "identity_status": [
      {
         "id": "string"
      }
   ],
   "mno": [
      {
         "id": "string",
         "mno": "string"
      }
   ],
   "nudge_intent": [
      {
         "id": "string"
      }
   ],
   "number_status": [
      {
         "id": "string"
      }
   ],
   "opt_attribute_name": [
      {
         "description": "string",
         "id": "string",
         "type": "string"
      }
   ],
   "sharing_status": [
      {
         "id": "string"
      }
   ],
   "stock_exchange": [
      {
         "country": "string",
         "description": "string",
         "id": "string"
      }
   ],
   "tcr_campaign_status": [
      {
         "id": "string"
      }
   ],
   "tmo_brand_tier": [
      {
         "id": "string"
      }
   ],
   "usecase": [
      {
         "classification": "string",
         "description": "string",
         "display_name": "string",
         "id": "string",
         "max_sub_usecases": 0,
         "min_sub_usecases": 0,
         "valid_sub_usecase": 0,
         "min_msg_samples": 0
      }
   ],
   "usstate": [
      {
         "description": "string",
         "id": "string"
      }
   ],
   "vertical": [
      {
         "description": "string",
         "display_name": "string",
         "id": "string",
         "industry_id": "string"
      }
   ],
   "vetting_class": [
      {
         "description": "string",
         "display_name": "string",
         "enabled": 0,
         "id": "string",
         "validity_months": 0
      }
   ],
   "vetting_provider": [
      {
         "display_name": "string",
         "id": "string",
         "vetting_classes": "string"
      }
   ],
   "vetting_status": [
      {
         "id": "string"
      }
   ],
   "vetting_appeal_category": [
      {
         "id": "string",
         "display_name": "string",
         "description": "string"
      }
   ]
}

Account

This section outlines the endpoints to view and manage all account level 10DLC features:

Get account settings

Get all 10DLC account level settings and features.

gethttps://api-eu.vonage.com/v1/10dlc/account

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Respuestas
Tipo de contenido
application/json

OK

opt_out_assist
boolean
ejemplotrue

Specifies whether opt-out assist is enabled for this account.

Documentation - Developer

It is only possible to enable opt out assist. To disable, please reach out to support.

Ejemplo Respuesta

{
   "opt_out_assist": true
}

Update account settings

Update account settings. Oonly the primary account is allowed to update the account attributes.

patchhttps://api-eu.vonage.com/v1/10dlc/account

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Cuerpo de la solicitud
Tipo de contenido
application/json

opt_out_assist
boolean
Requerido
ejemplotrue

Specifies whether opt-out assist is enabled for this account.

Documentation - Developer

It is only possible to enable opt out assist. To disable, please reach out to support.

Ejemplo Solicitar

{
   "opt_out_assist": true
}

Respuestas

No Content

Brands

This section outlines the endpoints to register and manage your 10DLC brands.

Guide - Requirements

Recently updated:

  • reseller (boolean): designates a brand as reseller brand
    Updating the reseller boolean on existing brands will attempt to update all existing campaigns with the reseller ID information.
    All campaigns registered on reseller brands will be designated as reseller campaigns automatically.
  • PUBLIC_PROFIT brands only
    • verification_email (string): Email address used for the Authentication+ verification
    • verification_email_completion_date (string): Completion date of the Authentication+ verification
  • Only registered 10DLC Resellers (PENDING or APPROVED) can register reseller brands

Get all brands with specific Account ID.

Retrieve all brands with Account ID.

gethttps://api-eu.vonage.com/v1/10dlc/brands

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Consulta Parámetros

page
integer
Min1
ejemplo2

Page of results to jump to

page_size
integer
ejemplo10

Number of results per page

filter
array

Narrow down results based on matching conditions. Follow the comprehensive guide to learn how to craft filter queries.

status
string

One or multiple status can be given. Thus ACTIVE and SUSPENDED. The endpoint then returns the brands with the chosen status. If no status is chosen, both ACTIVE and SUSPENDED brands would be returned.

Debe ser uno de:ACTIVESUSPENDEDTERMINATEDDELETED

Respuestas
Tipo de contenido
application/json

List of brands that are associated with an account

page_size
integer
ejemplo10

Items per page

page
integer
Min1
ejemplo2

Page Offset

total_pages
integer
Min1
ejemplo100

Number of pages in the entire result set

total_items
integer
ejemplo100

Number of items in the entire result set

_embedded
object
brands
array
account_id
string
ejemploabcd1234

The Vonage Account ID

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

entity_type
string
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Max255
ejemploVonage

Display or marketing name of the brand.

company_name
string
Max255
ejemploVonage

Legal company name.

ein
string
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

universal_ein
string
Max50
ejemplo20-1111111

Universal EIN of Brand, Read-Only

alt_business_id_type
string
Max50
ejemploDUNS

Required if alt_business_id is provided.

Debe ser uno de:DUNSGIINLEI
alt_business_id
string
Max50
ejemplo150483782

Required if alt_business_id_type is provided.

phone
string
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Max100
ejemplo23 Main Street

Street number and name.

city
string
Max100
ejemploHolmdel

City name

state
string
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
ejemploUS

ISO3166-Alpha2 country code.

email
string
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
website
string
ejemplohttps://vonage.com

Brand website URL.

vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
verification_email
string
Max100
ejemploverification_email@vonage.com

Valid verification email address of brand. Required if entity_type=PUBLIC_PROFIT.

verification_email_completion_date
string(date-time)
ejemplo2019-08-24 14:15:22

Completion date when verification email address has been successfully verified.

reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_count
integer
ejemplo5

Number of campaigns associated with the brand

carrier_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

brand_relationship
string
ejemploBASIC_ACCOUNT

Brand relationship level.

Debe ser uno de:BASIC_ACCOUNTSMALL_ACCOUNTMEDIUM_ACCOUNTLARGE_ACCOUNTKEY_ACCOUNT
partner
boolean

Flag indicating the brand is related to a partner customer (brand & campaigns registered directly on TCR and shared with Vonage)

shared
boolean

True when the brand is shared with the current Account ID.

owner
boolean

True when the brand is owned by the requesting account.

status
string

Brand status.

reference_id
string

Unique identifier for preventing duplicate brand registration into TCR.

verified_date
string(date-time)

Date-time when brand mobile phone was verified.

created_date
string
ejemplo2019-08-24 14:15:22
last_updated
string
ejemplo2019-09-24 14:15:22
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK
campaigns
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK?page=2
next
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/?page=3
previous
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/?page=1
first
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/?page=1
last
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/?page=10

Ejemplo Respuesta

{
   "page_size": 10,
   "page": 2,
   "total_pages": 100,
   "total_items": 100,
   "_embedded": {
      "brands": [
         {
            "account_id": "abcd1234",
            "primary_account_id": "abcd1234",
            "entity_type": "PUBLIC_PROFIT",
            "first_name": "John",
            "last_name": "Smith",
            "display_name": "Vonage",
            "company_name": "Vonage",
            "ein": "20-1111111",
            "ein_issuing_country": "US",
            "universal_ein": "20-1111111",
            "alt_business_id_type": "DUNS",
            "alt_business_id": "150483782",
            "phone": "15556660001",
            "mobile_phone": "123123222334",
            "street": "23 Main Street",
            "city": "Holmdel",
            "state": "NJ",
            "postal_code": "07733",
            "country": "US",
            "email": "devrel@vonage.com",
            "stock_symbol": "VG",
            "stock_exchange": "NASDAQ",
            "website": "https://vonage.com",
            "vertical": "TECHNOLOGY",
            "verification_email": "verification_email@vonage.com",
            "verification_email_completion_date": "2019-08-24 14:15:22",
            "reseller": true,
            "brand_id": "BLQKOPK",
            "campaign_count": 5,
            "carrier_suspensions": [
               [
                  {}
               ]
            ],
            "brand_relationship": "BASIC_ACCOUNT",
            "partner": true,
            "shared": true,
            "owner": true,
            "status": "string",
            "reference_id": "string",
            "verified_date": "2019-08-24T14:15:22Z",
            "created_date": "2019-08-24 14:15:22",
            "last_updated": "2019-09-24 14:15:22",
            "_links": {
               "self": {
                  "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK"
               },
               "campaigns": {
                  "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns"
               }
            }
         }
      ]
   },
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK?page=2"
      },
      "next": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/?page=3"
      },
      "previous": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/?page=1"
      },
      "first": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/?page=1"
      },
      "last": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/?page=10"
      }
   }
}

Create a new brand for your account

Create a new brand for your account. A brand is a business or individual identity behind the campaign. Most accounts will be created immediately, and you can move on to qualifying a new campaign for the brand. Some brands may require additional vetting. In such cases, please move on to the vetting API endpoints before attempting to create a campaign.

Please note the entity_type field, as that field value will help determine which fields are required.`

posthttps://api-eu.vonage.com/v1/10dlc/brands

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Cuerpo de la solicitud
Tipo de contenido
application/json

Uno de
account_id
string
Requerido
ejemploabcd1234

The Vonage Account ID

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

entity_type
string
Requerido
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Requerido
Max255
ejemploVonage

Display or marketing name of the brand.

company_name
string
Requerido
Max255
ejemploVonage

Legal company name.

ein
string
Requerido
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

universal_ein
string
Max50
ejemplo20-1111111

Universal EIN of Brand, Read-Only

alt_business_id_type
string
Max50
ejemploDUNS

Required if alt_business_id is provided.

Debe ser uno de:DUNSGIINLEI
alt_business_id
string
Max50
ejemplo150483782

Required if alt_business_id_type is provided.

phone
string
Requerido
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Requerido
Max100
ejemplo23 Main Street

Street number and name.

city
string
Requerido
Max100
ejemploHolmdel

City name

state
string
Requerido
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Requerido
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
Requerido
ejemploUS

ISO3166-Alpha2 country code.

email
string
Requerido
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
website
string
ejemplohttps://vonage.com

Brand website URL.

vertical
string
Requerido
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
verification_email
string
Max100
ejemploverification_email@vonage.com

Valid verification email address of brand. Required if entity_type=PUBLIC_PROFIT.

verification_email_completion_date
string(date-time)
ejemplo2019-08-24 14:15:22

Completion date when verification email address has been successfully verified.

reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

Ejemplo Solicitar»Fields required to create a brand with type other than PUBLIC_PROFIT or SOLE_PROPRIETOR.

{
   "account_id": "abcd1234",
   "primary_account_id": "abcd1234",
   "entity_type": "PUBLIC_PROFIT",
   "first_name": "John",
   "last_name": "Smith",
   "display_name": "Vonage",
   "company_name": "Vonage",
   "ein": "20-1111111",
   "ein_issuing_country": "US",
   "universal_ein": "20-1111111",
   "alt_business_id_type": "DUNS",
   "alt_business_id": "150483782",
   "phone": "15556660001",
   "mobile_phone": "123123222334",
   "street": "23 Main Street",
   "city": "Holmdel",
   "state": "NJ",
   "postal_code": "07733",
   "country": "US",
   "email": "devrel@vonage.com",
   "stock_symbol": "VG",
   "stock_exchange": "NASDAQ",
   "website": "https://vonage.com",
   "vertical": "TECHNOLOGY",
   "verification_email": "verification_email@vonage.com",
   "verification_email_completion_date": "2019-08-24 14:15:22",
   "reseller": true
}

Respuestas
Tipo de contenido
application/json

Return a single brand

account_id
string
ejemploabcd1234

The Vonage Account ID

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

entity_type
string
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Max255
ejemploVonage

Display or marketing name of the brand.

company_name
string
Max255
ejemploVonage

Legal company name.

ein
string
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

universal_ein
string
Max50
ejemplo20-1111111

Universal EIN of Brand, Read-Only

alt_business_id_type
string
Max50
ejemploDUNS

Required if alt_business_id is provided.

Debe ser uno de:DUNSGIINLEI
alt_business_id
string
Max50
ejemplo150483782

Required if alt_business_id_type is provided.

phone
string
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Max100
ejemplo23 Main Street

Street number and name.

city
string
Max100
ejemploHolmdel

City name

state
string
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
ejemploUS

ISO3166-Alpha2 country code.

email
string
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
website
string
ejemplohttps://vonage.com

Brand website URL.

vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
verification_email
string
Max100
ejemploverification_email@vonage.com

Valid verification email address of brand. Required if entity_type=PUBLIC_PROFIT.

verification_email_completion_date
string(date-time)
ejemplo2019-08-24 14:15:22

Completion date when verification email address has been successfully verified.

reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_count
integer
ejemplo5

Number of campaigns associated with the brand

carrier_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

brand_relationship
string
ejemploBASIC_ACCOUNT

Brand relationship level.

Debe ser uno de:BASIC_ACCOUNTSMALL_ACCOUNTMEDIUM_ACCOUNTLARGE_ACCOUNTKEY_ACCOUNT
partner
boolean

Flag indicating the brand is related to a partner customer (brand & campaigns registered directly on TCR and shared with Vonage)

shared
boolean

True when the brand is shared with the current Account ID.

owner
boolean

True when the brand is owned by the requesting account.

status
string

Brand status.

reference_id
string

Unique identifier for preventing duplicate brand registration into TCR.

verified_date
string(date-time)

Date-time when brand mobile phone was verified.

created_date
string
ejemplo2019-08-24 14:15:22
last_updated
string
ejemplo2019-09-24 14:15:22
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK
campaigns
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns

Ejemplo Respuesta

{
   "account_id": "abcd1234",
   "primary_account_id": "abcd1234",
   "entity_type": "PUBLIC_PROFIT",
   "first_name": "John",
   "last_name": "Smith",
   "display_name": "Vonage",
   "company_name": "Vonage",
   "ein": "20-1111111",
   "ein_issuing_country": "US",
   "universal_ein": "20-1111111",
   "alt_business_id_type": "DUNS",
   "alt_business_id": "150483782",
   "phone": "15556660001",
   "mobile_phone": "123123222334",
   "street": "23 Main Street",
   "city": "Holmdel",
   "state": "NJ",
   "postal_code": "07733",
   "country": "US",
   "email": "devrel@vonage.com",
   "stock_symbol": "VG",
   "stock_exchange": "NASDAQ",
   "website": "https://vonage.com",
   "vertical": "TECHNOLOGY",
   "verification_email": "verification_email@vonage.com",
   "verification_email_completion_date": "2019-08-24 14:15:22",
   "reseller": true,
   "brand_id": "BLQKOPK",
   "campaign_count": 5,
   "carrier_suspensions": [
      [
         {}
      ]
   ],
   "brand_relationship": "BASIC_ACCOUNT",
   "partner": true,
   "shared": true,
   "owner": true,
   "status": "string",
   "reference_id": "string",
   "verified_date": "2019-08-24T14:15:22Z",
   "created_date": "2019-08-24 14:15:22",
   "last_updated": "2019-09-24 14:15:22",
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK"
      },
      "campaigns": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns"
      }
   }
}

Get a brand by Brand ID.

Retrieve a specific brand with Brand ID.

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Respuestas
Tipo de contenido
application/json

Return a single brand

account_id
string
ejemploabcd1234

The Vonage Account ID

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

entity_type
string
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Max255
ejemploVonage

Display or marketing name of the brand.

company_name
string
Max255
ejemploVonage

Legal company name.

ein
string
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

universal_ein
string
Max50
ejemplo20-1111111

Universal EIN of Brand, Read-Only

alt_business_id_type
string
Max50
ejemploDUNS

Required if alt_business_id is provided.

Debe ser uno de:DUNSGIINLEI
alt_business_id
string
Max50
ejemplo150483782

Required if alt_business_id_type is provided.

phone
string
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Max100
ejemplo23 Main Street

Street number and name.

city
string
Max100
ejemploHolmdel

City name

state
string
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
ejemploUS

ISO3166-Alpha2 country code.

email
string
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
website
string
ejemplohttps://vonage.com

Brand website URL.

vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
verification_email
string
Max100
ejemploverification_email@vonage.com

Valid verification email address of brand. Required if entity_type=PUBLIC_PROFIT.

verification_email_completion_date
string(date-time)
ejemplo2019-08-24 14:15:22

Completion date when verification email address has been successfully verified.

reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_count
integer
ejemplo5

Number of campaigns associated with the brand

carrier_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

brand_relationship
string
ejemploBASIC_ACCOUNT

Brand relationship level.

Debe ser uno de:BASIC_ACCOUNTSMALL_ACCOUNTMEDIUM_ACCOUNTLARGE_ACCOUNTKEY_ACCOUNT
partner
boolean

Flag indicating the brand is related to a partner customer (brand & campaigns registered directly on TCR and shared with Vonage)

shared
boolean

True when the brand is shared with the current Account ID.

owner
boolean

True when the brand is owned by the requesting account.

status
string

Brand status.

reference_id
string

Unique identifier for preventing duplicate brand registration into TCR.

verified_date
string(date-time)

Date-time when brand mobile phone was verified.

created_date
string
ejemplo2019-08-24 14:15:22
last_updated
string
ejemplo2019-09-24 14:15:22
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK
campaigns
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns

Ejemplo Respuesta

{
   "account_id": "abcd1234",
   "primary_account_id": "abcd1234",
   "entity_type": "PUBLIC_PROFIT",
   "first_name": "John",
   "last_name": "Smith",
   "display_name": "Vonage",
   "company_name": "Vonage",
   "ein": "20-1111111",
   "ein_issuing_country": "US",
   "universal_ein": "20-1111111",
   "alt_business_id_type": "DUNS",
   "alt_business_id": "150483782",
   "phone": "15556660001",
   "mobile_phone": "123123222334",
   "street": "23 Main Street",
   "city": "Holmdel",
   "state": "NJ",
   "postal_code": "07733",
   "country": "US",
   "email": "devrel@vonage.com",
   "stock_symbol": "VG",
   "stock_exchange": "NASDAQ",
   "website": "https://vonage.com",
   "vertical": "TECHNOLOGY",
   "verification_email": "verification_email@vonage.com",
   "verification_email_completion_date": "2019-08-24 14:15:22",
   "reseller": true,
   "brand_id": "BLQKOPK",
   "campaign_count": 5,
   "carrier_suspensions": [
      [
         {}
      ]
   ],
   "brand_relationship": "BASIC_ACCOUNT",
   "partner": true,
   "shared": true,
   "owner": true,
   "status": "string",
   "reference_id": "string",
   "verified_date": "2019-08-24T14:15:22Z",
   "created_date": "2019-08-24 14:15:22",
   "last_updated": "2019-09-24 14:15:22",
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK"
      },
      "campaigns": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns"
      }
   }
}

Partially update a brand

This operation applies a partial update of a brand enabling the CSP to keep brand details updated in the registry. Please note that if vetting is successfully completed, the ein ein_issuing_country and entity_type fields will be locked and the associated values cannot be changed.

patchhttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
application/json

company_name
string
Max255
ejemploVonage

Legal company name.

first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Max255
ejemploVonage

Display or marketing name of the brand.

ein
string
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

entity_type
string
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
website
string
ejemplohttps://vonage.com

Brand website URL.

phone
string
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Max100
ejemplo23 Main Street

Street number and name.

city
string
Max100
ejemploHolmdel

City name

state
string
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
ejemploUS

ISO3166-Alpha2 country code.

email
string
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

Ejemplo Solicitar

{
   "company_name": "Vonage",
   "first_name": "John",
   "last_name": "Smith",
   "display_name": "Vonage",
   "ein": "20-1111111",
   "ein_issuing_country": "US",
   "entity_type": "PUBLIC_PROFIT",
   "website": "https://vonage.com",
   "phone": "15556660001",
   "mobile_phone": "123123222334",
   "street": "23 Main Street",
   "city": "Holmdel",
   "state": "NJ",
   "postal_code": "07733",
   "country": "US",
   "email": "devrel@vonage.com",
   "stock_symbol": "VG",
   "stock_exchange": "NASDAQ",
   "vertical": "TECHNOLOGY",
   "reseller": true
}

Respuestas
Tipo de contenido
application/json

Return a single brand

account_id
string
ejemploabcd1234

The Vonage Account ID

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

entity_type
string
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Max255
ejemploVonage

Display or marketing name of the brand.

company_name
string
Max255
ejemploVonage

Legal company name.

ein
string
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

universal_ein
string
Max50
ejemplo20-1111111

Universal EIN of Brand, Read-Only

alt_business_id_type
string
Max50
ejemploDUNS

Required if alt_business_id is provided.

Debe ser uno de:DUNSGIINLEI
alt_business_id
string
Max50
ejemplo150483782

Required if alt_business_id_type is provided.

phone
string
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Max100
ejemplo23 Main Street

Street number and name.

city
string
Max100
ejemploHolmdel

City name

state
string
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
ejemploUS

ISO3166-Alpha2 country code.

email
string
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
website
string
ejemplohttps://vonage.com

Brand website URL.

vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
verification_email
string
Max100
ejemploverification_email@vonage.com

Valid verification email address of brand. Required if entity_type=PUBLIC_PROFIT.

verification_email_completion_date
string(date-time)
ejemplo2019-08-24 14:15:22

Completion date when verification email address has been successfully verified.

reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_count
integer
ejemplo5

Number of campaigns associated with the brand

carrier_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

brand_relationship
string
ejemploBASIC_ACCOUNT

Brand relationship level.

Debe ser uno de:BASIC_ACCOUNTSMALL_ACCOUNTMEDIUM_ACCOUNTLARGE_ACCOUNTKEY_ACCOUNT
partner
boolean

Flag indicating the brand is related to a partner customer (brand & campaigns registered directly on TCR and shared with Vonage)

shared
boolean

True when the brand is shared with the current Account ID.

owner
boolean

True when the brand is owned by the requesting account.

status
string

Brand status.

reference_id
string

Unique identifier for preventing duplicate brand registration into TCR.

verified_date
string(date-time)

Date-time when brand mobile phone was verified.

created_date
string
ejemplo2019-08-24 14:15:22
last_updated
string
ejemplo2019-09-24 14:15:22
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK
campaigns
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns

Ejemplo Respuesta

{
   "account_id": "abcd1234",
   "primary_account_id": "abcd1234",
   "entity_type": "PUBLIC_PROFIT",
   "first_name": "John",
   "last_name": "Smith",
   "display_name": "Vonage",
   "company_name": "Vonage",
   "ein": "20-1111111",
   "ein_issuing_country": "US",
   "universal_ein": "20-1111111",
   "alt_business_id_type": "DUNS",
   "alt_business_id": "150483782",
   "phone": "15556660001",
   "mobile_phone": "123123222334",
   "street": "23 Main Street",
   "city": "Holmdel",
   "state": "NJ",
   "postal_code": "07733",
   "country": "US",
   "email": "devrel@vonage.com",
   "stock_symbol": "VG",
   "stock_exchange": "NASDAQ",
   "website": "https://vonage.com",
   "vertical": "TECHNOLOGY",
   "verification_email": "verification_email@vonage.com",
   "verification_email_completion_date": "2019-08-24 14:15:22",
   "reseller": true,
   "brand_id": "BLQKOPK",
   "campaign_count": 5,
   "carrier_suspensions": [
      [
         {}
      ]
   ],
   "brand_relationship": "BASIC_ACCOUNT",
   "partner": true,
   "shared": true,
   "owner": true,
   "status": "string",
   "reference_id": "string",
   "verified_date": "2019-08-24T14:15:22Z",
   "created_date": "2019-08-24 14:15:22",
   "last_updated": "2019-09-24 14:15:22",
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK"
      },
      "campaigns": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns"
      }
   }
}

Remove a specific brand from your account

This operation deletes a brand.

A brand can be deleted if it does not have active campaigns. Once a brand is deleted, it will be in a DELETED state and it cannot be restored to an ACTIVE state. Deleted brands will remain in the system for a period of time and can be searched using the GET/brand endpoint with the query filter status = ACTIVE. While deleted brands are searchable, all other API endpoints involving a deleted brand will result in a 502 - Brand not found error.

deletehttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Respuestas

No Content

Get feedback of a brand by Brand ID.

Retrieve feedback of a specific brand with Brand ID.

The endpoint will only respond correctly if the brand's identity status is already checked. If the brand's identity status is still PENDING, it will answer with a 422 error.

Also, if the brand's identity status is not UNVERIFIED, the response should be empty.

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/feedback

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Respuestas
Tipo de contenido
application/json

Return feedback for a brand

categories
array
name
string
description
string
fields
array

Ejemplo Respuesta

{
   "categories": [
      {
         "name": "string",
         "description": "string",
         "fields": [
            "string"
         ]
      }
   ]
}

Check Use Case Qualifications for a Brand

Check to see if a brand is qualified to run a campaign against a given use case. A brand must check this endpoint before attempting to generate a new campaign.

If the use case is not qualified, the brand may request additional third party vetting to see if the additional use cases can be added to their account.

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/usecases/:usecase

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

usecase
string
Requerido

Name of a use case

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME

Respuestas
Tipo de contenido
application/json

A valid qualified use case for a brand

usecase
string
ejemploPOLITICAL
quarterly_fee
integer(int32)
ejemplo30
annual_fee
integer(int32)
ejemplo30
mno_metadata
array
network_id
string
ejemplo10017

Network ID of the MNO.

mno
string
ejemploAT&T

Name of the MNO.

status
string

MNO campaign operation status. Please refer to the campaign_op_status property of the /enum endpoint response for an updated list of valid values.

mno_support
boolean

If 'false', then the desired usecase cannot be supported by the MNO.

mno_review
boolean

If 'true', then the submitted campaign is subject to the MNO (manual) review process.

qualify
boolean

If 'false', then the brand does not qualify for the desired usecase on the MNO.

min_msg_samples
integer
ejemplo2

The minimum number of message samples required by MNO for submission of the desired usecase.

req_subscriber_opt_in
boolean

If 'true' then MNO requires the subscriber to opt-into the campaign before the message may be sent to the subscriber. The opt-in mechanism can be mobile or web opt-in.

req_subscriber_opt_out
boolean

If 'true' then MNO requires a campaign to support an opt-out mechanism through MO stop keywords such as 'STOP', 'QUIT'. Upon receive the STOP message from a subscriber, the campaign must stop sending messages to the subscriber immediately.

req_subscriber_help
boolean

If 'true' then MNO requires a campaign to support a 'help' mechanism through MO help key words such as 'HELP', 'INFO'.

no_embedded_link
boolean

If 'true' then MNO forbids call-to-action link/URL to be embedded in all messages sent to the subscriber.

no_embedded_phone
boolean

If 'true' then MNO forbids call-to-action phone number to be embedded in all messages sent to the subscriber.

att_msg_class
string
ejemploQ

(Only for AT&T). Message class assigned to the campaign by MNO. Please refer to the AT&T 10DLC guide for a complete list of available message class and definition.

att_tpm
integer
ejemplo3000

(Only for AT&T). SMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_mms_tpm
integer
ejemplo3000

(Only for AT&T). MMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_number_based
boolean

(Only for AT&T). Whether is the MNO applying the TPM per number or per campaign.

tmo_brand_tier
string
ejemploLOW

(Only for T-Mobile). Daily message volume is restricted based on brand tier or brand qualification. The daily volume restriction applies to brand across campaigns and CSPs. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:LOWLOWER_MIDUPPER_MIDTOPUNCAPPED
tmo_tpd
integer

(Only for TMobile). Message TPD (throughput per day) qualified by the brand for the desired usecase.

complaints
array
complaints
array
description
string
Max65535

Description of this MNO complaint.

dca
string
ejemploSINCH

dca name

created_at
string(date-time)

Date-time when this record was created.

Ejemplo Respuesta

{
   "usecase": "POLITICAL",
   "quarterly_fee": 30,
   "annual_fee": 30,
   "mno_metadata": [
      {
         "network_id": "10017",
         "min_msg_samples": 2,
         "att_msg_class": "Q",
         "req_subscriber_opt_in": false,
         "req_subscriber_help": false,
         "req_subscriber_opt_out": false,
         "mno": "AT&T",
         "att_tpm": 2000,
         "mno_support": true,
         "mno_review": true,
         "no_embedded_link": true,
         "qualify": true,
         "tmo_brand_tier": null
      },
      {
         "network_id": "10035",
         "min_msg_samples": 2,
         "req_subscriber_opt_in": false,
         "req_subscriber_help": false,
         "req_subscriber_opt_out": false,
         "mno": "TMO",
         "mno_support": true,
         "mno_review": true,
         "no_embedded_link": true,
         "no_embedded_phone": true,
         "qualify": true,
         "tmo_brand_tier": "LOW",
         "att_tpm": null,
         "att_msg_class": null
      }
   ]
}

Brand verification

This section outlines the endpoints to verify your brand. Please read this guide for more information.

Brand verification

  • Basic verification
  • Authentication+ verification - details
  • Sole Proprietor OTP verification - details

Brand vetting

  • Standard vet
  • Enhanced vet
  • Political vet

Verification and vetting appeals

Triggers the emission of OTP or 2FA verification

Triggers an OTP verification for Sole proprietor brands, or 2FA email verification for Authentication+.

  • OTP message is sent to brand's registered mobile phone number (details)
  • 2FA email is sent to brand's verification email (details)
posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/start_verification

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
application/json

verify_sms
string
ejemploYour verification code is @OTP_PIN@

Template OTP message to be sent to the brand's mobilePhone. Must contain either @OTP_PIN@ or @OTP_YES@ macro element. If @OTP_YES@ macro is only with SMS reply confirmation flow.

success_sms
string
ejemploYour verification code has been confirmed successfully

SMS to be sent to the brand's mobile phone upon successful SMS reply OTP confirmation.

Ejemplo Solicitar

{
   "verify_sms": "Your verification code is @OTP_PIN@",
   "success_sms": "Your verification code has been confirmed successfully"
}

Respuestas
Tipo de contenido
application/json

OK

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

reference_id
string
ejemploOTP1234567

Reference ID for tracking the status of the OTP request.

Ejemplo Respuesta

{
   "brand_id": "BLQKOPK",
   "reference_id": "OTP1234567"
}

Verify the OTP code sent to brand's registered mobile phone number.

Verify an OTP code sent to brand's registered mobile phone number.

posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/verify

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
application/json

otp_pin
string
Requerido
Min6
Max6

Code received by the brand's registered mobile phone number after starting the OTP verification process.

Ejemplo Solicitar

{
   "otp_pin": "string"
}

Respuestas

No Content

Retrieves SMS OTP status by referenceId.

API endpoint provides two key pieces of information; OTP verify status and SMS delivery status of the OTP message.

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/verification/:reference_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

reference_id
string
Requerido
ejemploOTP1234567

SMS OTP reference ID is an alphanumeric identifier (with 'OTP' prefix).

Respuestas
Tipo de contenido
application/json

OK

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

reference_id
string
ejemploOTP1234567

Reference ID for tracking the status of the OTP request.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

request_date
string(date-time)

SMS OTP initial requested timestamp.

verity_date
string(date-time)

OTP verification complete timestamp.

delivery_status
string

The most recent SMS delivery status as provided by an SMS service provider, if supported by the SMS service provider. The delivery status information is not guaranteed to be timely or consistent with OTP verify status. This information should only be used to facilitate triaging SMS derivability issue.

Debe ser uno de:DELIVERED_HANDSETDELIVERED_GATEWAYFAILED_ROUTINGFAILED_BLOCKEDFAILED_EXPIREDFAILED_UNKNOWNUNKNOWN_STATUSIN_TRANSIT
delivery_status_date
string(date-time)

Timestamp corresponding to the updated SMS OTP delivery status. This field is null if delivery_status is null.

delivery_status_details
string(date-time)
Max1024

OTP SMS delivery status details provided by the OTP SMS service provider, if supported by the SMS service provider.

Ejemplo Respuesta

{
   "brand_id": "BLQKOPK",
   "reference_id": "OTP1234567",
   "mobile_phone": "123123222334",
   "request_date": "2019-08-24T14:15:22Z",
   "verity_date": "2019-08-24T14:15:22Z",
   "delivery_status": "DELIVERED_HANDSET",
   "delivery_status_date": "2019-08-24T14:15:22Z",
   "delivery_status_details": "2019-08-24T14:15:22Z"
}

Retrieve a list of vetting records for a brand

Retrieve a list of vetting records for a brand

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/vetting/requests

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Respuestas
Tipo de contenido
application/json

Returns a list of vetting requests

array
account_id
string
ejemploabcd1234

The Vonage Account ID

evp_id
string

ID associated with a vetting request

vetting_id
string
vetting_token
string
vetting_score
integer
Max100

Vetting score ranging from 0-100.

vetting_class
string
vetting_status
string

Identifies a vetting request status. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:PENDINGUNSCOREACTIVEFAILEDEXPIRED
vetting_details
object

Collection of non-standard attributes (key-value pairs), applicable to some vetting records.

vetted_date
string(date-time)

Vetting effective date. This is the date when vetting was completed, or the starting effective date. If this date is missing, then the vetting was not complete or not valid.

created_date
string(date-time)
failed_reasons
array

The list of reasons for a FAILED external vetting.

additional_info
object

Additional brand information in json format. Required for POLITICAL type vets.

requestor_first_name
string
Requerido
ejemploJohn

First name of vetting requester.

requestor_last_name
string
Requerido
ejemploDoe

Last name of vetting requester.

locale
string
Requerido
ejemploFederal

Locale.

Debe ser uno de:FederalStateLocalTribal
fec_committee_type_code
string
Requerido
ejemploC

Committee type codes.

Debe ser uno de:CDEHINOPQSUVWXYZ
committee_id
string
Requerido
ejemplo00000

Free text field. The committee/campaign ID issued for Federal and any other locale - if not issued, enter "00000".

candidate_type
string
Requerido
ejemploPAC

Free text field. Required for campaigns. If committee is not candidate-specific, enter "PAC".

state_local_committee_type
string
Requerido
ejemploFEDERAL

Free text field. Required for State, Local, and Tribal -- if Federal, enter "FEDERAL".

local_committee_state
string
Requerido
ejemploAZ

If Federal Congress, enter the state(2 letter code) to be represented; if President, enter "US".

local_committee_municipality
string
Requerido
ejemploUS

Free text field. If Federal Congress, enter district to be represented; if President, enter "US".

tribal_location
string
Requerido
ejemploUS

Free text field. If non-tribal, enter "US".

filing_url
string
Requerido
ejemplohttps://example.com

Should be a valid URL format. Election authority website URL where the filing information can be found.

filing_record_url_instructions
string
ejemploAdditional instructions

Free text field. Additional instructions to aid in locating the filing record.

filing_email
string
ejemploJohn@email.com

Free text field. Exactly as filed with election authority. If not supplied, PIN cannot be sent via email.

election_date
string
Requerido
ejemplo2022-31-10

Date string in the format yyyy-dd-mm. Must be in the future.

pin_preference
string
Requerido
ejemploRegular

Pin preference.

Debe ser uno de:RegularExpressEmail
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

[
   {
      "account_id": "abcd1234",
      "evp_id": "string",
      "vetting_id": "string",
      "vetting_token": "string",
      "vetting_score": 100,
      "vetting_class": "string",
      "vetting_status": "PENDING",
      "vetting_details": {},
      "vetted_date": "2019-08-24T14:15:22Z",
      "created_date": "2019-08-24T14:15:22Z",
      "failed_reasons": [
         "string"
      ],
      "additional_info": {
         "requestor_first_name": "John",
         "requestor_last_name": "Doe",
         "locale": "Federal",
         "fec_committee_type_code": "C",
         "committee_id": "00000",
         "candidate_type": "PAC",
         "state_local_committee_type": "FEDERAL",
         "local_committee_state": "AZ",
         "local_committee_municipality": "US",
         "tribal_location": "US",
         "filing_url": "https://example.com",
         "filing_record_url_instructions": "Additional instructions",
         "filing_email": "John@email.com",
         "election_date": "2022-31-10",
         "pin_preference": "Regular"
      },
      "_links": {
         "self": {
            "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234"
         },
         "brand": {
            "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
         }
      }
   }
]

Request vetting for a brand

This operation requests the specific vetting provider to perform vetting on a brand. This authorizes Vonage to allow the vetting partner access to the particular brand information stored in The Campaign Registry (TCR). This request can take anywhere from a few minutes to 48 hours.

posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/vetting/requests

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
application/json

evp_id
string
Requerido
ejemploabcd123

This value must be the ID associated with one of the supported vetting providers.

Debe ser uno de:AegisCVWMC
vetting_class
string
Requerido
ejemploabcd123

Type of vetting to perform.

vetting_political_details
object

Additional political details in json format, required for POLITICAL type vetting. If non-POLITICAL type its neglected.

requestor_first_name
string
Requerido
ejemploJohn

First name of vetting requester.

requestor_last_name
string
Requerido
ejemploDoe

Last name of vetting requester.

locale
string
Requerido
ejemploFederal

Locale.

Debe ser uno de:FederalStateLocalTribal
fec_committee_type_code
string
Requerido
ejemploC

Committee type codes.

Debe ser uno de:CDEHINOPQSUVWXYZ
committee_id
string
Requerido
ejemplo00000

Free text field. The committee/campaign ID issued for Federal and any other locale - if not issued, enter "00000".

candidate_type
string
Requerido
ejemploPAC

Free text field. Required for campaigns. If committee is not candidate-specific, enter "PAC".

state_local_committee_type
string
Requerido
ejemploFEDERAL

Free text field. Required for State, Local, and Tribal -- if Federal, enter "FEDERAL".

local_committee_state
string
Requerido
ejemploAZ

If Federal Congress, enter the state(2 letter code) to be represented; if President, enter "US".

local_committee_municipality
string
Requerido
ejemploUS

Free text field. If Federal Congress, enter district to be represented; if President, enter "US".

tribal_location
string
Requerido
ejemploUS

Free text field. If non-tribal, enter "US".

filing_url
string
Requerido
ejemplohttps://example.com

Should be a valid URL format. Election authority website URL where the filing information can be found.

filing_record_url_instructions
string
ejemploAdditional instructions

Free text field. Additional instructions to aid in locating the filing record.

filing_email
string
ejemplojohn@email.com

Free text field. Exactly as filed with election authority. If not supplied, PIN cannot be sent via email.

election_date
string
Requerido
ejemplo2022-10-31

Date string in the format yyyy-mm-dd. Must be in the future.

pin_preference
string
Requerido
ejemploRegular

Pin preference.

Debe ser uno de:RegularExpressEmail
appeals
array

Contains vetting appeals, if any has been submitted.

explanation
string

Explanation that was given when creating the appeal.

status
string

The status of the appeal. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:PENDINGCOMPLETE
categories
array

An array of categories that the appeal applies to. Please refer to the /enum endpoint for an updated list of valid values.

evidences
array

The list of evidence files that were sent with this appeal.

id
string

ID of the evidence. To be used in the appeal process.

file_name
string

The name of the uploaded file.

mime_type
string

The mime type of the uploaded file.

outcome
object

The outcome of the appeal. This is filled only when the appeal is completed.

vetting_status
string

Identifies a vetting request status. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:PENDINGUNSCOREACTIVEFAILEDEXPIRED
vetting_score
integer
Max100

Vetting score ranging from 0-100.

feedback
object

Feedback given by the provider to explain the vetting outcome.

reasons
array
created_date
string(date-time)

Date-time when this record was created.

last_updated
string(date-time)

Date-time when this record was last updated.

Ejemplo Solicitar

{
   "evp_id": "abcd123",
   "vetting_class": "abcd123",
   "vetting_political_details": {
      "requestor_first_name": "John",
      "requestor_last_name": "Doe",
      "locale": "Federal",
      "fec_committee_type_code": "C",
      "committee_id": "00000",
      "candidate_type": "PAC",
      "state_local_committee_type": "FEDERAL",
      "local_committee_state": "AZ",
      "local_committee_municipality": "US",
      "tribal_location": "US",
      "filing_url": "https://example.com",
      "filing_record_url_instructions": "Additional instructions",
      "filing_email": "john@email.com",
      "election_date": "2022-10-31",
      "pin_preference": "Regular"
   },
   "appeals": [
      {
         "explanation": "Please find attached the evidence proving our tax ID.",
         "status": "COMPLETE",
         "categories": [
            "VERIFY_TAX_ID"
         ],
         "evidences": [
            {
               "id": "c94eea77-1494-4b8f-99dc-63a036126368",
               "file_name": "tax_registration.pdf",
               "mime_type": "application/pdf"
            }
         ],
         "outcome": {
            "vetting_status": "ACTIVE",
            "vetting_score": 100,
            "feedback": {
               "reasons": [
                  "Provided evidence match the tax id."
               ]
            }
         },
         "created_date": {},
         "last_updated": {}
      },
      {
         "explanation": "We think the low score is not warranted because ...",
         "status": "PENDING",
         "categories": [
            "LOW_SCORE"
         ],
         "evidences": [
            {
               "id": "b4513738-72c3-4720-bd73-47919ddde812",
               "file_name": "explanation_details.txt",
               "mime_type": "text/plain"
            }
         ],
         "created_date": {},
         "last_updated": {}
      }
   ]
}

Respuestas
Tipo de contenido
application/json

Information about a vetting request

account_id
string
ejemploabcd1234

The Vonage Account ID

evp_id
string

ID associated with a vetting request

vetting_id
string
vetting_token
string
vetting_score
integer
Max100

Vetting score ranging from 0-100.

vetting_class
string
vetting_status
string

Identifies a vetting request status. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:PENDINGUNSCOREACTIVEFAILEDEXPIRED
vetting_details
object

Collection of non-standard attributes (key-value pairs), applicable to some vetting records.

vetted_date
string(date-time)

Vetting effective date. This is the date when vetting was completed, or the starting effective date. If this date is missing, then the vetting was not complete or not valid.

created_date
string(date-time)
failed_reasons
array

The list of reasons for a FAILED external vetting.

additional_info
object

Additional brand information in json format. Required for POLITICAL type vets.

requestor_first_name
string
Requerido
ejemploJohn

First name of vetting requester.

requestor_last_name
string
Requerido
ejemploDoe

Last name of vetting requester.

locale
string
Requerido
ejemploFederal

Locale.

Debe ser uno de:FederalStateLocalTribal
fec_committee_type_code
string
Requerido
ejemploC

Committee type codes.

Debe ser uno de:CDEHINOPQSUVWXYZ
committee_id
string
Requerido
ejemplo00000

Free text field. The committee/campaign ID issued for Federal and any other locale - if not issued, enter "00000".

candidate_type
string
Requerido
ejemploPAC

Free text field. Required for campaigns. If committee is not candidate-specific, enter "PAC".

state_local_committee_type
string
Requerido
ejemploFEDERAL

Free text field. Required for State, Local, and Tribal -- if Federal, enter "FEDERAL".

local_committee_state
string
Requerido
ejemploAZ

If Federal Congress, enter the state(2 letter code) to be represented; if President, enter "US".

local_committee_municipality
string
Requerido
ejemploUS

Free text field. If Federal Congress, enter district to be represented; if President, enter "US".

tribal_location
string
Requerido
ejemploUS

Free text field. If non-tribal, enter "US".

filing_url
string
Requerido
ejemplohttps://example.com

Should be a valid URL format. Election authority website URL where the filing information can be found.

filing_record_url_instructions
string
ejemploAdditional instructions

Free text field. Additional instructions to aid in locating the filing record.

filing_email
string
ejemploJohn@email.com

Free text field. Exactly as filed with election authority. If not supplied, PIN cannot be sent via email.

election_date
string
Requerido
ejemplo2022-31-10

Date string in the format yyyy-dd-mm. Must be in the future.

pin_preference
string
Requerido
ejemploRegular

Pin preference.

Debe ser uno de:RegularExpressEmail
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

{
   "account_id": "abcd1234",
   "evp_id": "string",
   "vetting_id": "string",
   "vetting_token": "string",
   "vetting_score": 100,
   "vetting_class": "string",
   "vetting_status": "PENDING",
   "vetting_details": {},
   "vetted_date": "2019-08-24T14:15:22Z",
   "created_date": "2019-08-24T14:15:22Z",
   "failed_reasons": [
      "string"
   ],
   "additional_info": {
      "requestor_first_name": "John",
      "requestor_last_name": "Doe",
      "locale": "Federal",
      "fec_committee_type_code": "C",
      "committee_id": "00000",
      "candidate_type": "PAC",
      "state_local_committee_type": "FEDERAL",
      "local_committee_state": "AZ",
      "local_committee_municipality": "US",
      "tribal_location": "US",
      "filing_url": "https://example.com",
      "filing_record_url_instructions": "Additional instructions",
      "filing_email": "John@email.com",
      "election_date": "2022-31-10",
      "pin_preference": "Regular"
   },
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      }
   }
}

Import an existing vetting request to Vonage

Vetting requests can either be automated or manual. In the case that a vetting request has been manually performed or was requested outside of Vonage, you can request that the request be imported. The vetting request will be validated and, if successful, saved with the brand in TCR and the vetting record will be considered for future campaign qualification. This validation process is not immediate.

puthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/vetting/requests

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
application/json

evp_id
string
Requerido
ejemploabcd123

The identity of the vetting partner. This value must be the ID associated with one of the supported vetting providers.

Debe ser uno de:AegisCVWMC
vetting_token
string
ejemploabcd123

Token verifying the vetting ID (only applicable to Aegis vetting).

vetting_id
string
Requerido
ejemploabcd123

Unique ID that identifies a vetting transaction performed by a vetting provider. This ID is provided by the vetting provider at time of vetting.

Ejemplo Solicitar

{
   "evp_id": "abcd123",
   "vetting_token": "abcd123",
   "vetting_id": "abcd123"
}

Respuestas
Tipo de contenido
application/json

Information about a vetting request

account_id
string
ejemploabcd1234

The Vonage Account ID

evp_id
string

ID associated with a vetting request

vetting_id
string
vetting_token
string
vetting_score
integer
Max100

Vetting score ranging from 0-100.

vetting_class
string
vetting_status
string

Identifies a vetting request status. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:PENDINGUNSCOREACTIVEFAILEDEXPIRED
vetting_details
object

Collection of non-standard attributes (key-value pairs), applicable to some vetting records.

vetted_date
string(date-time)

Vetting effective date. This is the date when vetting was completed, or the starting effective date. If this date is missing, then the vetting was not complete or not valid.

created_date
string(date-time)
failed_reasons
array

The list of reasons for a FAILED external vetting.

additional_info
object

Additional brand information in json format. Required for POLITICAL type vets.

requestor_first_name
string
Requerido
ejemploJohn

First name of vetting requester.

requestor_last_name
string
Requerido
ejemploDoe

Last name of vetting requester.

locale
string
Requerido
ejemploFederal

Locale.

Debe ser uno de:FederalStateLocalTribal
fec_committee_type_code
string
Requerido
ejemploC

Committee type codes.

Debe ser uno de:CDEHINOPQSUVWXYZ
committee_id
string
Requerido
ejemplo00000

Free text field. The committee/campaign ID issued for Federal and any other locale - if not issued, enter "00000".

candidate_type
string
Requerido
ejemploPAC

Free text field. Required for campaigns. If committee is not candidate-specific, enter "PAC".

state_local_committee_type
string
Requerido
ejemploFEDERAL

Free text field. Required for State, Local, and Tribal -- if Federal, enter "FEDERAL".

local_committee_state
string
Requerido
ejemploAZ

If Federal Congress, enter the state(2 letter code) to be represented; if President, enter "US".

local_committee_municipality
string
Requerido
ejemploUS

Free text field. If Federal Congress, enter district to be represented; if President, enter "US".

tribal_location
string
Requerido
ejemploUS

Free text field. If non-tribal, enter "US".

filing_url
string
Requerido
ejemplohttps://example.com

Should be a valid URL format. Election authority website URL where the filing information can be found.

filing_record_url_instructions
string
ejemploAdditional instructions

Free text field. Additional instructions to aid in locating the filing record.

filing_email
string
ejemploJohn@email.com

Free text field. Exactly as filed with election authority. If not supplied, PIN cannot be sent via email.

election_date
string
Requerido
ejemplo2022-31-10

Date string in the format yyyy-dd-mm. Must be in the future.

pin_preference
string
Requerido
ejemploRegular

Pin preference.

Debe ser uno de:RegularExpressEmail
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

{
   "account_id": "abcd1234",
   "evp_id": "string",
   "vetting_id": "string",
   "vetting_token": "string",
   "vetting_score": 100,
   "vetting_class": "string",
   "vetting_status": "PENDING",
   "vetting_details": {},
   "vetted_date": "2019-08-24T14:15:22Z",
   "created_date": "2019-08-24T14:15:22Z",
   "failed_reasons": [
      "string"
   ],
   "additional_info": {
      "requestor_first_name": "John",
      "requestor_last_name": "Doe",
      "locale": "Federal",
      "fec_committee_type_code": "C",
      "committee_id": "00000",
      "candidate_type": "PAC",
      "state_local_committee_type": "FEDERAL",
      "local_committee_state": "AZ",
      "local_committee_municipality": "US",
      "tribal_location": "US",
      "filing_url": "https://example.com",
      "filing_record_url_instructions": "Additional instructions",
      "filing_email": "John@email.com",
      "election_date": "2022-31-10",
      "pin_preference": "Regular"
   },
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      }
   }
}

Request vetting appeal for a brand

This creates an appeal for the selected vetting.

Evidence files, previously uploaded with endpoint POST /v1/10dlc/brands/{brand_id}/appeal/evidence can be attached to the appeal.

Limitations:

  • A maximum of 10 evidence files can be submitted with the appeal
  • The total size of the evidence files cannot exceed 30MB
posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/vetting/requests/:vetting_id/appeal

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

vetting_id
string
Requerido

Vetting ID

Cuerpo de la solicitud
Tipo de contenido
application/json

categories
array
Requerido

An array of categories that the appeal applies to. Please refer to the /enum endpoint for an updated list of valid values.

evidence_ids
array
Requerido

An array referencing previously uploaded evidence files IDs.

explanation
string
Requerido
Max1024

Explanation of why the appeal should be granted.

Ejemplo Solicitar

{
   "categories": [
      "string"
   ],
   "evidence_ids": [
      "string"
   ],
   "explanation": "string"
}

Respuestas

No Content

Request a brand revetting

This operation allows you to revet the brand; however, revetting is allowed once after the successful brand registration. Search for campaigns you registered by any combination of brand_id, reseller_id, status, usecase, and vertical. This operation supports pagination with a maximum of 500 records per fetch. Values for brand_id, reseller_id, status, usecase, and vertical must be exact matches if supplied.

posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/revet

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Respuestas
Tipo de contenido
application/json

Return a single brand

account_id
string
ejemploabcd1234

The Vonage Account ID

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

entity_type
string
ejemploPUBLIC_PROFIT

Entity type behind the brand. This is the form of business establishment. NB: The GOVERNMENT entity_type is ONLY applicable to US governmental agencies (FBI, CIA, Department of defence etc.) Other countries’ governmental agencies must use NON_PROFIT entity type. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PRIVATE_PROFITPUBLIC_PROFITNON_PROFITSOLE_PROPRIETORGOVERNMENT
first_name
string
Max100
ejemploJohn

First name of business contact. NB: Required for SOLE_PROPRIETOR entity type

last_name
string
Max100
ejemploSmith

last name of business contact. NB: Required for SOLE_PROPRIETOR entity type

display_name
string
Max255
ejemploVonage

Display or marketing name of the brand.

company_name
string
Max255
ejemploVonage

Legal company name.

ein
string
Max21
ejemplo20-1111111

(Required for Non-profit) Government assigned corporate tax ID. EIN is 9-digits in U.S.A.

ein_issuing_country
string
ejemploUS

ISO3166-Alpha2 country code.

universal_ein
string
Max50
ejemplo20-1111111

Universal EIN of Brand, Read-Only

alt_business_id_type
string
Max50
ejemploDUNS

Required if alt_business_id is provided.

Debe ser uno de:DUNSGIINLEI
alt_business_id
string
Max50
ejemplo150483782

Required if alt_business_id_type is provided.

phone
string
ejemplo15556660001

Valid phone number in E.164 international format without the + prefix.

mobile_phone
string
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

street
string
Max100
ejemplo23 Main Street

Street number and name.

city
string
Max100
ejemploHolmdel

City name

state
string
Max20
ejemploNJ

State. Must be 2 letters code for U.S.A.

postal_code
string
Max10
ejemplo07733

Postal codes. Use 5 digit zipcode for United States

country
string
ejemploUS

ISO3166-Alpha2 country code.

email
string
Max100
ejemplodevrel@vonage.com

Valid email address of brand support contact.

stock_symbol
string
Max10
ejemploVG

Stock Symbol - Required if entity_type=PUBLIC_PROFIT.

stock_exchange
string
Max10
ejemploNASDAQ

Required if entity_type=PUBLIC_PROFIT.

Debe ser uno de:NONEAMEXAMXASXB3BMEBSEFRAICEXJSEKRXLONNASDAQNSENYSEOMXSEHKSSESTOSWXSZSETSXTWSEVSE
website
string
ejemplohttps://vonage.com

Brand website URL.

vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Use the /enum endpoint to get an updated list of verticals

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
verification_email
string
Max100
ejemploverification_email@vonage.com

Valid verification email address of brand. Required if entity_type=PUBLIC_PROFIT.

verification_email_completion_date
string(date-time)
ejemplo2019-08-24 14:15:22

Completion date when verification email address has been successfully verified.

reseller
boolean

Indicates if a brand is a reseller brand.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

Campaigns created on a reseller brand will automatically have their reseller_id field set with the primary account's reseller id.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_count
integer
ejemplo5

Number of campaigns associated with the brand

carrier_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

brand_relationship
string
ejemploBASIC_ACCOUNT

Brand relationship level.

Debe ser uno de:BASIC_ACCOUNTSMALL_ACCOUNTMEDIUM_ACCOUNTLARGE_ACCOUNTKEY_ACCOUNT
partner
boolean

Flag indicating the brand is related to a partner customer (brand & campaigns registered directly on TCR and shared with Vonage)

shared
boolean

True when the brand is shared with the current Account ID.

owner
boolean

True when the brand is owned by the requesting account.

status
string

Brand status.

reference_id
string

Unique identifier for preventing duplicate brand registration into TCR.

verified_date
string(date-time)

Date-time when brand mobile phone was verified.

created_date
string
ejemplo2019-08-24 14:15:22
last_updated
string
ejemplo2019-09-24 14:15:22
_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK
campaigns
object
href
string
ejemplohttps://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns

Ejemplo Respuesta

{
   "account_id": "abcd1234",
   "primary_account_id": "abcd1234",
   "entity_type": "PUBLIC_PROFIT",
   "first_name": "John",
   "last_name": "Smith",
   "display_name": "Vonage",
   "company_name": "Vonage",
   "ein": "20-1111111",
   "ein_issuing_country": "US",
   "universal_ein": "20-1111111",
   "alt_business_id_type": "DUNS",
   "alt_business_id": "150483782",
   "phone": "15556660001",
   "mobile_phone": "123123222334",
   "street": "23 Main Street",
   "city": "Holmdel",
   "state": "NJ",
   "postal_code": "07733",
   "country": "US",
   "email": "devrel@vonage.com",
   "stock_symbol": "VG",
   "stock_exchange": "NASDAQ",
   "website": "https://vonage.com",
   "vertical": "TECHNOLOGY",
   "verification_email": "verification_email@vonage.com",
   "verification_email_completion_date": "2019-08-24 14:15:22",
   "reseller": true,
   "brand_id": "BLQKOPK",
   "campaign_count": 5,
   "carrier_suspensions": [
      [
         {}
      ]
   ],
   "brand_relationship": "BASIC_ACCOUNT",
   "partner": true,
   "shared": true,
   "owner": true,
   "status": "string",
   "reference_id": "string",
   "verified_date": "2019-08-24T14:15:22Z",
   "created_date": "2019-08-24 14:15:22",
   "last_updated": "2019-09-24 14:15:22",
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK"
      },
      "campaigns": {
         "href": "https://api.nexmo.com/10dlc/brands/BLQKOPK/campaigns"
      }
   }
}

List vetting appeal evidence files

List files that can be used for vetting appeals.

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/appeal/evidence

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Consulta Parámetros

page
integer
Min1
ejemplo2

Page of results to jump to

page_size
integer
ejemplo10

Number of results per page

filter
array

Narrow down results based on matching conditions. Follow the comprehensive guide to learn how to craft filter queries.

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Respuestas
Tipo de contenido
application/json

OK

next_page
string
Min1
Max512

page_token to access the next page.

previous_page
string
Min1
Max512

page_token to access the previous page.

last_page
string
Min1
Max512

page_token to access the last page.

first_page
string
Min1
Max512

page_token to access the first page.

_links
object
next
object

Link to the next page.

href
string
previous
object

Link to the previous page.

href
string
first
object

Link to the first page.

href
string
last
object

Link to the last page.

href
string
_embedded
object
evidences
array
id
string

ID of the evidence. To be used in the appeal process.

file_name
string

The name of the uploaded file.

mime_type
string

The mime type of the uploaded file.

Ejemplo Respuesta

{
   "next_page": "string",
   "previous_page": "string",
   "last_page": "string",
   "first_page": "string",
   "_links": {
      "next": {
         "href": "string"
      },
      "previous": {
         "href": "string"
      },
      "first": {
         "href": "string"
      },
      "last": {
         "href": "string"
      }
   },
   "_embedded": {
      "evidences": [
         {
            "id": "OWUwZTA5MmUtOGNjYS00ZGI0LWFkNWUtZTg4MmUwNzhjMDUy",
            "file_name": "evidence.txt",
            "mime_type": "text/plain"
         }
      ]
   }
}

Upload evidence for a vetting appeal

This operation allows you to import evidence files to be used to appeal an existing vetting.

Multiple files can be uploaded at once, with following limitations:

  • The size of each file cannot exceed 10MB
  • The total size of the HTTP request cannot exceed 100MB
  • Supported file types are: jpg jpeg png bmp raw tiff pdf docx htm odt rtf txt xml

We expect the filename to be populated in the Content-Disposition header and the Content-Type to be set in each subpart.

posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/appeal/evidence

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Consulta Parámetros

page
integer
Min1
ejemplo2

Page of results to jump to

page_size
integer
ejemplo10

Number of results per page

filter
array

Narrow down results based on matching conditions. Follow the comprehensive guide to learn how to craft filter queries.

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
multipart/form-data

file
string(binary)
Requerido

Ejemplo Solicitar

Respuestas
Tipo de contenido
application/json

OK

id
string

ID of the evidence. To be used in the appeal process.

file_name
string

The name of the uploaded file.

mime_type
string

The mime type of the uploaded file.

Ejemplo Respuesta

{
   "id": "string",
   "file_name": "string",
   "mime_type": "string"
}

Download appeal evidence file

This operation allows you to download an evidence file. The Content-Type header might vary and will reflect the Mime-Type of the file. The Content-Disposition header will hold the filename.

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/appeal/evidence/:evidence_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

evidence_id
string
Requerido

The ID of the evidence to download

Respuestas
Tipo de contenido
application/octet-stream

OK

Ejemplo Respuesta

La vista previa de ejemplo no es compatible actualmente con el tipo de contenido: application/octet-stream

Delete appeal evidence file

This operation allows you to delete an evidence file.

deletehttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/appeal/evidence/:evidence_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

evidence_id
string
Requerido

The ID of the evidence to download

Respuestas
Tipo de contenido
application/octet-stream

OK

Ejemplo Respuesta

La vista previa de ejemplo no es compatible actualmente con el tipo de contenido: application/octet-stream

Campaigns

This section outlines the endpoints to register and manage your 10DLC campaigns.

Guide - Requirements

Important information:

  • Unverified brands cannot register campaigns.
  • Verified brands can only register:
    • SOLE_PROPRIETOR campaigns for Sole Proprietor brands
    • CHARITY campaigns for recognized non-profit brands
    • POLITICAL campaigns for recognized non-profit brands or brands with a successful political vet
    • LOW_VOLUME_MIXED campaigns
  • A successful standard or enhanced vet is required for most other use-cases
  • For some special use-cases, a pre-approval is required (reach out to your AM or open a support ticket)
  • Only registered 10DLC Resellers (PENDING or APPROVED) can register reseller campaigns
  • Only approved 10DLC Partners can use the campaign importation endpoint

Retrieve all of the campaigns associated with a brand

List campaigns

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Consulta Parámetros

page
integer
Min1
ejemplo2

Page of results to jump to

page_size
integer
ejemplo10

Number of results per page

filter
array

Narrow down results based on matching conditions. Follow the comprehensive guide to learn how to craft filter queries.

status
string
ejemploACTIVE

You can choose one or multiple statuses i.e: ACTIVE or CANCELED. If no status is given, then no filter would be applied and any campaign would be returned.

Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT

Respuestas
Tipo de contenido
application/json

List of campaigns that are associated with a brand

page_size
integer
ejemplo10

Items per page

page
integer
Min1
ejemplo2

Page Offset

total_pages
integer
Min1
ejemplo100

Number of pages in the entire result set

total_items
integer
ejemplo100

Number of items in the entire result set

_embedded
object
campaigns
array
primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

account_id
string
ejemploabcd1234

The Vonage Account ID

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

tcr_campaign_id
string
Max50
ejemploC123ABC

TCR Campaign ID.

reseller_id
string
Max8
ejemploR123456

Alphanumeric TCR identifier of the reseller associated with this campaign.
R000000 is a special value meaning this is not a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

In POST and PATCH endpoints, this is ignored if the reseller field on the same call. It will also be ignored if the brand's reseller field is true.
If tcr_campaign_id and reseller_id are set (not an empty string) then this field cannot be changed anymore.

reseller
boolean

Indicates if a campaign is a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

In POST and PATCH endpoints, this is ignored if the brand's reseller field is true.

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
traffic_enabled
boolean

Indicates if traffic is enabled for this campaign.

Traffic first becomes enabled when the campaign's status becomes ACTIVE. It can be suspended later due to a number of reasons (campaign suspension, expiration, termination, ...).

NB This is only a requirement for traffic to be allowed but not is not the only requirement. Traffic can also be stopped due to brand suspensions, number not linked properly, ...

usecase
string
Max50
ejemploACCOUNT_NOTIFICATION

Campaign usecase. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME
sub_usecases
array

Campaign sub-usecases. Please refer to the /enum endpoint for an updated list of valid values.

Valores disponibles:
CUSTOMER_CARE,POLLING_VOTING,HIGHER_EDUCATION,PUBLIC_SERVICE_ANNOUNCEMENT,MARKETING,SECURITY_ALERT,DELIVERY_NOTIFICATION,ACCOUNT_NOTIFICATION,2FA,FRAUD_ALERT,TRIAL,CHARITY,POLITICAL,EMERGENCY,SWEEPSTAKE,CONVERSATIONAL,MIXED,CARRIER_EXEMPT,SOCIAL,LOW_VOLUME
description
string
Min40
Max4096
ejemploUser notifications

Summary description of this campaign

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign. It will always be filled with data computed from message_flow_details.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

Describes what the opt_in option was used for.

message_flow_details
object

Message flow details specifies the message_flow field as a structured object instead of a single text field.

When creating or updating a campaign:

  1. either message_flow or message_flow_details may be specified, but not both.
  2. if message_flow_details is specified, the object's fields will be used to fill a template. The resulting templated text will be used to fill the message_flow field of the campaign.

When reading a campaign message_flow_details will only be filled if it's been used to create or update the campaign.

For more information on Campaign message flows, please see this campaign requirements article.

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

subscriber_opt_in
boolean
Por defectotrue

Does campaign require subscriber to opt-in before SMS is sent to subscriber?

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

opt_in_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP

Opt in message sent to confirmation enrollment to a recurring message campaign. Also provide information on how to get HELP or undo enrollment. If consumers can text in a keyword,the response should include the Brand name.
NB: This field is mandatory if opt_in_keywords is set.

subscriber_opt_out
boolean
Por defectotrue

Does campaign support subscriber opt-out keyword(s)?

opt_out_keywords
string
Max255
Por defectoSTOP
ejemploSTOP,QUIT

Opt out keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the STOP keyword if set.

opt_out_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-out and will receive no further messages.

Opt out message of the campaign. The response to the STOP keyword may include the Brand name but should include an acknowledgement of the opt-out request and confirmation that no further messages will be sent.
NB: Required for all recurring campaigns or for SMS opt-in.

subscriber_help
boolean
Por defectotrue

Does campaign responds to help keyword(s)?

help_keywords
string
Max255
Por defectoHELP
ejemploHELP,INFO

Help keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the HELP keyword if set.

help_message
string
Min20
Max320
ejemplo<Brand Name>: For help, email support@example.com. To opt-out, reply STOP

Help message of the campaign.

The response to HELP keyword may include the Brand name and additional support contact information.

sample_one
string
Min20
Max1024
ejemploHi This is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.

Message sample. Some campaign tiers require 1 or more message samples.

sample_two
string
Min20
Max1024
ejemploHello, Your order, number XXXXXXX, has been shipped.

Message sample. Some campaign tiers require 2 or more message samples.

sample_three
string
Min20
Max1024
ejemploHere is you unique PIN number to access the application: 123456

Message sample. Some campaign tiers require 3 or more message samples.

sample_four
string
Min20
Max1024
ejemploHello Mr Doe, Your payment of 9.99$ was authorized. You can find your invoice in your customer account.

Message sample. Some campaign tiers require 4 or more message samples.

sample_five
string
Min20
Max1024
ejemploYour delivery is scheduled for tomorrow between 8am and 2pm. If you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.

Message sample. Some campaign tiers require 5.

age_gated
boolean
ejemplotrue

Subscribers will be required to provide their age to opt-in if set to true. NB: Sex, Hate, Alcohol, Firearms, and Tobacco related (S.H.A.F.T) messages are prohibited.

direct_lending
boolean
ejemplotrue

Set to true if messages are related to money lending or loan arrangements.

embedded_link
boolean

Set to true if the campaign message includes links. NB: Shortened URLs are forbidden.

embedded_phone
boolean

Does message generated by the campaign include phone number in SMS?

partner
boolean
ejemplotrue

Indicates the brand or campaign belong to a partner campaign.

auto_renewal
boolean

Campaign subscription auto-renewal option.

Defines the behaviour at the end of the billing cycle:

  • if true, the campaign will automatically renewed
  • if false, the campaign will expire and its status will become CANCELED
hipaa
boolean

Indicates if HIPAA is enabled for this campaign.

This is kept nullable to avoid breaking changes, but it is best to set it when creating the campaign. Otherwise, this will be set when attempting to link the first number of the campaign, whether the attempt is successful or not. After that, it will not be possible to update that field anymore.

tcr_status
string

Campaign TCR status.

Debe ser uno de:UNKNOWNACTIVECANCELED
vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Please refer to the vertical property of the /enum endpoint for an updated list of valid values.

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
number_pool
boolean
Por defectotrue

Set to true if campaign uses a pool of numbers.

registration_date
string(date-time)

Date-time when campaign was registered with TCR.

renewal_date
string(date)

Date when the campaign will be renewed and billed, if auto_renewal is true.

created_date
string(date-time)

Date when this record was created.

last_updated
string(date-time)

Date-time when this record was last updated.

billed_date
string(date-time)

Date-time when this campaign was billed.

opt_out_assist
boolean

Specifies whether opt out assist is enabled for this account.
On a campaign, indicates whether it's enabled on the primary account of the campaign's brand.

last_status_changes
array

Lists the last changes of the status field.

Note: this is only an extract. Not all changes are listed here.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
explanation
string

Describes why the status changed how it did.

change_date
string(date-time)

Date-time when the status changed.

mno_metadata
array
network_id
string
ejemplo10017

Network ID of the MNO.

mno
string
ejemploAT&T

Name of the MNO.

status
string

MNO campaign operation status. Please refer to the campaign_op_status property of the /enum endpoint response for an updated list of valid values.

mno_support
boolean

If 'false', then the desired usecase cannot be supported by the MNO.

mno_review
boolean

If 'true', then the submitted campaign is subject to the MNO (manual) review process.

qualify
boolean

If 'false', then the brand does not qualify for the desired usecase on the MNO.

min_msg_samples
integer
ejemplo2

The minimum number of message samples required by MNO for submission of the desired usecase.

req_subscriber_opt_in
boolean

If 'true' then MNO requires the subscriber to opt-into the campaign before the message may be sent to the subscriber. The opt-in mechanism can be mobile or web opt-in.

req_subscriber_opt_out
boolean

If 'true' then MNO requires a campaign to support an opt-out mechanism through MO stop keywords such as 'STOP', 'QUIT'. Upon receive the STOP message from a subscriber, the campaign must stop sending messages to the subscriber immediately.

req_subscriber_help
boolean

If 'true' then MNO requires a campaign to support a 'help' mechanism through MO help key words such as 'HELP', 'INFO'.

no_embedded_link
boolean

If 'true' then MNO forbids call-to-action link/URL to be embedded in all messages sent to the subscriber.

no_embedded_phone
boolean

If 'true' then MNO forbids call-to-action phone number to be embedded in all messages sent to the subscriber.

att_msg_class
string
ejemploQ

(Only for AT&T). Message class assigned to the campaign by MNO. Please refer to the AT&T 10DLC guide for a complete list of available message class and definition.

att_tpm
integer
ejemplo3000

(Only for AT&T). SMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_mms_tpm
integer
ejemplo3000

(Only for AT&T). MMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_number_based
boolean

(Only for AT&T). Whether is the MNO applying the TPM per number or per campaign.

tmo_brand_tier
string
ejemploLOW

(Only for T-Mobile). Daily message volume is restricted based on brand tier or brand qualification. The daily volume restriction applies to brand across campaigns and CSPs. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:LOWLOWER_MIDUPPER_MIDTOPUNCAPPED
tmo_tpd
integer

(Only for TMobile). Message TPD (throughput per day) qualified by the brand for the desired usecase.

complaints
array
complaints
array
description
string
Max65535

Description of this MNO complaint.

dca
string
ejemploSINCH

dca name

created_at
string(date-time)

Date-time when this record was created.

carrier_brand_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK
numbers
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers
_links
object
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=2
next
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=1
previous
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=1
first
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=1
last
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=10

Ejemplo Respuesta

{
   "page_size": 10,
   "page": 2,
   "total_pages": 100,
   "total_items": 100,
   "_embedded": {
      "campaigns": [
         {
            "primary_account_id": "abcd1234",
            "account_id": "abcd1234",
            "brand_id": "BLQKOPK",
            "campaign_id": "VC987XYZ",
            "tcr_campaign_id": "C123ABC",
            "reseller_id": "R123456",
            "reseller": true,
            "label": "This is a sample campaign",
            "status": "ACTIVE",
            "traffic_enabled": true,
            "usecase": "ACCOUNT_NOTIFICATION",
            "sub_usecases": [
               "2FA",
               "SECURITY_ALERT"
            ],
            "description": "User notifications",
            "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n",
            "message_flow_details": {
               "brand_name": "My brand",
               "consent_mechanisms": [
                  {
                     "method": "TEXT_TO_JOIN",
                     "details": "A text will be sent to the customer. He can reply yes to consent and opt in."
                  },
                  {
                     "method": "ONLINE_FORM",
                     "details": "An online form allows the customer to subscribe.",
                     "attachment": "https://mybrand.com/optin"
                  }
               ],
               "pricing_disclosure": true,
               "frequency": "RECURRING",
               "privacy_policy": "https://mybrand.com/privacy_policy",
               "terms_and_conditions": "https://mybrand.com/terms_and_conditions"
            },
            "subscriber_opt_in": false,
            "opt_in_keywords": "START,SUBSCRIBE",
            "opt_in_message": "<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP\n",
            "subscriber_opt_out": false,
            "opt_out_keywords": "STOP,QUIT",
            "opt_out_message": "<Brand Name>: You are now opted-out and will receive no further messages.\n",
            "subscriber_help": false,
            "help_keywords": "HELP,INFO",
            "help_message": "<Brand Name>: For help, email support@example.com. To opt-out, reply STOP\n",
            "sample_one": "Hi\nThis is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.\n",
            "sample_two": "Hello,\nYour order, number XXXXXXX, has been shipped.\n",
            "sample_three": "Here is you unique PIN number to access the application: 123456\n",
            "sample_four": "Hello Mr Doe,\nYour payment of 9.99$ was authorized. You can find your invoice in your customer account.\n",
            "sample_five": "Your delivery is scheduled for tomorrow between 8am and 2pm.\nIf you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.\n",
            "age_gated": true,
            "direct_lending": true,
            "embedded_link": false,
            "embedded_phone": false,
            "partner": true,
            "auto_renewal": true,
            "hipaa": true,
            "tcr_status": "UNKNOWN",
            "vertical": "TECHNOLOGY",
            "number_pool": false,
            "registration_date": "2019-08-24T14:15:22Z",
            "renewal_date": "2019-08-24",
            "created_date": "2019-08-24T14:15:22Z",
            "last_updated": "2019-08-24T14:15:22Z",
            "billed_date": "2019-08-24T14:15:22Z",
            "opt_out_assist": false,
            "last_status_changes": [
               {
                  "status": "APPROVED",
                  "reason": "Approved after internal review.",
                  "change_date": "2022-01-01 01:01:01"
               }
            ],
            "mno_metadata": [
               {
                  "network_id": "10017",
                  "mno": "AT&T",
                  "status": "string",
                  "mno_support": true,
                  "mno_review": true,
                  "qualify": true,
                  "min_msg_samples": 2,
                  "req_subscriber_opt_in": true,
                  "req_subscriber_opt_out": true,
                  "req_subscriber_help": true,
                  "no_embedded_link": true,
                  "no_embedded_phone": true,
                  "att_msg_class": "Q",
                  "att_tpm": 3000,
                  "att_mms_tpm": 3000,
                  "att_number_based": true,
                  "tmo_brand_tier": "LOW",
                  "tmo_tpd": 0,
                  "complaints": [
                     {
                        "complaints": [
                           {
                              "description": "string",
                              "dca": "SINCH",
                              "created_at": "2019-08-24T14:15:22Z"
                           }
                        ]
                     }
                  ]
               }
            ],
            "carrier_brand_suspensions": [
               [
                  {}
               ]
            ],
            "_links": {
               "self": {
                  "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879"
               },
               "brand": {
                  "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
               },
               "numbers": {
                  "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers"
               }
            }
         }
      ]
   },
   "_links": {
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      },
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=2"
      },
      "next": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=1"
      },
      "previous": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=1"
      },
      "first": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=1"
      },
      "last": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/?page=10"
      }
   }
}

Add a new campaign to a brand

Create Campaign

Message samples

The number of required message samples on the maximum of these 3 values:

  1. The number of min_msg_samples for the usecase, as returned by the /enum endpoint.
  2. The number of entries in the sub_usecases field.
  3. The maximum of min_msg_samples asked by MNOs on the brand qualification endpoint.

Notes:

  1. opt_in_message is mandatory if opt_in_keywords is set.
  2. Either message_flow or message_flow_details is required, but only one of them may be specified.
posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

Cuerpo de la solicitud
Tipo de contenido
application/json

account_id
string
Requerido
ejemploabcd1234

The Vonage Account ID

vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Please refer to the vertical property of the /enum endpoint for an updated list of valid values.

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
usecase
string
Requerido
Max50
ejemploACCOUNT_NOTIFICATION

Campaign usecase. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME
sub_usecases
array
Valores disponibles:
CUSTOMER_CARE,POLLING_VOTING,HIGHER_EDUCATION,PUBLIC_SERVICE_ANNOUNCEMENT,MARKETING,SECURITY_ALERT,DELIVERY_NOTIFICATION,ACCOUNT_NOTIFICATION,2FA,FRAUD_ALERT,TRIAL,CHARITY,POLITICAL,EMERGENCY,SWEEPSTAKE,CONVERSATIONAL,MIXED,CARRIER_EXEMPT,SOCIAL,LOW_VOLUME
reseller_id
string
Max8
ejemploR123456

Alphanumeric TCR identifier of the reseller associated with this campaign.
R000000 is a special value meaning this is not a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

In POST and PATCH endpoints, this is ignored if the reseller field on the same call. It will also be ignored if the brand's reseller field is true.
If tcr_campaign_id and reseller_id are set (not an empty string) then this field cannot be changed anymore.

reseller
boolean

Indicates if a campaign is a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

In POST and PATCH endpoints, this is ignored if the brand's reseller field is true.

description
string
Requerido
Min40
Max4096
ejemploUser notifications

Summary description of this campaign

age_gated
boolean
ejemplotrue

Subscribers will be required to provide their age to opt-in if set to true. NB: Sex, Hate, Alcohol, Firearms, and Tobacco related (S.H.A.F.T) messages are prohibited.

direct_lending
boolean
ejemplotrue

Set to true if messages are related to money lending or loan arrangements.

sample_one
string
Min20
Max1024
ejemploHi This is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.

Message sample. Some campaign tiers require 1 or more message samples.

sample_two
string
Min20
Max1024
ejemploHello, Your order, number XXXXXXX, has been shipped.

Message sample. Some campaign tiers require 2 or more message samples.

sample_three
string
Min20
Max1024
ejemploHere is you unique PIN number to access the application: 123456

Message sample. Some campaign tiers require 3 or more message samples.

sample_four
string
Min20
Max1024
ejemploHello Mr Doe, Your payment of 9.99$ was authorized. You can find your invoice in your customer account.

Message sample. Some campaign tiers require 4 or more message samples.

sample_five
string
Min20
Max1024
ejemploYour delivery is scheduled for tomorrow between 8am and 2pm. If you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.

Message sample. Some campaign tiers require 5.

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

When creating or updating a campaign, either message_flow or message_flow_details may be specified, but not both. When reading a campaign, message_flow will always be filled with data computed from message_flow_details.

Describes what the opt_in option was used for. NBThis attribute will be deprecated on POST and PATCH endpoint. Please update your application to use the message_flow_details property instead.

message_flow_details
object

Message flow details specifies the message_flow field as a structured object instead of a single text field.

When creating or updating a campaign:

  1. either message_flow or message_flow_details may be specified, but not both.
  2. if message_flow_details is specified, the object's fields will be used to fill a template. The resulting templated text will be used to fill the message_flow field of the campaign.

When reading a campaign message_flow_details will only be filled if it's been used to create or update the campaign.

For more information on Campaign message flows, please see this campaign requirements article.

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

help_message
string
Requerido
Min20
Max320
ejemplo<Brand Name>: For help, email support@example.com. To opt-out, reply STOP

Help message of the campaign.

The response to HELP keyword may include the Brand name and additional support contact information.

opt_in_message
string
Requerido
Min20
Max320
ejemplo<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP

Opt in message sent to confirmation enrollment to a recurring message campaign. Also provide information on how to get HELP or undo enrollment. If consumers can text in a keyword,the response should include the Brand name.
NB: This field is mandatory if opt_in_keywords is set.

opt_out_message
string
Requerido
Min20
Max320
ejemplo<Brand Name>: You are now opted-out and will receive no further messages.

Opt out message of the campaign. The response to the STOP keyword may include the Brand name but should include an acknowledgement of the opt-out request and confirmation that no further messages will be sent.
NB: Required for all recurring campaigns or for SMS opt-in.

help_keywords
string
Max255
Por defectoHELP
ejemploHELP,INFO

Help keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the HELP keyword if set.

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

opt_out_keywords
string
Max255
Por defectoSTOP
ejemploSTOP,QUIT

Opt out keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the STOP keyword if set.

tc_agreed
boolean
Requerido
ejemplotrue

Set to true to accept 10DLC's terms and conditions. T&Cs are determined by The Campaign Registry (TCR). You may retrieve the latest version of those terms and conditions using the campaign T&C endpoint.

embedded_link
boolean

Set to true if the campaign message includes links. NB: Shortened URLs are forbidden.

embedded_phone
boolean

Does message generated by the campaign include phone number in SMS?

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

hipaa
boolean

Indicates if HIPAA is enabled for this campaign.

This is kept nullable to avoid breaking changes, but it is best to set it when creating the campaign. Otherwise, this will be set when attempting to link the first number of the campaign, whether the attempt is successful or not. After that, it will not be possible to update that field anymore.

Ejemplo Solicitar

{
   "account_id": "abcd1234",
   "vertical": "TECHNOLOGY",
   "usecase": "ACCOUNT_NOTIFICATION",
   "sub_usecases": [
      "ACCOUNT_NOTIFICATION"
   ],
   "reseller_id": "R123456",
   "reseller": true,
   "description": "User notifications",
   "age_gated": true,
   "direct_lending": true,
   "sample_one": "Hi\nThis is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.\n",
   "sample_two": "Hello,\nYour order, number XXXXXXX, has been shipped.\n",
   "sample_three": "Here is you unique PIN number to access the application: 123456\n",
   "sample_four": "Hello Mr Doe,\nYour payment of 9.99$ was authorized. You can find your invoice in your customer account.\n",
   "sample_five": "Your delivery is scheduled for tomorrow between 8am and 2pm.\nIf you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.\n",
   "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n",
   "message_flow_details": {
      "brand_name": "My brand",
      "consent_mechanisms": [
         {
            "method": "TEXT_TO_JOIN",
            "details": "A text will be sent to the customer. He can reply yes to consent and opt in."
         },
         {
            "method": "ONLINE_FORM",
            "details": "An online form allows the customer to subscribe.",
            "attachment": "https://mybrand.com/optin"
         }
      ],
      "pricing_disclosure": true,
      "frequency": "RECURRING",
      "privacy_policy": "https://mybrand.com/privacy_policy",
      "terms_and_conditions": "https://mybrand.com/terms_and_conditions"
   },
   "help_message": "<Brand Name>: For help, email support@example.com. To opt-out, reply STOP\n",
   "opt_in_message": "<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP\n",
   "opt_out_message": "<Brand Name>: You are now opted-out and will receive no further messages.\n",
   "help_keywords": "HELP,INFO",
   "opt_in_keywords": "START,SUBSCRIBE",
   "opt_out_keywords": "STOP,QUIT",
   "tc_agreed": true,
   "embedded_link": false,
   "embedded_phone": false,
   "label": "This is a sample campaign",
   "hipaa": true
}

Respuestas
Tipo de contenido
application/json

Return a single campaign

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

account_id
string
ejemploabcd1234

The Vonage Account ID

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

tcr_campaign_id
string
Max50
ejemploC123ABC

TCR Campaign ID.

reseller_id
string
Max8
ejemploR123456

Alphanumeric TCR identifier of the reseller associated with this campaign.
R000000 is a special value meaning this is not a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

In POST and PATCH endpoints, this is ignored if the reseller field on the same call. It will also be ignored if the brand's reseller field is true.
If tcr_campaign_id and reseller_id are set (not an empty string) then this field cannot be changed anymore.

reseller
boolean

Indicates if a campaign is a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

In POST and PATCH endpoints, this is ignored if the brand's reseller field is true.

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
traffic_enabled
boolean

Indicates if traffic is enabled for this campaign.

Traffic first becomes enabled when the campaign's status becomes ACTIVE. It can be suspended later due to a number of reasons (campaign suspension, expiration, termination, ...).

NB This is only a requirement for traffic to be allowed but not is not the only requirement. Traffic can also be stopped due to brand suspensions, number not linked properly, ...

usecase
string
Max50
ejemploACCOUNT_NOTIFICATION

Campaign usecase. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME
sub_usecases
array

Campaign sub-usecases. Please refer to the /enum endpoint for an updated list of valid values.

Valores disponibles:
CUSTOMER_CARE,POLLING_VOTING,HIGHER_EDUCATION,PUBLIC_SERVICE_ANNOUNCEMENT,MARKETING,SECURITY_ALERT,DELIVERY_NOTIFICATION,ACCOUNT_NOTIFICATION,2FA,FRAUD_ALERT,TRIAL,CHARITY,POLITICAL,EMERGENCY,SWEEPSTAKE,CONVERSATIONAL,MIXED,CARRIER_EXEMPT,SOCIAL,LOW_VOLUME
description
string
Min40
Max4096
ejemploUser notifications

Summary description of this campaign

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign. It will always be filled with data computed from message_flow_details.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

Describes what the opt_in option was used for.

message_flow_details
object

Message flow details specifies the message_flow field as a structured object instead of a single text field.

When creating or updating a campaign:

  1. either message_flow or message_flow_details may be specified, but not both.
  2. if message_flow_details is specified, the object's fields will be used to fill a template. The resulting templated text will be used to fill the message_flow field of the campaign.

When reading a campaign message_flow_details will only be filled if it's been used to create or update the campaign.

For more information on Campaign message flows, please see this campaign requirements article.

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

subscriber_opt_in
boolean
Por defectotrue

Does campaign require subscriber to opt-in before SMS is sent to subscriber?

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

opt_in_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP

Opt in message sent to confirmation enrollment to a recurring message campaign. Also provide information on how to get HELP or undo enrollment. If consumers can text in a keyword,the response should include the Brand name.
NB: This field is mandatory if opt_in_keywords is set.

subscriber_opt_out
boolean
Por defectotrue

Does campaign support subscriber opt-out keyword(s)?

opt_out_keywords
string
Max255
Por defectoSTOP
ejemploSTOP,QUIT

Opt out keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the STOP keyword if set.

opt_out_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-out and will receive no further messages.

Opt out message of the campaign. The response to the STOP keyword may include the Brand name but should include an acknowledgement of the opt-out request and confirmation that no further messages will be sent.
NB: Required for all recurring campaigns or for SMS opt-in.

subscriber_help
boolean
Por defectotrue

Does campaign responds to help keyword(s)?

help_keywords
string
Max255
Por defectoHELP
ejemploHELP,INFO

Help keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the HELP keyword if set.

help_message
string
Min20
Max320
ejemplo<Brand Name>: For help, email support@example.com. To opt-out, reply STOP

Help message of the campaign.

The response to HELP keyword may include the Brand name and additional support contact information.

sample_one
string
Min20
Max1024
ejemploHi This is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.

Message sample. Some campaign tiers require 1 or more message samples.

sample_two
string
Min20
Max1024
ejemploHello, Your order, number XXXXXXX, has been shipped.

Message sample. Some campaign tiers require 2 or more message samples.

sample_three
string
Min20
Max1024
ejemploHere is you unique PIN number to access the application: 123456

Message sample. Some campaign tiers require 3 or more message samples.

sample_four
string
Min20
Max1024
ejemploHello Mr Doe, Your payment of 9.99$ was authorized. You can find your invoice in your customer account.

Message sample. Some campaign tiers require 4 or more message samples.

sample_five
string
Min20
Max1024
ejemploYour delivery is scheduled for tomorrow between 8am and 2pm. If you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.

Message sample. Some campaign tiers require 5.

age_gated
boolean
ejemplotrue

Subscribers will be required to provide their age to opt-in if set to true. NB: Sex, Hate, Alcohol, Firearms, and Tobacco related (S.H.A.F.T) messages are prohibited.

direct_lending
boolean
ejemplotrue

Set to true if messages are related to money lending or loan arrangements.

embedded_link
boolean

Set to true if the campaign message includes links. NB: Shortened URLs are forbidden.

embedded_phone
boolean

Does message generated by the campaign include phone number in SMS?

partner
boolean
ejemplotrue

Indicates the brand or campaign belong to a partner campaign.

auto_renewal
boolean

Campaign subscription auto-renewal option.

Defines the behaviour at the end of the billing cycle:

  • if true, the campaign will automatically renewed
  • if false, the campaign will expire and its status will become CANCELED
hipaa
boolean

Indicates if HIPAA is enabled for this campaign.

This is kept nullable to avoid breaking changes, but it is best to set it when creating the campaign. Otherwise, this will be set when attempting to link the first number of the campaign, whether the attempt is successful or not. After that, it will not be possible to update that field anymore.

tcr_status
string

Campaign TCR status.

Debe ser uno de:UNKNOWNACTIVECANCELED
vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Please refer to the vertical property of the /enum endpoint for an updated list of valid values.

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
number_pool
boolean
Por defectotrue

Set to true if campaign uses a pool of numbers.

registration_date
string(date-time)

Date-time when campaign was registered with TCR.

renewal_date
string(date)

Date when the campaign will be renewed and billed, if auto_renewal is true.

created_date
string(date-time)

Date when this record was created.

last_updated
string(date-time)

Date-time when this record was last updated.

billed_date
string(date-time)

Date-time when this campaign was billed.

opt_out_assist
boolean

Specifies whether opt out assist is enabled for this account.
On a campaign, indicates whether it's enabled on the primary account of the campaign's brand.

last_status_changes
array

Lists the last changes of the status field.

Note: this is only an extract. Not all changes are listed here.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
explanation
string

Describes why the status changed how it did.

change_date
string(date-time)

Date-time when the status changed.

mno_metadata
array
network_id
string
ejemplo10017

Network ID of the MNO.

mno
string
ejemploAT&T

Name of the MNO.

status
string

MNO campaign operation status. Please refer to the campaign_op_status property of the /enum endpoint response for an updated list of valid values.

mno_support
boolean

If 'false', then the desired usecase cannot be supported by the MNO.

mno_review
boolean

If 'true', then the submitted campaign is subject to the MNO (manual) review process.

qualify
boolean

If 'false', then the brand does not qualify for the desired usecase on the MNO.

min_msg_samples
integer
ejemplo2

The minimum number of message samples required by MNO for submission of the desired usecase.

req_subscriber_opt_in
boolean

If 'true' then MNO requires the subscriber to opt-into the campaign before the message may be sent to the subscriber. The opt-in mechanism can be mobile or web opt-in.

req_subscriber_opt_out
boolean

If 'true' then MNO requires a campaign to support an opt-out mechanism through MO stop keywords such as 'STOP', 'QUIT'. Upon receive the STOP message from a subscriber, the campaign must stop sending messages to the subscriber immediately.

req_subscriber_help
boolean

If 'true' then MNO requires a campaign to support a 'help' mechanism through MO help key words such as 'HELP', 'INFO'.

no_embedded_link
boolean

If 'true' then MNO forbids call-to-action link/URL to be embedded in all messages sent to the subscriber.

no_embedded_phone
boolean

If 'true' then MNO forbids call-to-action phone number to be embedded in all messages sent to the subscriber.

att_msg_class
string
ejemploQ

(Only for AT&T). Message class assigned to the campaign by MNO. Please refer to the AT&T 10DLC guide for a complete list of available message class and definition.

att_tpm
integer
ejemplo3000

(Only for AT&T). SMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_mms_tpm
integer
ejemplo3000

(Only for AT&T). MMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_number_based
boolean

(Only for AT&T). Whether is the MNO applying the TPM per number or per campaign.

tmo_brand_tier
string
ejemploLOW

(Only for T-Mobile). Daily message volume is restricted based on brand tier or brand qualification. The daily volume restriction applies to brand across campaigns and CSPs. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:LOWLOWER_MIDUPPER_MIDTOPUNCAPPED
tmo_tpd
integer

(Only for TMobile). Message TPD (throughput per day) qualified by the brand for the desired usecase.

complaints
array
complaints
array
description
string
Max65535

Description of this MNO complaint.

dca
string
ejemploSINCH

dca name

created_at
string(date-time)

Date-time when this record was created.

carrier_brand_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK
numbers
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers

Ejemplo Respuesta

{
   "primary_account_id": "abcd1234",
   "account_id": "abcd1234",
   "brand_id": "BLQKOPK",
   "campaign_id": "VC987XYZ",
   "tcr_campaign_id": "C123ABC",
   "reseller_id": "R123456",
   "reseller": true,
   "label": "This is a sample campaign",
   "status": "ACTIVE",
   "traffic_enabled": true,
   "usecase": "ACCOUNT_NOTIFICATION",
   "sub_usecases": [
      "2FA",
      "SECURITY_ALERT"
   ],
   "description": "User notifications",
   "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n",
   "message_flow_details": {
      "brand_name": "My brand",
      "consent_mechanisms": [
         {
            "method": "TEXT_TO_JOIN",
            "details": "A text will be sent to the customer. He can reply yes to consent and opt in."
         },
         {
            "method": "ONLINE_FORM",
            "details": "An online form allows the customer to subscribe.",
            "attachment": "https://mybrand.com/optin"
         }
      ],
      "pricing_disclosure": true,
      "frequency": "RECURRING",
      "privacy_policy": "https://mybrand.com/privacy_policy",
      "terms_and_conditions": "https://mybrand.com/terms_and_conditions"
   },
   "subscriber_opt_in": false,
   "opt_in_keywords": "START,SUBSCRIBE",
   "opt_in_message": "<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP\n",
   "subscriber_opt_out": false,
   "opt_out_keywords": "STOP,QUIT",
   "opt_out_message": "<Brand Name>: You are now opted-out and will receive no further messages.\n",
   "subscriber_help": false,
   "help_keywords": "HELP,INFO",
   "help_message": "<Brand Name>: For help, email support@example.com. To opt-out, reply STOP\n",
   "sample_one": "Hi\nThis is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.\n",
   "sample_two": "Hello,\nYour order, number XXXXXXX, has been shipped.\n",
   "sample_three": "Here is you unique PIN number to access the application: 123456\n",
   "sample_four": "Hello Mr Doe,\nYour payment of 9.99$ was authorized. You can find your invoice in your customer account.\n",
   "sample_five": "Your delivery is scheduled for tomorrow between 8am and 2pm.\nIf you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.\n",
   "age_gated": true,
   "direct_lending": true,
   "embedded_link": false,
   "embedded_phone": false,
   "partner": true,
   "auto_renewal": true,
   "hipaa": true,
   "tcr_status": "UNKNOWN",
   "vertical": "TECHNOLOGY",
   "number_pool": false,
   "registration_date": "2019-08-24T14:15:22Z",
   "renewal_date": "2019-08-24",
   "created_date": "2019-08-24T14:15:22Z",
   "last_updated": "2019-08-24T14:15:22Z",
   "billed_date": "2019-08-24T14:15:22Z",
   "opt_out_assist": false,
   "last_status_changes": [
      {
         "status": "APPROVED",
         "reason": "Approved after internal review.",
         "change_date": "2022-01-01 01:01:01"
      }
   ],
   "mno_metadata": [
      {
         "network_id": "10017",
         "mno": "AT&T",
         "status": "string",
         "mno_support": true,
         "mno_review": true,
         "qualify": true,
         "min_msg_samples": 2,
         "req_subscriber_opt_in": true,
         "req_subscriber_opt_out": true,
         "req_subscriber_help": true,
         "no_embedded_link": true,
         "no_embedded_phone": true,
         "att_msg_class": "Q",
         "att_tpm": 3000,
         "att_mms_tpm": 3000,
         "att_number_based": true,
         "tmo_brand_tier": "LOW",
         "tmo_tpd": 0,
         "complaints": [
            {
               "complaints": [
                  {
                     "description": "string",
                     "dca": "SINCH",
                     "created_at": "2019-08-24T14:15:22Z"
                  }
               ]
            }
         ]
      }
   ],
   "carrier_brand_suspensions": [
      [
         {}
      ]
   ],
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      },
      "numbers": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers"
      }
   }
}

Preview message flow

Creates a message flow text, based on the structured object given.

The result is the same text that would be computed from field message_flow_details to fill message_flow when creating a campaign.

Note: if the resulting message_flow length is not in the allowed range (40 to 4096), the endpoint will return a 422 error.

posthttps://api-eu.vonage.com/v1/10dlc/campaigns/message_flow

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Cuerpo de la solicitud
Tipo de contenido
application/json

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

Ejemplo Solicitar

{
   "brand_name": "string",
   "consent_mechanisms": [
      {
         "method": "ONLINE_FORM",
         "details": "string",
         "attachment": "http://example.com"
      }
   ],
   "pricing_disclosure": true,
   "carrier_disclaimer": true,
   "frequency": "ONE_TIME",
   "privacy_policy": "http://example.com",
   "terms_and_conditions": "http://example.com",
   "opt_in_keywords": "START,SUBSCRIBE"
}

Respuestas
Tipo de contenido
application/json

An object holding the computed message flow.

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign. It will always be filled with data computed from message_flow_details.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

Describes what the opt_in option was used for.

Ejemplo Respuesta

{
   "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n"
}

Retrieve a specific campaign

Get a campaign

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Respuestas
Tipo de contenido
application/json

Return a single campaign

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

account_id
string
ejemploabcd1234

The Vonage Account ID

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

tcr_campaign_id
string
Max50
ejemploC123ABC

TCR Campaign ID.

reseller_id
string
Max8
ejemploR123456

Alphanumeric TCR identifier of the reseller associated with this campaign.
R000000 is a special value meaning this is not a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

In POST and PATCH endpoints, this is ignored if the reseller field on the same call. It will also be ignored if the brand's reseller field is true.
If tcr_campaign_id and reseller_id are set (not an empty string) then this field cannot be changed anymore.

reseller
boolean

Indicates if a campaign is a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

In POST and PATCH endpoints, this is ignored if the brand's reseller field is true.

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
traffic_enabled
boolean

Indicates if traffic is enabled for this campaign.

Traffic first becomes enabled when the campaign's status becomes ACTIVE. It can be suspended later due to a number of reasons (campaign suspension, expiration, termination, ...).

NB This is only a requirement for traffic to be allowed but not is not the only requirement. Traffic can also be stopped due to brand suspensions, number not linked properly, ...

usecase
string
Max50
ejemploACCOUNT_NOTIFICATION

Campaign usecase. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME
sub_usecases
array

Campaign sub-usecases. Please refer to the /enum endpoint for an updated list of valid values.

Valores disponibles:
CUSTOMER_CARE,POLLING_VOTING,HIGHER_EDUCATION,PUBLIC_SERVICE_ANNOUNCEMENT,MARKETING,SECURITY_ALERT,DELIVERY_NOTIFICATION,ACCOUNT_NOTIFICATION,2FA,FRAUD_ALERT,TRIAL,CHARITY,POLITICAL,EMERGENCY,SWEEPSTAKE,CONVERSATIONAL,MIXED,CARRIER_EXEMPT,SOCIAL,LOW_VOLUME
description
string
Min40
Max4096
ejemploUser notifications

Summary description of this campaign

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign. It will always be filled with data computed from message_flow_details.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

Describes what the opt_in option was used for.

message_flow_details
object

Message flow details specifies the message_flow field as a structured object instead of a single text field.

When creating or updating a campaign:

  1. either message_flow or message_flow_details may be specified, but not both.
  2. if message_flow_details is specified, the object's fields will be used to fill a template. The resulting templated text will be used to fill the message_flow field of the campaign.

When reading a campaign message_flow_details will only be filled if it's been used to create or update the campaign.

For more information on Campaign message flows, please see this campaign requirements article.

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

subscriber_opt_in
boolean
Por defectotrue

Does campaign require subscriber to opt-in before SMS is sent to subscriber?

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

opt_in_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP

Opt in message sent to confirmation enrollment to a recurring message campaign. Also provide information on how to get HELP or undo enrollment. If consumers can text in a keyword,the response should include the Brand name.
NB: This field is mandatory if opt_in_keywords is set.

subscriber_opt_out
boolean
Por defectotrue

Does campaign support subscriber opt-out keyword(s)?

opt_out_keywords
string
Max255
Por defectoSTOP
ejemploSTOP,QUIT

Opt out keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the STOP keyword if set.

opt_out_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-out and will receive no further messages.

Opt out message of the campaign. The response to the STOP keyword may include the Brand name but should include an acknowledgement of the opt-out request and confirmation that no further messages will be sent.
NB: Required for all recurring campaigns or for SMS opt-in.

subscriber_help
boolean
Por defectotrue

Does campaign responds to help keyword(s)?

help_keywords
string
Max255
Por defectoHELP
ejemploHELP,INFO

Help keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the HELP keyword if set.

help_message
string
Min20
Max320
ejemplo<Brand Name>: For help, email support@example.com. To opt-out, reply STOP

Help message of the campaign.

The response to HELP keyword may include the Brand name and additional support contact information.

sample_one
string
Min20
Max1024
ejemploHi This is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.

Message sample. Some campaign tiers require 1 or more message samples.

sample_two
string
Min20
Max1024
ejemploHello, Your order, number XXXXXXX, has been shipped.

Message sample. Some campaign tiers require 2 or more message samples.

sample_three
string
Min20
Max1024
ejemploHere is you unique PIN number to access the application: 123456

Message sample. Some campaign tiers require 3 or more message samples.

sample_four
string
Min20
Max1024
ejemploHello Mr Doe, Your payment of 9.99$ was authorized. You can find your invoice in your customer account.

Message sample. Some campaign tiers require 4 or more message samples.

sample_five
string
Min20
Max1024
ejemploYour delivery is scheduled for tomorrow between 8am and 2pm. If you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.

Message sample. Some campaign tiers require 5.

age_gated
boolean
ejemplotrue

Subscribers will be required to provide their age to opt-in if set to true. NB: Sex, Hate, Alcohol, Firearms, and Tobacco related (S.H.A.F.T) messages are prohibited.

direct_lending
boolean
ejemplotrue

Set to true if messages are related to money lending or loan arrangements.

embedded_link
boolean

Set to true if the campaign message includes links. NB: Shortened URLs are forbidden.

embedded_phone
boolean

Does message generated by the campaign include phone number in SMS?

partner
boolean
ejemplotrue

Indicates the brand or campaign belong to a partner campaign.

auto_renewal
boolean

Campaign subscription auto-renewal option.

Defines the behaviour at the end of the billing cycle:

  • if true, the campaign will automatically renewed
  • if false, the campaign will expire and its status will become CANCELED
hipaa
boolean

Indicates if HIPAA is enabled for this campaign.

This is kept nullable to avoid breaking changes, but it is best to set it when creating the campaign. Otherwise, this will be set when attempting to link the first number of the campaign, whether the attempt is successful or not. After that, it will not be possible to update that field anymore.

tcr_status
string

Campaign TCR status.

Debe ser uno de:UNKNOWNACTIVECANCELED
vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Please refer to the vertical property of the /enum endpoint for an updated list of valid values.

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
number_pool
boolean
Por defectotrue

Set to true if campaign uses a pool of numbers.

registration_date
string(date-time)

Date-time when campaign was registered with TCR.

renewal_date
string(date)

Date when the campaign will be renewed and billed, if auto_renewal is true.

created_date
string(date-time)

Date when this record was created.

last_updated
string(date-time)

Date-time when this record was last updated.

billed_date
string(date-time)

Date-time when this campaign was billed.

opt_out_assist
boolean

Specifies whether opt out assist is enabled for this account.
On a campaign, indicates whether it's enabled on the primary account of the campaign's brand.

last_status_changes
array

Lists the last changes of the status field.

Note: this is only an extract. Not all changes are listed here.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
explanation
string

Describes why the status changed how it did.

change_date
string(date-time)

Date-time when the status changed.

mno_metadata
array
network_id
string
ejemplo10017

Network ID of the MNO.

mno
string
ejemploAT&T

Name of the MNO.

status
string

MNO campaign operation status. Please refer to the campaign_op_status property of the /enum endpoint response for an updated list of valid values.

mno_support
boolean

If 'false', then the desired usecase cannot be supported by the MNO.

mno_review
boolean

If 'true', then the submitted campaign is subject to the MNO (manual) review process.

qualify
boolean

If 'false', then the brand does not qualify for the desired usecase on the MNO.

min_msg_samples
integer
ejemplo2

The minimum number of message samples required by MNO for submission of the desired usecase.

req_subscriber_opt_in
boolean

If 'true' then MNO requires the subscriber to opt-into the campaign before the message may be sent to the subscriber. The opt-in mechanism can be mobile or web opt-in.

req_subscriber_opt_out
boolean

If 'true' then MNO requires a campaign to support an opt-out mechanism through MO stop keywords such as 'STOP', 'QUIT'. Upon receive the STOP message from a subscriber, the campaign must stop sending messages to the subscriber immediately.

req_subscriber_help
boolean

If 'true' then MNO requires a campaign to support a 'help' mechanism through MO help key words such as 'HELP', 'INFO'.

no_embedded_link
boolean

If 'true' then MNO forbids call-to-action link/URL to be embedded in all messages sent to the subscriber.

no_embedded_phone
boolean

If 'true' then MNO forbids call-to-action phone number to be embedded in all messages sent to the subscriber.

att_msg_class
string
ejemploQ

(Only for AT&T). Message class assigned to the campaign by MNO. Please refer to the AT&T 10DLC guide for a complete list of available message class and definition.

att_tpm
integer
ejemplo3000

(Only for AT&T). SMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_mms_tpm
integer
ejemplo3000

(Only for AT&T). MMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_number_based
boolean

(Only for AT&T). Whether is the MNO applying the TPM per number or per campaign.

tmo_brand_tier
string
ejemploLOW

(Only for T-Mobile). Daily message volume is restricted based on brand tier or brand qualification. The daily volume restriction applies to brand across campaigns and CSPs. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:LOWLOWER_MIDUPPER_MIDTOPUNCAPPED
tmo_tpd
integer

(Only for TMobile). Message TPD (throughput per day) qualified by the brand for the desired usecase.

complaints
array
complaints
array
description
string
Max65535

Description of this MNO complaint.

dca
string
ejemploSINCH

dca name

created_at
string(date-time)

Date-time when this record was created.

carrier_brand_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK
numbers
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers

Ejemplo Respuesta

{
   "primary_account_id": "abcd1234",
   "account_id": "abcd1234",
   "brand_id": "BLQKOPK",
   "campaign_id": "VC987XYZ",
   "tcr_campaign_id": "C123ABC",
   "reseller_id": "R123456",
   "reseller": true,
   "label": "This is a sample campaign",
   "status": "ACTIVE",
   "traffic_enabled": true,
   "usecase": "ACCOUNT_NOTIFICATION",
   "sub_usecases": [
      "2FA",
      "SECURITY_ALERT"
   ],
   "description": "User notifications",
   "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n",
   "message_flow_details": {
      "brand_name": "My brand",
      "consent_mechanisms": [
         {
            "method": "TEXT_TO_JOIN",
            "details": "A text will be sent to the customer. He can reply yes to consent and opt in."
         },
         {
            "method": "ONLINE_FORM",
            "details": "An online form allows the customer to subscribe.",
            "attachment": "https://mybrand.com/optin"
         }
      ],
      "pricing_disclosure": true,
      "frequency": "RECURRING",
      "privacy_policy": "https://mybrand.com/privacy_policy",
      "terms_and_conditions": "https://mybrand.com/terms_and_conditions"
   },
   "subscriber_opt_in": false,
   "opt_in_keywords": "START,SUBSCRIBE",
   "opt_in_message": "<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP\n",
   "subscriber_opt_out": false,
   "opt_out_keywords": "STOP,QUIT",
   "opt_out_message": "<Brand Name>: You are now opted-out and will receive no further messages.\n",
   "subscriber_help": false,
   "help_keywords": "HELP,INFO",
   "help_message": "<Brand Name>: For help, email support@example.com. To opt-out, reply STOP\n",
   "sample_one": "Hi\nThis is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.\n",
   "sample_two": "Hello,\nYour order, number XXXXXXX, has been shipped.\n",
   "sample_three": "Here is you unique PIN number to access the application: 123456\n",
   "sample_four": "Hello Mr Doe,\nYour payment of 9.99$ was authorized. You can find your invoice in your customer account.\n",
   "sample_five": "Your delivery is scheduled for tomorrow between 8am and 2pm.\nIf you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.\n",
   "age_gated": true,
   "direct_lending": true,
   "embedded_link": false,
   "embedded_phone": false,
   "partner": true,
   "auto_renewal": true,
   "hipaa": true,
   "tcr_status": "UNKNOWN",
   "vertical": "TECHNOLOGY",
   "number_pool": false,
   "registration_date": "2019-08-24T14:15:22Z",
   "renewal_date": "2019-08-24",
   "created_date": "2019-08-24T14:15:22Z",
   "last_updated": "2019-08-24T14:15:22Z",
   "billed_date": "2019-08-24T14:15:22Z",
   "opt_out_assist": false,
   "last_status_changes": [
      {
         "status": "APPROVED",
         "reason": "Approved after internal review.",
         "change_date": "2022-01-01 01:01:01"
      }
   ],
   "mno_metadata": [
      {
         "network_id": "10017",
         "mno": "AT&T",
         "status": "string",
         "mno_support": true,
         "mno_review": true,
         "qualify": true,
         "min_msg_samples": 2,
         "req_subscriber_opt_in": true,
         "req_subscriber_opt_out": true,
         "req_subscriber_help": true,
         "no_embedded_link": true,
         "no_embedded_phone": true,
         "att_msg_class": "Q",
         "att_tpm": 3000,
         "att_mms_tpm": 3000,
         "att_number_based": true,
         "tmo_brand_tier": "LOW",
         "tmo_tpd": 0,
         "complaints": [
            {
               "complaints": [
                  {
                     "description": "string",
                     "dca": "SINCH",
                     "created_at": "2019-08-24T14:15:22Z"
                  }
               ]
            }
         ]
      }
   ],
   "carrier_brand_suspensions": [
      [
         {}
      ]
   ],
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      },
      "numbers": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers"
      }
   }
}

Partially update a specific campaign

Update campaign parameters

What can be updated depends on the campaign's state:

  • If the campaign's status is TERMINATED or CANCELED, the campaign may not be updated.
  • If the campaign's status is PENDING_REVIEW or UPDATES_REQUIRED, all fields may be updated.
  • For other statuses, the following fields may not be updated since they are read only after the initial approval of the campaign by Vonage compliance team:
    • vertical
    • usecase
    • sub_usecases
    • age_gated
    • direct_lending
    • embedded_link
    • embedded_phone
    • status
  • The hipaa field can only be updated if no number was ever linked to that campaign.

Forced values

  • status can only be set to “CANCELED”, to cancel a campaign, Otherwise, it must be left out, or set to null.

NB:

  1. opt_in_message is mandatory if opt_in_keywords is set.
  2. message_flow and message_flow_details are mutually exclusive.
  • if message_flow is passed, it will erase any stored message_flow_details.
  • if message_flow_details is passed, it will be stored and used to compute message_flow.
patchhttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Cuerpo de la solicitud
Tipo de contenido
application/json

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

description
string
Min40
Max4096
ejemploUser notifications

Summary description of this campaign

reseller_id
string
Max8
ejemploR123456

Alphanumeric TCR identifier of the reseller associated with this campaign.
R000000 is a special value meaning this is not a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

In POST and PATCH endpoints, this is ignored if the reseller field on the same call. It will also be ignored if the brand's reseller field is true.
If tcr_campaign_id and reseller_id are set (not an empty string) then this field cannot be changed anymore.

reseller
boolean

Indicates if a campaign is a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

In POST and PATCH endpoints, this is ignored if the brand's reseller field is true.

sample_one
string
Min20
Max1024
ejemploHi This is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.

Message sample. Some campaign tiers require 1 or more message samples.

sample_two
string
Min20
Max1024
ejemploHello, Your order, number XXXXXXX, has been shipped.

Message sample. Some campaign tiers require 2 or more message samples.

sample_three
string
Min20
Max1024
ejemploHere is you unique PIN number to access the application: 123456

Message sample. Some campaign tiers require 3 or more message samples.

sample_four
string
Min20
Max1024
ejemploHello Mr Doe, Your payment of 9.99$ was authorized. You can find your invoice in your customer account.

Message sample. Some campaign tiers require 4 or more message samples.

sample_five
string
Min20
Max1024
ejemploYour delivery is scheduled for tomorrow between 8am and 2pm. If you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.

Message sample. Some campaign tiers require 5.

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

When creating or updating a campaign, either message_flow or message_flow_details may be specified, but not both. When reading a campaign, message_flow will always be filled with data computed from message_flow_details.

Describes what the opt_in option was used for. NBThis attribute will be deprecated on POST and PATCH endpoint. Please update your application to use the message_flow_details property instead.

message_flow_details
object

Message flow details specifies the message_flow field as a structured object instead of a single text field.

When creating or updating a campaign:

  1. either message_flow or message_flow_details may be specified, but not both.
  2. if message_flow_details is specified, the object's fields will be used to fill a template. The resulting templated text will be used to fill the message_flow field of the campaign.

When reading a campaign message_flow_details will only be filled if it's been used to create or update the campaign.

For more information on Campaign message flows, please see this campaign requirements article.

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

help_message
string
Min20
Max320
ejemplo<Brand Name>: For help, email support@example.com. To opt-out, reply STOP

Help message of the campaign.

The response to HELP keyword may include the Brand name and additional support contact information.

opt_in_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP

Opt in message sent to confirmation enrollment to a recurring message campaign. Also provide information on how to get HELP or undo enrollment. If consumers can text in a keyword,the response should include the Brand name.
NB: This field is mandatory if opt_in_keywords is set.

opt_out_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-out and will receive no further messages.

Opt out message of the campaign. The response to the STOP keyword may include the Brand name but should include an acknowledgement of the opt-out request and confirmation that no further messages will be sent.
NB: Required for all recurring campaigns or for SMS opt-in.

help_keywords
string
Max255
Por defectoHELP
ejemploHELP,INFO

Help keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the HELP keyword if set.

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

opt_out_keywords
string
Max255
Por defectoSTOP
ejemploSTOP,QUIT

Opt out keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the STOP keyword if set.

auto_renewal
boolean

Campaign subscription auto-renewal option.

status
string

Campaign status. Only status CANCELED may be manually set.

Debe ser uno de:CANCELED
vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Please refer to the vertical property of the /enum endpoint for an updated list of valid values.

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
usecase
string
Max50
ejemploACCOUNT_NOTIFICATION

Campaign usecase. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME
sub_usecases
array
Valores disponibles:
CUSTOMER_CARE,POLLING_VOTING,HIGHER_EDUCATION,PUBLIC_SERVICE_ANNOUNCEMENT,MARKETING,SECURITY_ALERT,DELIVERY_NOTIFICATION,ACCOUNT_NOTIFICATION,2FA,FRAUD_ALERT,TRIAL,CHARITY,POLITICAL,EMERGENCY,SWEEPSTAKE,CONVERSATIONAL,MIXED,CARRIER_EXEMPT,SOCIAL,LOW_VOLUME
age_gated
boolean
ejemplotrue

Subscribers will be required to provide their age to opt-in if set to true. NB: Sex, Hate, Alcohol, Firearms, and Tobacco related (S.H.A.F.T) messages are prohibited.

direct_lending
boolean
ejemplotrue

Set to true if messages are related to money lending or loan arrangements.

embedded_link
boolean

Set to true if the campaign message includes links. NB: Shortened URLs are forbidden.

embedded_phone
boolean

Does message generated by the campaign include phone number in SMS?

hipaa
boolean

Indicates if HIPAA is enabled for this campaign.

This is kept nullable to avoid breaking changes, but it is best to set it when creating the campaign. Otherwise, this will be set when attempting to link the first number of the campaign, whether the attempt is successful or not. After that, it will not be possible to update that field anymore.

Ejemplo Solicitar

{
   "label": "This is a sample campaign",
   "description": "User notifications",
   "reseller_id": "R123456",
   "reseller": true,
   "sample_one": "Hi\nThis is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.\n",
   "sample_two": "Hello,\nYour order, number XXXXXXX, has been shipped.\n",
   "sample_three": "Here is you unique PIN number to access the application: 123456\n",
   "sample_four": "Hello Mr Doe,\nYour payment of 9.99$ was authorized. You can find your invoice in your customer account.\n",
   "sample_five": "Your delivery is scheduled for tomorrow between 8am and 2pm.\nIf you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.\n",
   "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n",
   "message_flow_details": {
      "brand_name": "My brand",
      "consent_mechanisms": [
         {
            "method": "TEXT_TO_JOIN",
            "details": "A text will be sent to the customer. He can reply yes to consent and opt in."
         },
         {
            "method": "ONLINE_FORM",
            "details": "An online form allows the customer to subscribe.",
            "attachment": "https://mybrand.com/optin"
         }
      ],
      "pricing_disclosure": true,
      "frequency": "RECURRING",
      "privacy_policy": "https://mybrand.com/privacy_policy",
      "terms_and_conditions": "https://mybrand.com/terms_and_conditions"
   },
   "help_message": "<Brand Name>: For help, email support@example.com. To opt-out, reply STOP\n",
   "opt_in_message": "<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP\n",
   "opt_out_message": "<Brand Name>: You are now opted-out and will receive no further messages.\n",
   "help_keywords": "HELP,INFO",
   "opt_in_keywords": "START,SUBSCRIBE",
   "opt_out_keywords": "STOP,QUIT",
   "auto_renewal": true,
   "status": "CANCELED",
   "vertical": "TECHNOLOGY",
   "usecase": "ACCOUNT_NOTIFICATION",
   "sub_usecases": [
      "ACCOUNT_NOTIFICATION"
   ],
   "age_gated": true,
   "direct_lending": true,
   "embedded_link": false,
   "embedded_phone": false,
   "hipaa": true
}

Respuestas
Tipo de contenido
application/json

Return a single campaign

primary_account_id
string
ejemploabcd1234

The Vonage Primary Account ID (the parent account of account_id).

account_id
string
ejemploabcd1234

The Vonage Account ID

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

tcr_campaign_id
string
Max50
ejemploC123ABC

TCR Campaign ID.

reseller_id
string
Max8
ejemploR123456

Alphanumeric TCR identifier of the reseller associated with this campaign.
R000000 is a special value meaning this is not a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

In POST and PATCH endpoints, this is ignored if the reseller field on the same call. It will also be ignored if the brand's reseller field is true.
If tcr_campaign_id and reseller_id are set (not an empty string) then this field cannot be changed anymore.

reseller
boolean

Indicates if a campaign is a reseller campaign.

This is required when creating a campaign on behalf of another company or entity.

This can only be enabled if a valid reseller (status PENDING or APPROVED) is linked to the primary account of the brand.

In POST and PATCH endpoints, this is ignored if the brand's reseller field is true.

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
traffic_enabled
boolean

Indicates if traffic is enabled for this campaign.

Traffic first becomes enabled when the campaign's status becomes ACTIVE. It can be suspended later due to a number of reasons (campaign suspension, expiration, termination, ...).

NB This is only a requirement for traffic to be allowed but not is not the only requirement. Traffic can also be stopped due to brand suspensions, number not linked properly, ...

usecase
string
Max50
ejemploACCOUNT_NOTIFICATION

Campaign usecase. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:CUSTOMER_CAREPOLLING_VOTINGHIGHER_EDUCATIONPUBLIC_SERVICE_ANNOUNCEMENTMARKETINGSECURITY_ALERTDELIVERY_NOTIFICATIONACCOUNT_NOTIFICATION2FAFRAUD_ALERTTRIALCHARITYPOLITICALEMERGENCYSWEEPSTAKECONVERSATIONALMIXEDCARRIER_EXEMPTSOCIALLOW_VOLUME
sub_usecases
array

Campaign sub-usecases. Please refer to the /enum endpoint for an updated list of valid values.

Valores disponibles:
CUSTOMER_CARE,POLLING_VOTING,HIGHER_EDUCATION,PUBLIC_SERVICE_ANNOUNCEMENT,MARKETING,SECURITY_ALERT,DELIVERY_NOTIFICATION,ACCOUNT_NOTIFICATION,2FA,FRAUD_ALERT,TRIAL,CHARITY,POLITICAL,EMERGENCY,SWEEPSTAKE,CONVERSATIONAL,MIXED,CARRIER_EXEMPT,SOCIAL,LOW_VOLUME
description
string
Min40
Max4096
ejemploUser notifications

Summary description of this campaign

message_flow
string
Min40
Max4096
ejemploBrand: My brand \ Consent mechanisms: \ - TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \ - ONLINE_FORM: This is an online form \ Link: https://mybrand.com/optin \ Message & data rates may apply. - Message frequency varies \ Carriers are not liable for delayed or undelivered messages. \ Text HELP for help. Text STOP to opt-out. \ Terms & Conditions: https://mybrand.com/terms_and_conditions \ Privacy Policy: https://mybrand.com/privacy_policy

Message flow, also known as Call to Action, of the campaign. It will always be filled with data computed from message_flow_details.

This field should describe how a consumer opts-in to the campaign, therefore giving consent to the sender to receive their messages. The call-to-action must be explicitly clear and inform the consumer of the nature of the program.

  • Entering a telephone number through a website;
  • Clicking a button on a mobile webpage;
  • Sending a message from the Consumer’s mobile device that contains an advertising keyword;
  • Initiating the text message exchange in which the Message Sender replies to the Consumer only with responsive information;
  • Signing up at a point-of-sale (POS) or other Message Sender on-site location; or
  • Opting-in over the phone using interactive voice response (IVR) technology.

If multiple opt-in methods can be used for the same campaign, you must list them all.

Describes what the opt_in option was used for.

message_flow_details
object

Message flow details specifies the message_flow field as a structured object instead of a single text field.

When creating or updating a campaign:

  1. either message_flow or message_flow_details may be specified, but not both.
  2. if message_flow_details is specified, the object's fields will be used to fill a template. The resulting templated text will be used to fill the message_flow field of the campaign.

When reading a campaign message_flow_details will only be filled if it's been used to create or update the campaign.

For more information on Campaign message flows, please see this campaign requirements article.

brand_name
string
Requerido

A brand name associated with the campaign. This can be different from the name of the brand the campaign belongs to (e.g. for subsidiaries, ...).

NB: This is optional for sole proprietors.

consent_mechanisms
array
Requerido

Describe the different mechanisms a customer may use to consent to the campaign.

It is required to provide an attachment for all consent methods, except TEXT_TO_JOIN.

method
string
Requerido
Debe ser uno de:ONLINE_FORMLIVE_OPERATORPOINT_OF_SALETEXT_TO_JOINOTHER
details
string
Requerido

Details on the consent mechanism.

attachment
string(uri)

An HTTP(S) link to the resource describing the mechanism.

pricing_disclosure
boolean
Requerido

This field needs to be true to consent to adding the pricing disclosure to the template.

The following will be added: Message and Data rates may apply

Debe ser uno de:true
carrier_disclaimer
boolean

Whether to add the following disclaimer: Carriers are not liable for delayed or undelivered messages.

Debe ser uno de:true
frequency
string
Requerido

The frequency of the messages sent by the campaign.

Debe ser uno de:ONE_TIMERECURRING
privacy_policy
string(uri)
Requerido

Link to the campaign's privacy policy.

terms_and_conditions
string(uri)
Requerido

Link to the campaign's terms and conditions.

subscriber_opt_in
boolean
Por defectotrue

Does campaign require subscriber to opt-in before SMS is sent to subscriber?

opt_in_keywords
string
Max255
ejemploSTART,SUBSCRIBE

Opt in keywords of the campaign, separated by comas.

opt_in_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP

Opt in message sent to confirmation enrollment to a recurring message campaign. Also provide information on how to get HELP or undo enrollment. If consumers can text in a keyword,the response should include the Brand name.
NB: This field is mandatory if opt_in_keywords is set.

subscriber_opt_out
boolean
Por defectotrue

Does campaign support subscriber opt-out keyword(s)?

opt_out_keywords
string
Max255
Por defectoSTOP
ejemploSTOP,QUIT

Opt out keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the STOP keyword if set.

opt_out_message
string
Min20
Max320
ejemplo<Brand Name>: You are now opted-out and will receive no further messages.

Opt out message of the campaign. The response to the STOP keyword may include the Brand name but should include an acknowledgement of the opt-out request and confirmation that no further messages will be sent.
NB: Required for all recurring campaigns or for SMS opt-in.

subscriber_help
boolean
Por defectotrue

Does campaign responds to help keyword(s)?

help_keywords
string
Max255
Por defectoHELP
ejemploHELP,INFO

Help keywords of the campaign, separated by comas. This field must not contain any spaces, and must contain the HELP keyword if set.

help_message
string
Min20
Max320
ejemplo<Brand Name>: For help, email support@example.com. To opt-out, reply STOP

Help message of the campaign.

The response to HELP keyword may include the Brand name and additional support contact information.

sample_one
string
Min20
Max1024
ejemploHi This is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.

Message sample. Some campaign tiers require 1 or more message samples.

sample_two
string
Min20
Max1024
ejemploHello, Your order, number XXXXXXX, has been shipped.

Message sample. Some campaign tiers require 2 or more message samples.

sample_three
string
Min20
Max1024
ejemploHere is you unique PIN number to access the application: 123456

Message sample. Some campaign tiers require 3 or more message samples.

sample_four
string
Min20
Max1024
ejemploHello Mr Doe, Your payment of 9.99$ was authorized. You can find your invoice in your customer account.

Message sample. Some campaign tiers require 4 or more message samples.

sample_five
string
Min20
Max1024
ejemploYour delivery is scheduled for tomorrow between 8am and 2pm. If you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.

Message sample. Some campaign tiers require 5.

age_gated
boolean
ejemplotrue

Subscribers will be required to provide their age to opt-in if set to true. NB: Sex, Hate, Alcohol, Firearms, and Tobacco related (S.H.A.F.T) messages are prohibited.

direct_lending
boolean
ejemplotrue

Set to true if messages are related to money lending or loan arrangements.

embedded_link
boolean

Set to true if the campaign message includes links. NB: Shortened URLs are forbidden.

embedded_phone
boolean

Does message generated by the campaign include phone number in SMS?

partner
boolean
ejemplotrue

Indicates the brand or campaign belong to a partner campaign.

auto_renewal
boolean

Campaign subscription auto-renewal option.

Defines the behaviour at the end of the billing cycle:

  • if true, the campaign will automatically renewed
  • if false, the campaign will expire and its status will become CANCELED
hipaa
boolean

Indicates if HIPAA is enabled for this campaign.

This is kept nullable to avoid breaking changes, but it is best to set it when creating the campaign. Otherwise, this will be set when attempting to link the first number of the campaign, whether the attempt is successful or not. After that, it will not be possible to update that field anymore.

tcr_status
string

Campaign TCR status.

Debe ser uno de:UNKNOWNACTIVECANCELED
vertical
string
ejemploTECHNOLOGY

Business/industry segment of this campaign. Please refer to the vertical property of the /enum endpoint for an updated list of valid values.

Debe ser uno de:REAL_ESTATEHEALTHCAREENERGYENTERTAINMENTRETAILAGRICULTUREINSURANCEEDUCATIONHOSPITALITYFINANCIALGAMBLINGCONSTRUCTIONNGOMANUFACTURINGGOVERNMENTTECHNOLOGYCOMMUNICATION
number_pool
boolean
Por defectotrue

Set to true if campaign uses a pool of numbers.

registration_date
string(date-time)

Date-time when campaign was registered with TCR.

renewal_date
string(date)

Date when the campaign will be renewed and billed, if auto_renewal is true.

created_date
string(date-time)

Date when this record was created.

last_updated
string(date-time)

Date-time when this record was last updated.

billed_date
string(date-time)

Date-time when this campaign was billed.

opt_out_assist
boolean

Specifies whether opt out assist is enabled for this account.
On a campaign, indicates whether it's enabled on the primary account of the campaign's brand.

last_status_changes
array

Lists the last changes of the status field.

Note: this is only an extract. Not all changes are listed here.

status
string
ejemploACTIVE

Campaign Status.

  • PENDING_REVIEW: This is the initial status of a campaign. This implies that the campaign has been submitted for an internal review and cannot be used yet.
  • UPDATES_REQUIRED: The campaign has been reviewed but requires changes before it can be approved.
  • CARRIERS_REVIEW: The campaign has been approved by our internal process. It has been created in the registry and but pending approval from third parties i.e: mobile carrier.
  • ACTIVE: The campaign has been approved by every party and traffic can now be sent.
  • PENDING_CANCELLATION: The campaign is active but will not be renewed. It will be canceled at the next renewal date.
  • SUSPENDED: The campaign has been suspended, along with any traffic it's used to send. This can happen if suspicious traffic has been detected (e.g.: spam) or after an MNO complaint. This triggers an internal review process which can lead to the un-suspension or termination of the campaign.
  • TERMINATED: The campaign has been terminated. A campaign cannot be recovered after it's been terminated.
  • EXPIRED: The campaign has expired.
  • REJECTED: This implies the campaign was rejected by the compliance team as it is not compliant with 10DLC requirements. Further reasons can be found in the description of the rejection event received from TCR. You may update the campaign using TCR’s API or dashboard, and re-share the campaign with Vonage for a new review.
  • CNP_CANCELED: The campaign has been canceled during a CNP migration. You are required to restart a CNP migration.
  • PORTED_OUT: The campaign has been ported out from Vonage. You are required to start a CNP migration.
Debe ser uno de:PENDING_REVIEWUPDATES_REQUIREDCARRIERS_REVIEWACTIVEPENDING_CANCELLATIONSUSPENDEDTERMINATEDCANCELEDREJECTEDCNP_CANCELEDPORTED_OUT
explanation
string

Describes why the status changed how it did.

change_date
string(date-time)

Date-time when the status changed.

mno_metadata
array
network_id
string
ejemplo10017

Network ID of the MNO.

mno
string
ejemploAT&T

Name of the MNO.

status
string

MNO campaign operation status. Please refer to the campaign_op_status property of the /enum endpoint response for an updated list of valid values.

mno_support
boolean

If 'false', then the desired usecase cannot be supported by the MNO.

mno_review
boolean

If 'true', then the submitted campaign is subject to the MNO (manual) review process.

qualify
boolean

If 'false', then the brand does not qualify for the desired usecase on the MNO.

min_msg_samples
integer
ejemplo2

The minimum number of message samples required by MNO for submission of the desired usecase.

req_subscriber_opt_in
boolean

If 'true' then MNO requires the subscriber to opt-into the campaign before the message may be sent to the subscriber. The opt-in mechanism can be mobile or web opt-in.

req_subscriber_opt_out
boolean

If 'true' then MNO requires a campaign to support an opt-out mechanism through MO stop keywords such as 'STOP', 'QUIT'. Upon receive the STOP message from a subscriber, the campaign must stop sending messages to the subscriber immediately.

req_subscriber_help
boolean

If 'true' then MNO requires a campaign to support a 'help' mechanism through MO help key words such as 'HELP', 'INFO'.

no_embedded_link
boolean

If 'true' then MNO forbids call-to-action link/URL to be embedded in all messages sent to the subscriber.

no_embedded_phone
boolean

If 'true' then MNO forbids call-to-action phone number to be embedded in all messages sent to the subscriber.

att_msg_class
string
ejemploQ

(Only for AT&T). Message class assigned to the campaign by MNO. Please refer to the AT&T 10DLC guide for a complete list of available message class and definition.

att_tpm
integer
ejemplo3000

(Only for AT&T). SMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_mms_tpm
integer
ejemplo3000

(Only for AT&T). MMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_number_based
boolean

(Only for AT&T). Whether is the MNO applying the TPM per number or per campaign.

tmo_brand_tier
string
ejemploLOW

(Only for T-Mobile). Daily message volume is restricted based on brand tier or brand qualification. The daily volume restriction applies to brand across campaigns and CSPs. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:LOWLOWER_MIDUPPER_MIDTOPUNCAPPED
tmo_tpd
integer

(Only for TMobile). Message TPD (throughput per day) qualified by the brand for the desired usecase.

complaints
array
complaints
array
description
string
Max65535

Description of this MNO complaint.

dca
string
ejemploSINCH

dca name

created_at
string(date-time)

Date-time when this record was created.

carrier_brand_suspensions
array
category
string

Summarize the reason of the suspension.

explanation
string

Detailed explanation of the cause of the suspension.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK
numbers
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers

Ejemplo Respuesta

{
   "primary_account_id": "abcd1234",
   "account_id": "abcd1234",
   "brand_id": "BLQKOPK",
   "campaign_id": "VC987XYZ",
   "tcr_campaign_id": "C123ABC",
   "reseller_id": "R123456",
   "reseller": true,
   "label": "This is a sample campaign",
   "status": "ACTIVE",
   "traffic_enabled": true,
   "usecase": "ACCOUNT_NOTIFICATION",
   "sub_usecases": [
      "2FA",
      "SECURITY_ALERT"
   ],
   "description": "User notifications",
   "message_flow": "Brand: My brand \\\nConsent mechanisms: \\\n- TEXT_TO_JOIN: Opt-in Keywords: START,JOIN. A text will be sent to the customer. He can reply yes to consent and opt in. \\\n- ONLINE_FORM: This is an online form \\\n  Link: https://mybrand.com/optin \\\nMessage & data rates may apply. - Message frequency varies \\\nCarriers are not liable for delayed or undelivered messages. \\\nText HELP for help. Text STOP to opt-out. \\\nTerms & Conditions: https://mybrand.com/terms_and_conditions \\\nPrivacy Policy: https://mybrand.com/privacy_policy\n",
   "message_flow_details": {
      "brand_name": "My brand",
      "consent_mechanisms": [
         {
            "method": "TEXT_TO_JOIN",
            "details": "A text will be sent to the customer. He can reply yes to consent and opt in."
         },
         {
            "method": "ONLINE_FORM",
            "details": "An online form allows the customer to subscribe.",
            "attachment": "https://mybrand.com/optin"
         }
      ],
      "pricing_disclosure": true,
      "frequency": "RECURRING",
      "privacy_policy": "https://mybrand.com/privacy_policy",
      "terms_and_conditions": "https://mybrand.com/terms_and_conditions"
   },
   "subscriber_opt_in": false,
   "opt_in_keywords": "START,SUBSCRIBE",
   "opt_in_message": "<Brand Name>: You are now opted-in. For help, reply HELP. To opt-out, reply STOP\n",
   "subscriber_opt_out": false,
   "opt_out_keywords": "STOP,QUIT",
   "opt_out_message": "<Brand Name>: You are now opted-out and will receive no further messages.\n",
   "subscriber_help": false,
   "help_keywords": "HELP,INFO",
   "help_message": "<Brand Name>: For help, email support@example.com. To opt-out, reply STOP\n",
   "sample_one": "Hi\nThis is a reminder that you have a scheduled appointment with Dr. Doe tomorrow at 4:00PM.\n",
   "sample_two": "Hello,\nYour order, number XXXXXXX, has been shipped.\n",
   "sample_three": "Here is you unique PIN number to access the application: 123456\n",
   "sample_four": "Hello Mr Doe,\nYour payment of 9.99$ was authorized. You can find your invoice in your customer account.\n",
   "sample_five": "Your delivery is scheduled for tomorrow between 8am and 2pm.\nIf you wish to change the delivery date please reply by typing 1 (tomorrow), 2 (Thursday) or 3 (deliver to post office) below.\n",
   "age_gated": true,
   "direct_lending": true,
   "embedded_link": false,
   "embedded_phone": false,
   "partner": true,
   "auto_renewal": true,
   "hipaa": true,
   "tcr_status": "UNKNOWN",
   "vertical": "TECHNOLOGY",
   "number_pool": false,
   "registration_date": "2019-08-24T14:15:22Z",
   "renewal_date": "2019-08-24",
   "created_date": "2019-08-24T14:15:22Z",
   "last_updated": "2019-08-24T14:15:22Z",
   "billed_date": "2019-08-24T14:15:22Z",
   "opt_out_assist": false,
   "last_status_changes": [
      {
         "status": "APPROVED",
         "reason": "Approved after internal review.",
         "change_date": "2022-01-01 01:01:01"
      }
   ],
   "mno_metadata": [
      {
         "network_id": "10017",
         "mno": "AT&T",
         "status": "string",
         "mno_support": true,
         "mno_review": true,
         "qualify": true,
         "min_msg_samples": 2,
         "req_subscriber_opt_in": true,
         "req_subscriber_opt_out": true,
         "req_subscriber_help": true,
         "no_embedded_link": true,
         "no_embedded_phone": true,
         "att_msg_class": "Q",
         "att_tpm": 3000,
         "att_mms_tpm": 3000,
         "att_number_based": true,
         "tmo_brand_tier": "LOW",
         "tmo_tpd": 0,
         "complaints": [
            {
               "complaints": [
                  {
                     "description": "string",
                     "dca": "SINCH",
                     "created_at": "2019-08-24T14:15:22Z"
                  }
               ]
            }
         ]
      }
   ],
   "carrier_brand_suspensions": [
      [
         {}
      ]
   ],
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      },
      "numbers": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers"
      }
   }
}

Stop a specific campaign on a brand

Deprecated

Cancels the campaign auto-renewal. The cancellation of renewal cannot be reverted.

The actual deletion will happen after campaign's expiration date.

NB: Will soon be deprecated. Use the Campaign PATCH with the auto_renewal property set to false to achieve a similar outcome.

deletehttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Respuestas

No content

Re-submit active campaign against specific MNO CRE.

Re-submit active campaign against specific MNO CRE.

puthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id/resubmit

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Cuerpo de la solicitud
Tipo de contenido
application/json

mno_ids
array
Requerido

Ejemplo Solicitar

{
   "mno_ids": [
      "10017"
   ]
}

Respuestas
Tipo de contenido
application/json

Resubmitted campaign response

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

mno_metadata
array
network_id
string
ejemplo10017

Network ID of the MNO.

mno
string
ejemploAT&T

Name of the MNO.

status
string

MNO campaign operation status. Please refer to the campaign_op_status property of the /enum endpoint response for an updated list of valid values.

mno_support
boolean

If 'false', then the desired usecase cannot be supported by the MNO.

mno_review
boolean

If 'true', then the submitted campaign is subject to the MNO (manual) review process.

qualify
boolean

If 'false', then the brand does not qualify for the desired usecase on the MNO.

min_msg_samples
integer
ejemplo2

The minimum number of message samples required by MNO for submission of the desired usecase.

req_subscriber_opt_in
boolean

If 'true' then MNO requires the subscriber to opt-into the campaign before the message may be sent to the subscriber. The opt-in mechanism can be mobile or web opt-in.

req_subscriber_opt_out
boolean

If 'true' then MNO requires a campaign to support an opt-out mechanism through MO stop keywords such as 'STOP', 'QUIT'. Upon receive the STOP message from a subscriber, the campaign must stop sending messages to the subscriber immediately.

req_subscriber_help
boolean

If 'true' then MNO requires a campaign to support a 'help' mechanism through MO help key words such as 'HELP', 'INFO'.

no_embedded_link
boolean

If 'true' then MNO forbids call-to-action link/URL to be embedded in all messages sent to the subscriber.

no_embedded_phone
boolean

If 'true' then MNO forbids call-to-action phone number to be embedded in all messages sent to the subscriber.

att_msg_class
string
ejemploQ

(Only for AT&T). Message class assigned to the campaign by MNO. Please refer to the AT&T 10DLC guide for a complete list of available message class and definition.

att_tpm
integer
ejemplo3000

(Only for AT&T). SMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_mms_tpm
integer
ejemplo3000

(Only for AT&T). MMS Message TPM (throughput per minute) qualified by the brand for the desired usecase.

att_number_based
boolean

(Only for AT&T). Whether is the MNO applying the TPM per number or per campaign.

tmo_brand_tier
string
ejemploLOW

(Only for T-Mobile). Daily message volume is restricted based on brand tier or brand qualification. The daily volume restriction applies to brand across campaigns and CSPs. Please refer to the /enum endpoint for an updated list of valid values.

Debe ser uno de:LOWLOWER_MIDUPPER_MIDTOPUNCAPPED
tmo_tpd
integer

(Only for TMobile). Message TPD (throughput per day) qualified by the brand for the desired usecase.

complaints
array
complaints
array
description
string
Max65535

Description of this MNO complaint.

dca
string
ejemploSINCH

dca name

created_at
string(date-time)

Date-time when this record was created.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

{
   "campaign_id": "VC987XYZ",
   "brand_id": "BLQKOPK",
   "mno_metadata": [
      {
         "network_id": "10017",
         "min_msg_samples": 2,
         "att_msg_class": "Q",
         "req_subscriber_opt_in": false,
         "req_subscriber_help": false,
         "req_subscriber_opt_out": false,
         "mno": "AT&T",
         "att_tpm": 2000,
         "mno_support": true,
         "mno_review": true,
         "no_embedded_link": true,
         "qualify": true,
         "tmo_brand_tier": null
      },
      {
         "network_id": "10035",
         "min_msg_samples": 2,
         "req_subscriber_opt_in": false,
         "req_subscriber_help": false,
         "req_subscriber_opt_out": false,
         "mno": "TMO",
         "mno_support": true,
         "mno_review": true,
         "no_embedded_link": true,
         "no_embedded_phone": true,
         "qualify": true,
         "tmo_brand_tier": "LOW",
         "att_tpm": null,
         "att_msg_class": null
      }
   ],
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/vetting/requests/abcd1234"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      }
   }
}

The terms and conditions governing the creation of a campaign.

Get campaign terms and conditions

gethttps://api-eu.vonage.com/v1/10dlc/campaigns/terms_and_conditions

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Respuestas
Tipo de contenido
application/json

campaign terms and conditions

sub_terms
array

Ejemplo Respuesta

{
   "sub_terms": [
      "I confirm that this campaign will not be used for Affiliate Marketing."
   ]
}

Import a partner campaign to Vonage

Import a partner campaign by sharing it with Vonage. Your account needs a special capability to be able to carry on with this operation.

posthttps://api-eu.vonage.com/v1/10dlc/partnercampaigns/import

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Cuerpo de la solicitud
Tipo de contenido
application/json

account_id
string
Requerido
ejemploabcd1234

The Vonage Account ID

campaign_id
string
Requerido
Max50
ejemploC123ABC

TCR Campaign ID.

label
string
Max50
ejemploThis is a sample campaign

Friendly name associated with this campaign.

cnp_migration
boolean

Indicates if the campaign is part of the CNP migration. It must be set to true, if a CNP migration has been initiated.

Ejemplo Solicitar

{
   "account_id": "abcd1234",
   "campaign_id": "C123ABC",
   "label": "This is a sample campaign",
   "cnp_migration": true
}

Respuestas
Tipo de contenido
application/json

Imported partner campaign summary

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

sharing_status
string
Max50

Sharing Status. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PENDINGACCEPTEDDECLINED
downstream_cnp_id
string
Max50

CNP ID. Please refer to the /enum endpoint for an update list of valid values.

upstream_cnp_id
string
Max50

CNP ID. Please refer to the /enum endpoint for an update list of valid values.

Ejemplo Respuesta

{
   "brand_id": "BLQKOPK",
   "campaign_id": "VC987XYZ",
   "sharing_status": "PENDING",
   "downstream_cnp_id": "string",
   "upstream_cnp_id": "string"
}

Get partner campaign sharing information

Get partner campaign sharing information

gethttps://api-eu.vonage.com/v1/10dlc/partnercampaigns/:campaign_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Respuestas
Tipo de contenido
application/json

Partner campaign sharing status

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

sharing_status
string
Max50

Sharing Status. Please refer to the /enum endpoint for an update list of valid values.

Debe ser uno de:PENDINGACCEPTEDDECLINED
downstream_cnp_id
string
Max50

CNP ID. Please refer to the /enum endpoint for an update list of valid values.

upstream_cnp_id
string
Max50

CNP ID. Please refer to the /enum endpoint for an update list of valid values.

Ejemplo Respuesta

{
   "campaign_id": "VC987XYZ",
   "sharing_status": "PENDING",
   "downstream_cnp_id": "string",
   "upstream_cnp_id": "string"
}

Get throughput applied to a campaign.

Get throughput applied to a campaign for the available MNOs.

gethttps://api-eu.vonage.com/v1/10dlc/throughputs

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Consulta Parámetros

campaign_id
string
Max50
ejemploVC987XYZ
page_size
integer
ejemplo10

Number of results per page

page_token
string
Min1
Max512

Token used to paginate.

Respuestas
Tipo de contenido
application/json

OK

next_page
string
Min1
Max512

page_token to access the next page.

previous_page
string
Min1
Max512

page_token to access the previous page.

last_page
string
Min1
Max512

page_token to access the last page.

first_page
string
Min1
Max512

page_token to access the first page.

_links
object
next
object

Link to the next page.

href
string
previous
object

Link to the previous page.

href
string
first
object

Link to the first page.

href
string
last
object

Link to the last page.

href
string
_embedded
object
throughputs
array
id
string(uuid)
Requerido
ejemplo91cd871e-ce9e-4f4d-a792-23277cbc287d

Throughput ID.

brand_id
string
Max50
ejemploBLQKOPK

TCR Brand ID.

campaign_id
string
Max50
ejemploVC987XYZ

Vonage Campaign ID.

carriers
array
Requerido

List of carriers to which the throughput applies.

value
Requerido
Uno de
shared
integer
Requerido
ejemplo1000

Shared throughput value for both SMS and MMS.

period
string
Requerido

The period for which the throughput applies.

Debe ser uno de:minuteday
scope
string
Requerido

The scope of the throughput.

Debe ser uno de:campaignbrandnumber

Ejemplo Respuesta

{
   "next_page": "string",
   "previous_page": "string",
   "last_page": "string",
   "first_page": "string",
   "_links": {
      "next": {
         "href": "string"
      },
      "previous": {
         "href": "string"
      },
      "first": {
         "href": "string"
      },
      "last": {
         "href": "string"
      }
   },
   "_embedded": {
      "throughputs": [
         {
            "id": "91cd871e-ce9e-4f4d-a792-23277cbc287d",
            "brand_id": "BLQKOPK",
            "campaign_id": "VC987XYZ",
            "carriers": [
               "AT&T",
               "ClearSky"
            ],
            "value": {
               "shared": 1000
            },
            "period": "minute",
            "scope": "campaign"
         }
      ]
   }
}

Numbers

APIs relating to working with Numbers in Campaigns

Retrieve Numbers associated with a campaign

Get numbers in campaign

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id/numbers

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Consulta Parámetros

filter
array

Narrow down results based on matching conditions. Follow the comprehensive guide to learn how to craft filter queries.

page
integer
Min1
ejemplo2

Page of results to jump to

page_size
integer
ejemplo10

Number of results per page

Respuestas
Tipo de contenido
application/json

List of numbers that are associated with a campaign

page_size
integer
ejemplo10

Items per page

page
integer
Min1
ejemplo2

Page Offset

total_pages
integer
Min1
ejemplo100

Number of pages in the entire result set

total_items
integer
ejemplo100

Number of items in the entire result set

_embedded
object
numbers
array
number
string
Min7
Max15
ejemplo14155550110

Telephone Number

country
string
ejemploUS

The two character country code in ISO 3166-1 alpha-2 format

status
string
ejemploLINKING

Current status of a number in a campaign. Only LINKED allows traffic.

Debe ser uno de:LINKINGLINKEDREJECTEDUNLINKINGUNLINKED
compliance
array

List of compliance flags.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers/14155550110
campaign
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

{
   "page_size": 10,
   "page": 2,
   "total_pages": 100,
   "total_items": 100,
   "_embedded": {
      "numbers": [
         {
            "number": "14155550110",
            "country": "US",
            "status": "LINKING",
            "compliance": [
               "HIPPA"
            ],
            "_links": {
               "self": {
                  "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers/14155550110"
               },
               "campaign": {
                  "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/"
               },
               "brand": {
                  "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
               }
            }
         }
      ]
   }
}

Link number to a campaign

Links an existing Vonage number to a 10DLC campaign.

posthttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id/numbers

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

Consulta Parámetros

filter
array

Narrow down results based on matching conditions. Follow the comprehensive guide to learn how to craft filter queries.

Cuerpo de la solicitud
Tipo de contenido
application/json

country
string
Requerido
ejemploUS

The two character country code in ISO 3166-1 alpha-2 format

number
string
Requerido
Min7
Max15
ejemplo14155550110

Telephone Number

Ejemplo Solicitar

{
   "country": "US",
   "number": "14155550110"
}

Respuestas
Tipo de contenido
application/json

Accepted

number
string
Min7
Max15
ejemplo14155550110

Telephone Number

country
string
ejemploUS

The two character country code in ISO 3166-1 alpha-2 format

status
string
ejemploLINKING

Current status of a number in a campaign. Only LINKED allows traffic.

Debe ser uno de:LINKINGLINKEDREJECTEDUNLINKINGUNLINKED
compliance
array

List of compliance flags.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers/14155550110
campaign
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

{
   "number": "14155550110",
   "country": "US",
   "status": "LINKING",
   "compliance": [
      "HIPPA"
   ],
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers/14155550110"
      },
      "campaign": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      }
   }
}

Retrieve information about a number in a campaign

Retrieve information about a number in a campaign

gethttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id/numbers/:number

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

number
string
Requerido
Min7
Max15
ejemplo14155550110

Number to work with inside a campaign

Respuestas
Tipo de contenido
application/json

Information about a number

number
string
Min7
Max15
ejemplo14155550110

Telephone Number

country
string
ejemploUS

The two character country code in ISO 3166-1 alpha-2 format

status
string
ejemploLINKING

Current status of a number in a campaign. Only LINKED allows traffic.

Debe ser uno de:LINKINGLINKEDREJECTEDUNLINKINGUNLINKED
compliance
array

List of compliance flags.

_links
object
self
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers/14155550110
campaign
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/
brand
object
href
string
ejemplohttps://api.nexmo.com/v1/10dlc/brands/BLQKOPK

Ejemplo Respuesta

{
   "number": "14155550110",
   "country": "US",
   "status": "LINKING",
   "compliance": [
      "HIPPA"
   ],
   "_links": {
      "self": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/numbers/14155550110"
      },
      "campaign": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK/campaigns/C1DEB879/"
      },
      "brand": {
         "href": "https://api.nexmo.com/v1/10dlc/brands/BLQKOPK"
      }
   }
}

Unlink a number from a campaign

Unlink a number from a campaign

deletehttps://api-eu.vonage.com/v1/10dlc/brands/:brand_id/campaigns/:campaign_id/numbers/:number

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

brand_id
string
Requerido
Max50
ejemploBLQKOPK

TCR Brand ID

campaign_id
string
Requerido
Max50
ejemploVC987XYZ

ID associated with a specific campaign

number
string
Requerido
Min7
Max15
ejemplo14155550110

Number to work with inside a campaign

Respuestas

No Content

Resellers

APIs for managing resellers associated with your account.

Create a new reseller

Add resellers to your account.

posthttps://api-eu.vonage.com/v1/10dlc/resellers

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Cuerpo de la solicitud
Tipo de contenido
application/json

company_name
string
Requerido
Max100
ejemploMicrosoft

Company name of the reseller.

phone
string
Requerido
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

email
string
Requerido
Max100
ejemplojohn.doe@microsoft.com

Valid email address of reseller contact.

Ejemplo Solicitar

{
   "company_name": "Microsoft",
   "phone": "123123222334",
   "email": "john.doe@microsoft.com"
}

Respuestas
Tipo de contenido
application/json

Created

id
string
ejemplo5782db87-a867-4ccd-a0b5-1b7203cc438c

Unique identifier assigned to the reseller.

tcr_reseller_id
string

Unique identifier assigned to the reseller by the registry. This field is only present if the reseller is APPROVED.

company_name
string
Requerido
Max100
ejemploMicrosoft

Company name of the reseller.

phone
string
Requerido
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

email
string
Requerido
Max100
ejemplojohn.doe@microsoft.com

Valid email address of reseller contact.

status
string
Requerido
ejemploAPPROVED

Approval status of the reseller. Upon submitting a creation of a reseller, the status is set to PENDING. After review of your request, the status of the reseller will be set to either APPROVED or REJECTED. If the status is REJECTED, you should have the detailed reason of the rejection in the rejection_reason field.

Debe ser uno de:PENDINGAPPROVEDREJECTED
rejection_reason
string
ejemploYou are not allowed to register a reseller with this company name.

The reason why the reseller was rejected. This field is only populated when the status is REJECTED.

Ejemplo Respuesta

{
   "id": "5782db87-a867-4ccd-a0b5-1b7203cc438c",
   "tcr_reseller_id": "string",
   "company_name": "Microsoft",
   "phone": "123123222334",
   "email": "john.doe@microsoft.com",
   "status": "APPROVED",
   "rejection_reason": "You are not allowed to register a reseller with this company name."
}

List the resellers

List the resellers associated with your Account.

gethttps://api-eu.vonage.com/v1/10dlc/resellers

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Consulta Parámetros

page
integer
Min1
ejemplo2

Page of results to jump to

page_size
integer
ejemplo10

Number of results per page

Respuestas
Tipo de contenido
application/json

OK

next_page
string
Min1
Max512

page_token to access the next page.

previous_page
string
Min1
Max512

page_token to access the previous page.

last_page
string
Min1
Max512

page_token to access the last page.

first_page
string
Min1
Max512

page_token to access the first page.

_links
object
next
object

Link to the next page.

href
string
previous
object

Link to the previous page.

href
string
first
object

Link to the first page.

href
string
last
object

Link to the last page.

href
string
_embedded
object
resellers
array
id
string
ejemplo5782db87-a867-4ccd-a0b5-1b7203cc438c

Unique identifier assigned to the reseller.

tcr_reseller_id
string

Unique identifier assigned to the reseller by the registry. This field is only present if the reseller is APPROVED.

company_name
string
Requerido
Max100
ejemploMicrosoft

Company name of the reseller.

phone
string
Requerido
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

email
string
Requerido
Max100
ejemplojohn.doe@microsoft.com

Valid email address of reseller contact.

status
string
Requerido
ejemploAPPROVED

Approval status of the reseller. Upon submitting a creation of a reseller, the status is set to PENDING. After review of your request, the status of the reseller will be set to either APPROVED or REJECTED. If the status is REJECTED, you should have the detailed reason of the rejection in the rejection_reason field.

Debe ser uno de:PENDINGAPPROVEDREJECTED
rejection_reason
string
ejemploYou are not allowed to register a reseller with this company name.

The reason why the reseller was rejected. This field is only populated when the status is REJECTED.

Ejemplo Respuesta

{
   "next_page": "string",
   "previous_page": "string",
   "last_page": "string",
   "first_page": "string",
   "_links": {
      "next": {
         "href": "string"
      },
      "previous": {
         "href": "string"
      },
      "first": {
         "href": "string"
      },
      "last": {
         "href": "string"
      }
   },
   "_embedded": {
      "resellers": [
         {
            "id": "5782db87-a867-4ccd-a0b5-1b7203cc438c",
            "tcr_reseller_id": "string",
            "company_name": "Microsoft",
            "phone": "123123222334",
            "email": "john.doe@microsoft.com",
            "status": "APPROVED",
            "rejection_reason": "You are not allowed to register a reseller with this company name."
         }
      ]
   }
}

Get a reseller

Get a reseller

gethttps://api-eu.vonage.com/v1/10dlc/resellers/:reseller_id

Autenticación

ClaveDescripciónDóndeEjemplo
Authorization

Clave API codificada en Base64 y secreto unidos por dos puntos.
Seguir leyendo

Headers

Basic <base64>

Ruta Parámetros

reseller_id
string
Requerido
ejemplo5782db87-a867-4ccd-a0b5-1b7203cc438c

Unique identifier assigned to the reseller.

Respuestas
Tipo de contenido
application/json

OK

id
string
ejemplo5782db87-a867-4ccd-a0b5-1b7203cc438c

Unique identifier assigned to the reseller.

tcr_reseller_id
string

Unique identifier assigned to the reseller by the registry. This field is only present if the reseller is APPROVED.

company_name
string
Requerido
Max100
ejemploMicrosoft

Company name of the reseller.

phone
string
Requerido
ejemplo123123222334

Valid mobile phone number in E.164 international format without the + prefix. It is required field for SoleProprietor brand.

email
string
Requerido
Max100
ejemplojohn.doe@microsoft.com

Valid email address of reseller contact.

status
string
Requerido
ejemploAPPROVED

Approval status of the reseller. Upon submitting a creation of a reseller, the status is set to PENDING. After review of your request, the status of the reseller will be set to either APPROVED or REJECTED. If the status is REJECTED, you should have the detailed reason of the rejection in the rejection_reason field.

Debe ser uno de:PENDINGAPPROVEDREJECTED
rejection_reason
string
ejemploYou are not allowed to register a reseller with this company name.

The reason why the reseller was rejected. This field is only populated when the status is REJECTED.

Ejemplo Respuesta

{
   "id": "5782db87-a867-4ccd-a0b5-1b7203cc438c",
   "tcr_reseller_id": "string",
   "company_name": "Microsoft",
   "phone": "123123222334",
   "email": "john.doe@microsoft.com",
   "status": "APPROVED",
   "rejection_reason": "You are not allowed to register a reseller with this company name."
}

Errores

La siguiente es una lista no exhaustiva de códigos de error que pueden producirse al utilizar esta API.

Estos códigos se suman a cualquiera de nuestros códigos de error genéricos.

CódigoInformación
brand-conflict

Descripción

A conflict when a brand is being created or edited and there is an issue with a 3rd party vendor.

Resolución

Ensure all required fields have values and there are no errors in those values. If the error persists, contact support.

brand-parameters

Descripción

There are errors in the brand data submitted.

Resolución

Ensure all required fields have values included and correct any errors to values in the specified fields.

invalid-usecase-data

Descripción

There are errors in the data submitted for use case qualification.

Resolución

Ensure all required fields have values included and correct any errors to values in the specified fields.

use-case-denied

Descripción

The use case requested has been denied for this brand.

Resolución

Ensure your use case does not require additional brand vetting or pre/post Mobile Network Operator approval.

vetting-conflict

Descripción

A conflict during the brand vetting request has occurred.

Resolución

If the error persists, contact support.

invalid-vetting-data

Descripción

There are errors in the vetting request data submitted.

Resolución

Ensure all required fields have values and correct any errors to values in the specified fields.

invalid-json

Descripción

Your request cannot be parsed.

Resolución

Ensure there are no invalid characters or values in your request.

brand-not-qualified

Descripción

A conflict when a campaign is being created under a brand that hasn't qualified for the specified use case.

Resolución

Verify the brand use case qualifies before submitting the campaign.

invalid-campaign-data

Descripción

There are errors in the campaign data submitted.

Resolución

Ensure all required fields have values and correct any errors to values in the specified fields.

numbers-already-linked

Descripción

The number you are attempting to link is already linked to another campaign.

Resolución

You must link a unique number to a campaign. Link a different number to this campaign.

invalid-number-data

Descripción

There are errors in the number data submitted.

Resolución

Ensure all required fields have values and correct any errors to values in the specified fields.