> For the complete documentation index, see [llms.txt](https://www.docpartner.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.docpartner.dev/api/sms-partner/rcs.md).

# RCS

{% hint style="info" %}
Pour activer cette fonctionnalité merci de [contacter l'équipe technique](https://www.smspartner.fr/contact/)
{% endhint %}

## URL

<mark style="color:green;">`POST`</mark> `https://api.smspartner.fr/v1/rcs/send`

{% hint style="warning" %}
La plateforme n’envoie pas de SMS commerciaux entre **20h et 8h en semaine et les dimanches et jours fériés** (restriction légale). Si un message SMS est envoyé, le message est **en pause jusqu’au prochain jour ouvrable à 8h**.\
Vous n’envoyez pas de SMS commerciaux ? Contactez nous pour désactiver cette restriction : <help@smspartner.fr>
{% endhint %}

#### **Paramètres obligatoires**

<table data-full-width="false"><thead><tr><th width="180">Nom</th><th>Valeur</th></tr></thead><tbody><tr><td><code>apiKey</code></td><td><a href="https://my.smspartner.fr/dashboard/api">Votre clé API</a></td></tr><tr><td><code>phoneNumbers</code></td><td><p>Numéros de téléphone des destinataires.<br>Pour l’envoi de plusieurs SMS les numéros doivent être séparés par des virgules. <strong>La limite d’envoi sur une seule requête est de 500 numéros.</strong><br>Ils peuvent être :</p><ul><li>au format national (06xxxxxxxx) ou international (+336xxxxxxxx), pour des numéros français.</li><li>au format international (+496xxxxxxxx), pour des numéros hors France.</li></ul></td></tr><tr><td><code>isUnicode</code></td><td>1</td></tr><tr><td><code>richContent</code></td><td><a href="#contenu-enrich">Voir ci-dessous</a></td></tr></tbody></table>

#### **Paramètres optionnels**

<table data-full-width="false"><thead><tr><th width="227">Nom</th><th>Valeur</th></tr></thead><tbody><tr><td><code>scheduledDeliveryDate</code></td><td>Date d’envoi du SMS, au format <code>dd/mm/YYYY</code>. A définir uniquement si vous souhaitez que les SMS soient envoyés en différé.</td></tr><tr><td><code>time</code></td><td>Heure d’envoi du SMS (format 0-24), obligatoire si <code>scheduledDeliveryDate</code> est défini.</td></tr><tr><td><code>minute</code></td><td>Minute d’envoi du SMS (format 0-55, par intervalle de cinq minutes), obligatoire si <code>scheduledDeliveryDate</code> est défini.</td></tr></tbody></table>

#### Contenu enrichi

{% tabs fullWidth="true" %}
{% tab title="Envoyer un texte" %}

```json
{
    "apiKey": "",
    "isUnicode": 1,
    "phoneNumbers": [
        "+33....."
    ],
    "richContent": {
        "conversation": {
            "text": ""
            "suggestions": [
                //Voir la section suggestions (4 maximum)
            ]
        }
    },
    
    //optionnel: Permet d'envoyer un SMS si le RCS n'est pas accepté sur l'appareil du destinataire
    "failover":{
        "sender":"...",
        "message": "ceci est un sms de basculement"
    }
}
```

{% endtab %}

{% tab title="Envoyer un fichier" %}

```json
{
   "apiKey": "",
   "phoneNumbers": [
       ""
   ],
   "isUnicode": 1,
   "richContent": {
       "conversation": {
           "file": {
                "media": {
                   "fileUrl": ""
               }
           },
           "suggestions": [
               //Voir la section suggestions (4 maximum)
           ]
       }
   },
   //optionnel: Permet d'envoyer un SMS si le RCS n'est pas accepté sur l'appareil du destinataire
   "failover":{
       "sender":"...",
       "message": "ceci est un sms de basculement"
   }
}
```

{% endtab %}

{% tab title="Envoyer une carte enrichie" %}

```json
{
   "apiKey": "",
   "phoneNumbers": [
       ""
   ],
   "isUnicode":1,
   "richContent": {
       "conversation": {
           "richCard": {
               "orientation": "VERTICAL", //VERTICAL ou HORIZONTAL
               "thumbnailImageAlignment":"LEFT", //Seulement si orientation == HORIZONTAL, LEFT ou RIGHT
               "title": "", //200 caractères maximum
               "description": "", //500 caractères maximum
               "media": {
                   "height": "MEDIUM", //uniquement si orientation == VERTICAL
                   "mediaUrl": ""
               },
               "suggestions": [
                   //Voir la section suggestions (4 maximum)
               ]
           },
           
           //suggestions globals (8 maxi)
           "suggestions":[
                //Voir la section suggestions  (8 maximum)   
            ]
       }
   },

   //optionnel: Permet d'envoyer un SMS si le RCS n'est pas accepté sur l'appareil du destinataire
   "failover":{
       "sender":"...",
       "message": "Ceci est un sms de basculement"
   }
  "apiKey": "",
```

{% endtab %}

{% tab title="Envoyer un carrousel" %}

```json
{
   "apiKey": "",
   "phoneNumbers": [
       ""
   ],
   "isUnicode": 1,
   "richContent": {
       "conversation": {
           "carousel": {
               "cardWidth": "MEDIUM", //OR SMALL

               // 8 cards maximum
               "cards": [
                   {
                       "title": "", //200 caractères maximum
                       "description": "", //500 caractères maximum
                       "media": {
                           "height": "MEDIUM",
                           "mediaUrl": ""
                       },
                       "suggestions": [
                            //Voir la section suggestions  (4 maximum)
                       ]
                   },
                   {
                       "title": "", //200 caractères maximum
                       "description": "", //500 caractères maximum
                       "media": {
                           "height": "MEDIUM",
                           "mediaUrl": ""
                       },
                       "suggestions": [
                           //Voir la section suggestions  (4 maximum)
                       ]
                   },
                   {
                       "title": "", //200 caractères maximum
                       "description": "", //500 caractères maximum
                       "media": {
                           "height": "MEDIUM",
                           "mediaUrl": ""
                       },
                       "suggestions": [
                           //Voir la section suggestions  (4 maximum)
                       ]
                   }
               ]
           },

           //suggestions globals (8 maxi)
           "suggestions": [
               //Voir la section suggestions  (8 maximum)
           ]
       }
   },

   //optionnel: Permet d'envoyer un SMS si le RCS n'est pas accepté sur l'appareil du destinataire
   "failover":{
       "sender":"...",
       "message": "ceci est un sms de basculement"
   }
}
```

{% endtab %}
{% endtabs %}

#### Suggestions

{% tabs fullWidth="true" %}
{% tab title="Réponse" %}

```json
{
    "reply": {
        "text": "Réponse 2",
        "postbackData": "postback_..." //Valeur unique qui sera envoyée en réponse à une suggestion.
    }
}
```

{% endtab %}

{% tab title="Action :  Ouvrir une URL" %}

```json
{
    "action": {
           "text": "Open SMSPartner",
           "postbackData": "postback_...", //Valeur unique qui sera envoyée en réponse à une suggestion.
           "openUrlAction": {
               "url": "https://www.smspartner.fr" //URL qui s'ouvrira sur le téléphone portable lorsque la suggestion est sélectionnée. Il doit s'agir d'un URI valide tel que défini dans la RFC 3986. Tous les formats d'URI ne sont pas pris en charge par tous les réseaux.
            }
    }
}
```

{% endtab %}

{% tab title="Action :  Appeler" %}

```json
{
    "action": {
       "text": "Appeler SMSPartner",
       "postbackData": "postback_...", //Valeur unique qui sera envoyée en réponse à une suggestion.
       "dialAction": {
           "phoneNumber": "+33......." //Numéro de téléphone valide
           }
       }
}
```

{% endtab %}

{% tab title="Action : Localisation" %}

```json
{
    "action": {
        "text": "Emplacement",
        "postbackData": "postback_...", //Valeur unique qui sera envoyée en réponse à une suggestion.
        "viewLocationAction": {
           "label": "Ici !!!", //Label de l'emplacement.
           "latLong": {
                 "latitude": 2.4220188, //Latitude du lien
                 "longitude": -122.0844786 //Longitude du lieu
            }
      }
  }
}
```

{% endtab %}
{% endtabs %}

#### **Réponse**

{% tabs %}
{% tab title="json" %}

```json
{
   "success":true,
   "code":200,
   "message_id":1,
   "nb_rcs": 1,
   "cost": 0.12,
   "currency": "EUR"
}
```

{% endtab %}
{% endtabs %}

#### **Types de fichiers multimédias acceptés**

RBM est compatible avec les types de médias suivants:

| Type de contenu | Type de document     | Extension   | Compatible avec les cartes enrichies |
| --------------- | -------------------- | ----------- | ------------------------------------ |
| application/ogg | Audio OGG            | .ogx        | Non                                  |
| application/pdf | PDF                  | .pdf        | Non                                  |
| audio/aac       | Audio AAC            | .aac        | Non                                  |
| audio/mp3       | Format audio MP3     | .mp3        | Non                                  |
| audio/mpeg      | Audio MPEG           | .mpeg       | Non                                  |
| audio/mpg       | Audio MPG            | .mp3        | Non                                  |
| audio/mp4       | Audio MP4            | .mp4        | Non                                  |
| audio/mp4-latm  | Audio MP4-latm       | .mp4        | Non                                  |
| audio/3gpp      | Audio 3GPP           | .3gp        | Non                                  |
| image/jpeg      | JPEG                 | .jpeg, .jpg | Oui                                  |
| image/gif       | GIF                  | .gif        | Oui                                  |
| image/png       | PNG                  | .png        | Oui                                  |
| video/h263      | Vidéo H263           | .h263       | Oui                                  |
| video/m4v       | Vidéo M4V            | .m4v        | Oui                                  |
| video/mp4       | Vidéo MP4            | .mp4        | Oui                                  |
| video/mpeg4     | Vidéo MPEG-4         | .mp4, .m4p  | Oui                                  |
| video/mpeg      | Vidéo MPEG           | .mpeg       | Oui                                  |
| vidéo/webm      | Vidéo au format WebM | .webm       | Oui                                  |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://www.docpartner.dev/api/sms-partner/rcs.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
