Create or Update RCS Campaign

Create a new RCS campaign or update an existing one. <Note> **To create a new campaign:** Omit `campaignId` — one will be generated automatically. **Before you start:** Create a [brand](/api-reference/brands/upsert) first — you'll need its `id` for the [`brand`](#request.body.brand) field. All fields are **required** unless specified otherwise, and will be validated when [submitted](/api-reference/campaigns/rcs/submit). </Note>

Authentication

PINNACLE-API-KEYstring
API Key authentication via header

Request

This endpoint expects an object.
agentobjectOptional
Create an agent for the campaign.
brandstringOptional
Unique identifier for the brand.
campaignIdstringOptional
Unique identifier for the campaign.
expectedAgentResponseslist of stringsOptional

List of what the agent might say to users. See the Expected Agent Responses section for requirements.

Limit: 1 to 5

useCaseobjectOptional
Use case classification for the campaign.
optInTermsAndConditionsstringOptional

Details on how opt-in is acquired. If it is done through a website or app, provide the link. See the Opt-In Terms and Conditions section for requirements.

messagingTypeenumOptional

Type of message the agent sends.

OTP: One time passwords or verification codes.
TRANSACTIONAL: Account updates, alerts, or notifications.
PROMOTIONAL: Marketing, sales, or offers.
MULTI_USE: Mixed message types.

Allowed values:
carrierDescriptionstringOptional

Description of the agent’s purpose, shown to carriers for approval. See the Carrier Description section for requirements.

keywordsobjectOptional
trafficobjectOptional
agentTriggersstringOptional

Explanation of how the agent is triggered. This includes how the first message is delivered, whether messages follow a schedule or triggered by user actions, and any external triggers. See the Agent Triggers section for requirements.

interactionDescriptionstringOptional

Description of all agent interactions, including primary and secondary use cases. See the Interaction Description section for requirements.

isConversationalbooleanOptional

Whether the agent supports conversational flows or respond to P2A messages from the users. Set to false for one-way messages from agent to user.

ctaLanguagestringOptional

Required text that appears next to the opt-in checkbox for your opt-in form. This checkbox has to be unchecked by default. See the CTA Language section for requirements.

demoTriggerstringOptional

Instructions on how an external reviewer can trigger messages and an example flow from the agent. This is usually an inbound text message to the agent that will start a flow of messages between the agent and the user. See the Demo Trigger section for requirements.

Response

Successfully created or updated RCS campaign.
agentobject
Agent configured to the campaign.
agentIdstring
Agent's unique identifier.
brandobject
Brand associated with this campaign.
statusenum

Current review status of the campaign.

INCOMPLETE: Not submitted.

IN REVIEW: Being reviewed by carriers.

VERIFIED: Approved and ready to send messages.

FAILED: Issues and errors related to the campaign’s details.

Allowed values:
campaignIdstring or null

Unique identifier for the campaign. This identifier is a string that always begins with the prefix rcs_, for example: rcs_1234567890.

expectedAgentResponseslist of strings or null

List of what the agent might say to users. See the Expected Agent Responses section for requirements.

useCaseobject or null
Use case classification for the campaign.
optInTermsAndConditionsstring or null

Details on how opt-in is acquired. If it is done through a website or app, provide the link. See the Opt-In Terms and Conditions section for requirements.

messagingTypeenum or null

Type of message the agent sends.

OTP: One time passwords or verification codes.
TRANSACTIONAL: Account updates, alerts, or notifications.
PROMOTIONAL: Marketing, sales, or offers.
MULTI_USE: Mixed message types.

Allowed values:
carrierDescriptionstring or null

Description of the agent’s purpose, shown to carriers for approval. See the Carrier Description section for requirements.

keywordsobject or null
trafficobject or null
agentTriggersstring or null

Explanation of how the agent is triggered. This includes how the first message is delivered, whether messages follow a schedule or triggered by user actions, and any external triggers. See the Agent Triggers section for requirements.

interactionDescriptionstring or null

Description of all agent interactions, including primary and secondary use cases. See the Interaction Description section for requirements.

isConversationalboolean or null

Whether the agent supports conversational flows or respond to P2A messages from the users. Set to false for one-way messages from agent to user.

ctaLanguagestring or null

Required text that appears next to the opt-in checkbox for your opt-in form. This checkbox has to be unchecked by default. See the CTA Language section for requirements.

demoTriggerstring or null

Instructions on how an external reviewer can trigger messages and an example flow from the agent. This is usually an inbound text message to the agent that will start a flow of messages between the agent and the user. See the Demo Trigger section for requirements.

Errors