For the complete documentation index, see llms.txt. This page is also available as Markdown.

RCS

To enable this feature, please contact the technical team

URL

POST https://api.smspartner.fr/v1/rcs/send

Rate limit: 30 requests / 60 seconds

Required parameters

Name
Value

apiKey

Your API key.

phoneNumbers

Recipient phone numbers. To send multiple messages, the numbers must be separated by commas. The limit per request is 500 numbers. They can be: in national format (06xxxxxxxx) or international format (+336xxxxxxxx), for French numbers; in international format (+496xxxxxxxx), for non-French numbers.

isUnicode

1

richContent

The rich content of the RCS message. See the Rich content section. Required, unless modelToken is provided (see Send from a template).

Optional parameters

Name
Value

modelToken

Identifier (32 characters) of an RCS template saved on the platform. Use it instead of richContent: the message content then comes from the template. See the Send from a template section. Available in Message templates (“Identifier” column) or in the template editor (“API Identifier” panel). Only RCS templates (text, rich card, carousel, file) have an identifier; SMS templates cannot be used here. modelToken and richContent are mutually exclusive.

scheduledDeliveryDate

Send date of the SMS, in dd/mm/YYYY format. Only set this if you want the SMS to be sent later.

time

Send time of the SMS (0-24 format), required if scheduledDeliveryDate is set.

minute

Send minute of the SMS (0-55 format, in five-minute intervals), required if scheduledDeliveryDate is set.

urlResponse

Callback URL for RCS events (e.g. http://www.myresponseurl) — Clicks — Reads — Opt-out requests (STOP) — Recipient replies.

urlDlr

Callback URL for delivery receipts (e.g. http://www.mydlrurl).

scheduledAt

Lets you schedule the SMS send, as a single value, in two possible forms: 1. Absolute date — accepted formats: – 2026-05-20 10:15 or 2026-05-20 10:15:00 – 2026-05-20T10:15:00 (ISO 8601) – 20/05/2026 10:15 – 2026-05-20 or 20/05/2026 (sends at midnight that day) 2. Relative delay — send in X time units from now: – +10 minutes, +2 hours, +3 days, +1 week, +1 month (English) – +10 minutes, +2 heures, +3 jours, +1 semaine, +1 mois, +1 an (French, abbreviations tolerated: min, mn, h, j, hrs) – The + is optional (10 minutes is equivalent to +10 minutes) Behavior: – If scheduledAt is set, it replaces the older scheduledDeliveryDate / time / minute parameters (kept for backward compatibility, but scheduledAt is now recommended). – The computed time is rounded up to the next 5-minute slot (a send can only be scheduled every 5 minutes: 10:15, 10:20, 10:25...). – The resulting date must be in the future, and at most 3 months ahead. Example: { "apiKey": "xxxxx", "phoneNumbers": "+33600000000", "message": "Your appointment is coming up", "scheduledAt": "+2 hours" } Errors: if the format is not recognized either as an absolute date or a relative delay, or if the resolved date is in the past / more than 3 months ahead, the API returns error code 49 with an explicit message.

Rich content

Suggestions

See the Opening a URL in a WebView section for details on the parameters.

Opening a URL in a WebView

The "Open a URL" action (openUrlAction) can open the link in a WebView embedded in the conversation instead of the external browser, thanks to optional parameters.

These parameters are optional and backward-compatible: without them, the link opens in the browser (application = BROWSER).

Name
Value

url

Required. URL to open. Must be a valid URL (http/https).

application

Optional. How the link opens: BROWSER (default, external browser) or WEBVIEW (window embedded in the conversation).

webviewViewMode

WebView size: FULL (full screen), TALL (3/4) or HALF (half). Required when application = WEBVIEW, and must not be provided otherwise.

description

Optional. Accessibility text describing the WebView (recommended in WEBVIEW mode). 100 characters maximum.

These parameters are valid everywhere an openUrlAction suggestion is accepted: text message suggestions, rich-card buttons and buttons of each carousel card.

If a value is invalid, the API returns an error with one of the following codes: 24 (invalid application), 25 (invalid webviewViewMode), 26 (webviewViewMode provided without application = WEBVIEW), 27 (webviewViewMode missing while application = WEBVIEW), 28 (description longer than 100 characters).

Send from a template (modelToken)

Instead of providing the full content in richContent on every call, you can save that content once as an RCS template on the platform, then send it through the API by simply passing its identifier (modelToken). Every send uses the current version of the template.

The identifier can also be pasted into our modules and connectors (PrestaShop, WooCommerce, Zapier, Make…) wherever an "RCS template identifier" is requested.

The identifier only designates the template to use. It does not expire, is not an authentication secret, and is recognized only for the account that owns the template (resolution based on the apiKey). The apiKey remains mandatory.

The modelToken provides the content, the API call still drives everything else (recipients, fallback sender, scheduling, tag, sandbox, callbacks…). All other validations (numbers, scheduling, field sizes, suggestions…) are identical to a standard RCS send and are applied after the template content has been injected.

Response code
Response

60

RCS template not found: the identifier does not match any RCS template in your account, or it points to an SMS template.

61

The RCS template is empty: the template exists but its content is empty or invalid (re-save it on the platform).

62

modelToken and richContent were sent in the same request (mutually exclusive).

RCS Scenario

An RCS scenario is an automated dialogue configured on the platform: an entry message, clickable suggestions and bot replies depending on the recipient's choices. To start a scenario from its identifier (scenarioToken), use the dedicated route:

RCS Scenario

Response

Supported media file types

RBM supports the following media types:

Content Type
Document Type
Extension
Compatible with Rich Cards

application/ogg

OGG Audio

.ogx

No

application/pdf

PDF

.pdf

No

audio/aac

AAC Audio

.aac

No

audio/mp3

MP3 Audio Format

.mp3

No

audio/mpeg

MPEG Audio

.mpeg

No

audio/mpg

MPG Audio

.mp3

No

audio/mp4

MP4 Audio

.mp4

No

audio/mp4-latm

MP4-latm Audio

.mp4

No

audio/3gpp

3GPP Audio

.3gp

No

image/jpeg

JPEG

.jpeg, .jpg

Yes

image/gif

GIF

.gif

Yes

image/png

PNG

.png

Yes

video/h263

H263 Video

.h263

Yes

video/m4v

M4V Video

.m4v

Yes

video/mp4

MP4 Video

.mp4

Yes

video/mpeg4

MPEG-4 Video

.mp4, .m4p

Yes

video/mpeg

MPEG Video

.mpeg

Yes

video/webm

WebM Video Format

.webm

Yes

Last updated