Create Test Agent

Create a new RCS test agent for development and testing. ## Overview Test agents let you build and test full RCS functionality — rich cards, carousels, buttons, quick replies, and media messages — without going through the full carrier review process. Messages from test agents can only be sent to [whitelisted phone numbers](/api-reference/rcs-agents/test/whitelist-number). ## Limits - **Maximum 5 test agents per account.** ## Image Requirements | Image | Format | Max Size | |-------|--------|----------| | Logo | JPEG, PNG | 50 KB | | Hero | JPEG, PNG | 200 KB | ## After Creation Once your test agent is created, you'll need to: 1. **Whitelist test phone numbers** using [`POST /rcs/test/agents/{agentId}/whitelist`](/api-reference/rcs-agents/test/whitelist-number). 2. **Accept the tester invite** on each whitelisted device. 3. **Send messages** using [`POST /messages/send/rcs`](/api-reference/messages/send-rcs) with the returned agent ID as the `from` field. > **2-Minute Cooldown** > > After creating a test agent, there is a mandatory 2-minute cooldown before you can whitelist phone numbers. > This is a requirement imposed by Google's RBM platform.

Authentication

PINNACLE-API-KEYstring
API Key authentication via header

Request

This endpoint expects an object.
displayNamestringRequired1-40 characters
Display name of the agent shown to users in RCS conversations. Must be between 1 and 40 characters.
descriptionstringRequired1-100 characters
Short description of what the agent does. Shown to users in the agent's profile. Must be between 1 and 100 characters.
logoUrlstringRequiredformat: "uri"
URL to the agent's logo image. Displayed as the agent's avatar in conversations. **Requirements:** - Format: JPEG or PNG - Max file size: 50 KB - Recommended: Square aspect ratio
heroUrlstringRequiredformat: "uri"
URL to the agent's hero banner image. Displayed at the top of the agent's profile. **Requirements:** - Format: JPEG or PNG - Max file size: 200 KB - Recommended: Landscape aspect ratio
phoneNumberslist of objectsRequired
Contact phone numbers displayed on the agent's profile. At least 1 and up to 3 entries.
emailslist of objectsRequired
Contact email addresses displayed on the agent's profile. At least 1 and up to 3 entries.
websiteslist of objectsRequired
Website links displayed on the agent's profile. At least 1 and up to 3 entries.
privacyUrlstringRequiredformat: "uri"
URL to the agent's privacy policy.
termsUrlstringRequiredformat: "uri"
URL to the agent's terms and conditions.
colorstringRequiredformat: "^#([0-9A-Fa-f]{6})$"
The agent's brand color as a hex color code. Used for UI accents in the RCS conversation. Must have sufficient contrast with white for accessibility.
isConversationalbooleanRequired

Whether the agent supports two-way conversations. Set to true if the agent will respond to user messages. Set to false for send-only agents (e.g., notifications).

agentUseCaseenumOptional
The primary use case for the RCS agent. This helps carriers understand the purpose of the agent during review. - `TRANSACTIONAL` — Order confirmations, shipping updates, appointment reminders, and similar transactional notifications. - `PROMOTIONAL` — Marketing messages, offers, discounts, and promotional content. - `OTP` — One-time passwords and verification codes. - `MULTI_USE` — A combination of transactional, promotional, and/or OTP messaging.
Allowed values:

Response

The test agent was created successfully.

Use the returned id as the from field when sending RCS messages, and when whitelisting phone numbers.

idstring

The unique agent ID. Use this ID when sending messages, whitelisting numbers, and performing other agent operations. Always prefixed with agent_.

typeenum

The type of the agent. Test agents always have type TEST.

Allowed values:
serviceIdstring
The RCS service ID assigned to this agent by the carrier network. Used internally for routing messages. You can use this to construct RCS deep links manually.
detailsobject
The configuration details of an RCS agent, as returned by the GET endpoint.

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
500
Internal Server Error