> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.pinnacle.sh/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.pinnacle.sh/_mcp/server.

# Messaging Overview

> Orchestrate SMS, MMS, and RCS conversations with a single API.

Connect with customers on their preferred channels while managing every aspect of your messaging lifecycle through Pinnacle. Begin with our sending guide to get started quickly, then expand your capabilities with advanced message status tracking and inbound message handling as your needs grow.

#### [Send messages](/guides/messages/sending)

Build SMS, MMS, and RCS experiences — including blasts, reactions, and typing
indicators.

#### [Receive replies](/guides/messages/receiving)

Set up webhooks, track message statuses, and process inbound messages and
user events.

## Channels at a glance

| Channel | Best for                             | Sender                    | Highlights                                                                                                                                                                            |
| ------- | ------------------------------------ | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **SMS** | Alerts, 2FA, concise notifications   | 10DLC or toll-free number | Instant reach, text only                                                                                                                                                              |
| **MMS** | Rich promotions, media-heavy updates | 10DLC or toll-free number | [Images, GIFs, PDFs](https://app.pinnacle.sh/supported-file-types?type=MMS) alongside text                                                                                            |
| **RCS** | Interactive journeys, commerce flows | Approved RCS agent        | [Cards](https://app.pinnacle.sh/supported-file-types?type=RCS-CARD), [rich media](https://app.pinnacle.sh/supported-file-types?type=RCS-MEDIA), buttons, quick replies, read receipts |

## Before you send

* **Numbers or agent credentials.** Purchase a number or get an agent ID by registering an [RCS campaign](/guides/campaigns/rcs).
* **Campaign approval.** Ensure each number is attached to an active 10DLC/toll-free campaign, or your RCS agent is approved.
* **API access.** Create an API key on the [Pinnacle Dashboard](https://app.pinnacle.sh/dashboard/development/api-keys) and store it securely.

> **Optional: Validate first**
>
> Use [`POST /messages/validate/sms`](/api-reference/messages/validate-sms),
> [`POST /messages/validate/mms`](/api-reference/messages/validate-mms), and
> [`POST /messages/validate/rcs`](/api-reference/messages/validate-rcs) to allow
> you to validate content without sending. This will help you catch unsupported
> files, return media size, display segmentation, and give cost estimates before
> hitting send.

## Send in three steps

#### Compose

Craft the SMS, MMS, or RCS message to be sent.

#### Deliver

Use the respective send endpoint/method.

* SMS: [`POST /messages/send/sms`](/api-reference/messages/send-sms).
* MMS: [`POST /messages/send/mms`](/api-reference/messages/send-mms).
* RCS: [`POST /messages/send/rcs`](/api-reference/messages/send-rcs).

#### Track

Poll [`GET /messages/{messageId}`](/api-reference/messages/get) to get
updates for your message or subscribe to webhooks to monitor status changes
and inbound replies. See our [receiving guide](/guides/messages/receiving)
for more details.

## Next up

* Keeping track of conversations? Explore the [Conversations API](/api-reference/conversations).
* Want to broadcast to an audience? See [Blasts](/guides/messages/sending#broadcasting-to-audiences) in the sending guide.
* Need to react to messages with emoji? See [Reactions](/guides/messages/sending#reacting-to-messages).
* Ready to receive messages, message statuses, and user events? Continue to our [receiving guide](/guides/messages/receiving).