Campaign Builder
For authentication,The Username and Password should be sent as a Basic Auth tokens in the Authorization header of the request. Create account.
API endpoint:
Description:
Campaign builder Step 1: Qualify brand for all usecases This operation determines if a brand is qualified to run a campaign across participating MNOs for all use-case types. If the brand qualifies to run the campaign on one or more MNOs, this API call returns restrictions (i.e. no embedded link), process (i.e. manual review), pricing (e.g. surcharge) and MNO specific attributes (e.g. AT&T message class). If the brand is not qualified to run the desired usecase on any MNO, CSP may consider having brand vetted to achieve access to broader usecases.
Request example:
curl --location --request GET 'https://api.txt.ws/v3/campaignBuilder_get/{brandId}' \
--header 'Accept: application/json' \
--header 'Authorization: Basic {api_key:secret_key}'
Parameter | Type | Description |
brandId | Required string | Brand alphanumeric identifier (prefixed with letter 'B') |
API endpoint:
Description:
Campaign builder Step 2: Create new campaign Creates a new TCR campaign and optionally sets tags on it. If the submitted campaign request meets the requirement for at least one MNO, the Campaign is provisioned in TCR and the campaign registration fee will be charged to the CSP account. The newly created campaign is assigned a 'campaign_id' in TCR. Additionally, the JSON response contains MNO metadata pertaining to the submitted campaign. Please refer to the response JSON data structure description for more information about MNO metadata. Standard use-case campaigns are approved upon submission while some special use-case campaigns require manual approval by MNOs. You can query for campaign MNO operation status via an API call to GET /campaign/{campaignId}/operationStatus. Campaigns created from mock brands are not functional campaigns. They cannot be shared upstream to CNP and are not registered in NetNumber OSR. All mock brands will be automatically deleted 30 days after initial registration. Deletion will cascade across all campaigns created from mock brands.
Request example:
curl --location --request GET 'https://api.txt.ws/v3/campaign_update/{campaignId}' \
--header 'Accept: application/json' \
--header 'Authorization: Basic {api_key:secret_key}' \
--data-raw '{
"resellerId": "string",
"description": "string",
"sample1": "string",
"sample2": "string",
"sample3": "string",
"sample4": "string",
"sample5": "string",
"messageFlow": "string",
"helpMessage": "string",
"autoRenewal": true
}'
Parameter | Type | Description |
brandId | Required string | Alphanumeric identifier of the brand associated with this campaign. |
vertical | Optional string | Business/industry segment of this campaign. Must be of defined valid types. Use /registry/enum/vertical operation to retrieve verticals available for given brand, vertical combination. |
usecase | Required string | Campaign usecase. Must be of defined valid types. Use /registry/enum/usecase operation to retrieve usecases available for given brand. |
subUsecases | Optional string | Campaign sub-usecases. Must be of defined valid sub-usecase types. Use /registry/enum/usecase operation to retrieve list of valid sub-usecases |
resellerId | Optional string | Alphanumeric identifier of the reseller that you want to associate with this campaign. |
description | Required string | Summary description of this campaign. |
embeddedLink | Optional string | Does message generated by the campaign include URL link in SMS? |
embeddedPhone | Optional string | Does message generated by the campaign include phone number in SMS? |
numberPool | Optional string | Does campaign utilize pool of phone nubers? |
ageGated | Optional string | Age gated content in campaign. |
directLending | Optional string | |
subscriberOptin | Optional string | Does campaign require subscriber to opt-in before SMS is sent to subscriber? |
subscriberOptout | Optional string | Does campaign support subscriber opt-out keyword(s)? |
subscriberHelp | Optional string | Does campaign responds to help keyword(s)? |
sample1 | Optional string | Message sample. Some campaign tiers require 1 or more message samples. |
sample2 | Optional string | Message sample. Some campaign tiers require 2 or more message samples. |
sample3 | Optional string | Message sample. Some campaign tiers require 3 or more message samples. |
sample4 | Optional string | Message sample. Some campaign tiers require 4 or more message samples. |
sample5 | Optional string | Message sample. Some campaign tiers require 5 or more message samples. |
messageFlow | Optional string | Message flow description. |
helpMessage | Optional string | Help message of the campaign. |
mnoIds | Optional string | Submit campaign to given list of MNOs by MNO's network ID. Default is all MNOs if no value provided. |
referenceId | Optional string | Caller supplied campaign reference ID. If supplied, the value must be unique across all submitted campaigns. Can be used to prevent duplicate campaign registrations. |
autoRenewal | Optional string | Campaign subscription auto-renewal option. If set to true, then campaign will automatically renewal at end of billing cycle. |
tag | Optional string | Tags to be set on the Brand. |
affiliateMarketing | Optional string | Does message content controlled by affiliate marketing other than the brand? |
API endpoint:
Description:
Deactivate my campaignBuilder
Request example:
curl --location --request DELETE 'https://api.txt.ws/v3/campaignBuilder_delete/{campaignId}' \
--header 'Accept: application/json' \
--header 'Authorization: Basic {api_key:secret_key}'
Parameter | Type | Description |
campaignId | Required string | campaignId |