Skip to content
This repository has been archived by the owner on Nov 29, 2023. It is now read-only.

Commit

Permalink
Merge pull request #809 from Bandwidth/MV-7602
Browse files Browse the repository at this point in the history
MV-7602: Updating CSP Campaign doc
  • Loading branch information
nirmitpatel authored Nov 8, 2022
2 parents 7a3b731 + 79a7422 commit 6ca48c2
Showing 1 changed file with 84 additions and 18 deletions.
102 changes: 84 additions & 18 deletions site/docs/messaging/campaign-management/csp/campaign-api.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ This walks through how to programmatically provision, manage and view your campa
* You have [registered a brand](../reseller-brand-api)

## Important Notes
* We only support campaigns that have been approved by all carriers participating through TCR.
* We only support campaigns that have been approved by all carriers participating through TCR.
While provisioning your campaigns through Bandwidth /campaigns API, they will automatically provision to all participating carriers.
* If you get a '403 Unauthorized' error response while making an HTTP Request to any of the Import endpoints,
* If you get a '403 Unauthorized' error response while making an HTTP Request to any of the Import endpoints,
you will need to reach out to the Implementation team to get the Campaign Management role assigned to your API User.
* TCR currently has rate limits set on their HTTP REST endpoints. During high volume events, it is possible our APIs will be rate limited and respond with '429 Too Many Requests'.

Expand Down Expand Up @@ -91,7 +91,7 @@ HTTP/1.1 429 Too Many Requests
| `Usecase` | Yes | Campaign usecase. Must be of defined valid types |
| `SubUsecases` | No (Required for some usecases) | Campaign sub-usecases. Must be of defined valid types |
| `ResellerId` | No | Alphanumeric identifier of the reseller that you want to associate with this campaign. |
| `Description` | Yes | Summary description of this campaign. Max length 4096 |
| `Description` | Yes | Summary description of this campaign. Min length 40. Max length 4096 |
| `EmbeddedLink` | No | Does message generated by the campaign include URL link in SMS? Default false |
| `EmbeddedPhone` | No | Does message generated by the campaign include phone number in SMS? Default false |
| `NumberPool` | No | Does campaign utilize pool of phone numbers? Default false |
Expand All @@ -100,13 +100,18 @@ HTTP/1.1 429 Too Many Requests
| `SubscriberOptIn` | No | Does campaign require subscriber to opt-in before SMS is sent to subscriber? Default false |
| `SubscriberOptOut` | No | Does campaign support subscriber opt-out keyword(s)? Default false |
| `SubscriberHelp` | No | Have you implemented a response to the HELP keyword informing customers of how they can contact the message sender? Default false |
| `Sample1` | Yes | Message sample. Some campaign tiers require 1 or more message samples. Max length 1024 |
| `Sample2` | No (Required for some usecases) | Message sample. Some campaign tiers require 2 or more message samples. Max length 1024 |
| `Sample3` | No (Required for some usecases) | Message sample. Some campaign tiers require 3 or more message samples. Max length 1024 |
| `Sample4` | No (Required for some usecases) | Message sample. Some campaign tiers require 4 or more message samples. Max length 1024 |
| `Sample5` | No (Required for some usecases) | Message sample. Some campaign tiers require 5 message samples. Max length 1024 |
| `MessageFlow` | No | Message flow description. Max length 2048 |
| `HelpMessage` | Yes | Help message of the campaign. Max length 255 |
| `Sample1` | Yes | Message sample. Some campaign tiers require 1 or more message samples. Min length 20. Max length 1024 |
| `Sample2` | No (Required for some usecases) | Message sample. Some campaign tiers require 2 or more message samples. Min length 20. Max length 1024 |
| `Sample3` | No (Required for some usecases) | Message sample. Some campaign tiers require 3 or more message samples. Min length 20. Max length 1024 |
| `Sample4` | No (Required for some usecases) | Message sample. Some campaign tiers require 4 or more message samples. Min length 20. Max length 1024 |
| `Sample5` | No (Required for some usecases) | Message sample. Some campaign tiers require 5 message samples. Min length 20. Max length 1024 |
| `MessageFlow` | Yes | Message flow description. Min length 40. Max length 2048 |
| `HelpMessage` | Yes | Help message of the campaign. Min length 20. Max length 320 |
| `HelpKeywords` | No | Help keywords of the campaign. Max length 320. TCR will default the value to HELP. Multiple keywords are comma separated without space. |
| `OptinMessage` | No | Opt-In message of the campaign. Min length 20. Max length 320 |
| `OptinKeywords` | No | Opt-In keywords of the campaign. Max length 320. Multiple keywords are comma separated without space. |
| `OptoutMessage` | Yes | Opt-Out message of the campaign. Min length 20. Max length 320 |
| `OptoutKeywords` | No | Opt-Out keywords of the campaign. Max length 320. TCR will default the value to STOP. Multiple keywords are comma separated without space. |
| `AffiliateMarketing` | No | Is affiliate marketing being used (or was used in the creation of the campaign)? Default false |
| `ReferenceId` | No | Caller supplied campaign reference ID. If supplied, the value must be unique across all submitted campaigns. Can be used to prevent duplicate campaign registrations. Max length 50 |
| `AutoRenewal` | Yes | Campaign subscription auto-renewal status. Default true |
Expand Down Expand Up @@ -140,6 +145,13 @@ Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=
<AffiliateMarketing>false</AffiliateMarketing>
<AgeGated>false</AgeGated>
<AutoRenewal>true</AutoRenewal>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
</Campaign>
```

Expand Down Expand Up @@ -171,6 +183,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<SubscriberHelp>true</SubscriberHelp>
<Sample1>Test Sample</Sample1>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
<MnoMetadataList>
<MnoMetadata>
<MnoId>10017</MnoId>
Expand Down Expand Up @@ -236,13 +255,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
| Campaign | Mandatory | Editable | Description |
|:---------------------------|:----------|:---------|:------------------------------------------------------|
| `ResellerId` | No | Yes | Alphanumeric identifier of the reseller that you want to associate with this campaign. |
| `Sample1` | No | Yes | Message sample. Some campaign tiers require 1 or more message samples. Max length 1024 |
| `Sample2` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 2 or more message samples. Max length 1024 |
| `Sample3` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 3 or more message samples. Max length 1024 |
| `Sample4` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 4 or more message samples. Max length 1024 |
| `Sample5` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 5 message samples. Max length 1024 |
| `MessageFlow` | No | Yes | Message flow description. Max length 2048 |
| `HelpMessage` | No | Yes | Help message of the campaign. Max length 255 |
| `Sample1` | No | Yes | Message sample. Some campaign tiers require 1 or more message samples. Min length 20. Max length 1024 |
| `Sample2` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 2 or more message samples. Min length 20. Max length 1024 |
| `Sample3` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 3 or more message samples. Min length 20. Max length 1024 |
| `Sample4` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 4 or more message samples. Min length 20. Max length 1024 |
| `Sample5` | No (Required for some usecases) | Yes | Message sample. Some campaign tiers require 5 message samples. Min length 20. Max length 1024 |
| `MessageFlow` | Yes | Yes | Message flow description. Min length 40. Max length 2048 |
| `HelpMessage` | Yes | Yes | Help message of the campaign. Min length 20. Max length 320 |
| `AutoRenewal` | No | Yes | Campaign subscription auto-renewal status. Default true |
| `BrandId` | Yes | No | Alphanumeric identifier of the brand associated with this campaign |
| `Vertical` | Yes | No | Business/industry segment of this campaign. Must be of defined valid types |
Expand All @@ -259,6 +278,11 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
| `SubscriberHelp` | No | No | Have you implemented a response to the HELP keyword informing customers of how they can contact the message sender? Default false |
| `AffiliateMarketing` | No | No | Is affiliate marketing being used (or was used in the creation of the campaign)? Default false |
| `ReferenceId` | No | No | Caller supplied campaign reference ID. If supplied, the value must be unique across all submitted campaigns. Can be used to prevent duplicate campaign registrations. Max length 50 |
| `HelpKeywords` | No | Yes | Help keywords of the campaign. Max length 320. TCR will default the value to HELP. Multiple keywords are comma separated without space. |
| `OptinMessage` | No | Yes | Opt-In message of the campaign. Min length 20. Max length 320 |
| `OptinKeywords` | No | Yes | Opt-In keywords of the campaign. Max length 320. Multiple keywords are comma separated without space. |
| `OptoutMessage` | Yes | Yes | Opt-Out message of the campaign. Min length 20. Max length 320 |
| `OptoutKeywords` | No | Yes | Opt-Out keywords of the campaign. Max length 320. TCR will default the value to STOP. Multiple keywords are comma separated without space. |

### Examples

Expand Down Expand Up @@ -306,6 +330,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<SubscriberHelp>true</SubscriberHelp>
<Sample1>test update sample</Sample1>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
</Campaign>
</CampaignResponse>
```
Expand Down Expand Up @@ -379,6 +410,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<SubscriberHelp>true</SubscriberHelp>
<Sample1>test update sample</Sample1>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
<MnoMetadataList>
<MnoMetadata>
<MnoId>10035</MnoId>
Expand Down Expand Up @@ -493,6 +531,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<SubscriberHelp>true</SubscriberHelp>
<Sample1>test</Sample1>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
<MnoStatusList>
<MnoStatus>
<MnoName>ATT</MnoName>
Expand Down Expand Up @@ -530,6 +575,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<Sample1>test</Sample1>
<Sample2>test 15</Sample2>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START, YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP, NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
<MnoStatusList>
<MnoStatus>
<MnoName>ATT</MnoName>
Expand Down Expand Up @@ -613,6 +665,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<SubscriberHelp>true</SubscriberHelp>
<Sample1>test</Sample1>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
<MnoStatusList>
<MnoStatus>
<MnoName>ATT</MnoName>
Expand Down Expand Up @@ -649,6 +708,13 @@ Location: https://dashboard.bandwidth.com/api/accounts/{accountId}/campaignManag
<SubscriberHelp>true</SubscriberHelp>
<Sample1>test</Sample1>
<AffiliateMarketing>false</AffiliateMarketing>
<MessageFlow>This is a sample Message Flow of my campaign.</MessageFlow>
<HelpKeywords>HELP</HelpKeywords>
<HelpMessage>This is a sample Help Message of my campaign.</HelpMessage>
<OptinKeywords>START,YES</OptinKeywords>
<OptinMessage>This is a sample Opt-In Message of my campaign.</OptinMessage>
<OptoutKeywords>STOP,NO</OptoutKeywords>
<OptoutMessage>This is a sample Opt-Out Message of my campaign.</OptoutMessage>
<MnoStatusList>
<MnoStatus>
<MnoName>ATT</MnoName>
Expand Down Expand Up @@ -842,4 +908,4 @@ There are many line options you can add to a TN. This section showed just how to

For more info on TNs, please see [Number Management](../../../../numbers).<br/>

---
---

0 comments on commit 6ca48c2

Please sign in to comment.