Update campaign

View as MarkdownOpen in Claude

Updates a campaign.

Permissions

The API token used to authenticate must have the following scope(s) enabled to make a successful request: Numbers.

Learn more about API scopes.

Authentication

AuthorizationBasic
SignalWire Basic Authentication using Project ID and API Token. The client sends HTTP requests with the Authorization header containing the word Basic followed by a space and a base64-encoded string of project_id:token. The project ID will be used as the username and the API token as the password. Example: ``` Authorization: Basic base64(project_id:token) ```

Path parameters

idstringRequiredformat: "uuid"
Unique ID of the campaign.

Request

This endpoint expects an object.
namestringOptional
A name for the campaign.

Response

The request has succeeded.
idstringformat: "uuid"
The unique identifier of the campaign.
namestring
A name for the campaign.
statestring
The current state of the campaign.
sms_use_casestring
An SMS Use Case category for the campaign (2FA, ACCOUNT_NOTIFICATION, AGENTS_FRANCHISES, CARRIER_EXEMPT, CHARITY, CUSTOMER_CARE, DELIVERY_NOTIFICATION, EMERGENCY, FRAUD_ALERT, HIGHER_EDUCATION, K12_EDUCATION, LOW_VOLUME_MIXED, MARKETING, MIXED, POLITICAL, POLITICAL_SECTION_527, POLLING_VOTING, PROXY, PUBLIC_SERVICE_ANNOUNCEMENT, SECURITY_ALERT, SOCIAL, SWEEPSTAKE, TRIAL, UCAAS_HIGH_VOLUME, UCAAS_LOW_VOLUME).
sub_use_caseslist of strings

A sub use case category for MIXED or LOW_VOLUME_MIXED campaigns (CUSTOMER_CARE, HIGHER_EDUCATION, POLLING_VOTING, PUBLIC_SERVICE_ANNOUNCEMENT, MARKETING, SECURITY_ALERT, 2FA, ACCOUNT_NOTIFICATION, DELIVERY_NOTIFICATION, FRAUD_ALERT).

campaign_verify_tokenstring

Campaign Verify token. Required if sms use case is POLITICAL_SECTION_527.

descriptionstring
A description for the campaign. Please use at least 40 characters.
sample1string

Sample message template/content. At least two samples are required and up to five can be provided. Please use at least 20 characters.

sample2string
Sample 2.
sample3string
Sample 3.
sample4string
Sample 4.
sample5string
Sample 5.
dynamic_templatesstring
If your messaging content will be modified in any way beyond what you shared in your templates, please describe the nature of how the content will change.
message_flowstring

Please describe the call to action/message flow your intended recipients will experience.

opt_in_messagestring
Please share the message subscribers receive when they opt in.
opt_out_messagestring
Please share the message subscribers receive when they opt out.
help_messagestring
Please share the message subscribers receive when they request help.
opt_in_keywordsstringDefaults to START
Opt in keywords that subscribers can use.
opt_out_keywordsstringDefaults to STOP
Opt out keywords that subscribers can use.
help_keywordsstringDefaults to HELP
Help keywords that subscribers can use.
number_pooling_requiredboolean
Will 50 or more numbers be used with this single campaign? If so, please enter true.
number_pooling_per_campaignstring
If you will be using number pooling, please provide an explanation as to why it is needed.
direct_lendingboolean
Will this campaign include content related to direct lending or other loan agreements?
embedded_phoneboolean

Are you using an embedded phone number (except the required HELP information contact phone number)?

age_gated_contentboolean
Will this campaign include any age gated content as defined by carrier and CTA guidelines?
lead_generationboolean
Is there any intent of this campaign to generate leads?
csp_campaign_referencestring

If you are your own Campaign Service Provider, what is the approved Campaign ID? (Mandatory for CSPs, otherwise please omit)

status_callback_urlstring

Optional: Specify a URL to receive webhook notifications when your campaign’s state changes. See the 10DLC status callback docs for the webhook payload.

created_atdatetime
Timestamp when the campaign was created.
updated_atdatetime
Timestamp when the campaign was last updated.

Errors

401
Unauthorized Error
404
Not Found Error
422
Unprocessable Entity Error
500
Internal Server Error