---
title: "Send RCS text only messages"
method: POST
path: "/v4/rcs/outgoing/text"
tags: ["RCS - Outgoing"]
---

# Send RCS text only messages

`POST /v4/rcs/outgoing/text`

## Request

- Base URL: `https://api.inmobile.com`
- URL: `https://api.inmobile.com/v4/rcs/outgoing/text`
- Auth: one of:
  - HTTP basic
  - API key in query parameter `apikey`

## Request body

- RcsOutgoingCreatePostRequestOfRcsOutgoingCreateTextMessageModel: Request wrapper for creating RCS messages in bulk.
  - `messages` RcsOutgoingCreateTextMessageModel[], required: A list of the RCS messages to be sent.
    - `to` string, required: The msisdn (country code and number) to send to. (Remember to include countrycode in all numbers, e.g. 4512345678).</br> If max length is exceeded, the entire api call will fail.
    - `countryHint` string: For optimal phone number validation, we encourage you to provide us with a country code.</br> This can be the numeric country code (like 44) or the two-letter ISO 3166-1 alpha-2 code (like GB).</br> If this field is empty it is important that you add the country code (e.g 44) in front of the phone number in “to”.
    - `agentId` string, guid, required: The ID of the agent to use.</br> This agentId can be retrieved from the agent list endpoint.
    - `messageTrafficType` integer, required: A code describing the type of message being sent. Must match with the use case of the Agent being used. See the [message traffic type section](#section/RCS/Message-traffic-type) for details. 0 = MessageTrafficTypeUnspecified 1 = Authentication 2 = Transaction 3 = Promotion 4 = ServiceRequest 5 = Acknowledgement
    - `messageId` string, required: A message id used to identify the message. This id must be unique across all messages created on the same account.</br> (In case a previous message has been deleted according to GDPR deletion rules setup on the specific account, the messageId is allowed to be reused)</br> If max length is exceeded, the entire api call will fail.
    - `respectBlacklist` boolean, nullable: If true, this message will be blocked from sending if the target number is on the account's blacklist.</br> If false, the message will be sent no matter blacklist settings.</br> Default: true
    - `validityPeriodInSeconds` integer, nullable: The validity period in seconds. Minimum is 60 seconds and maximum is 1296000 seconds (15 days).</br> If not specified, the message is attempted to be delivered within 30 days. </br> A typical use of validityPeriod is for messages that make no sense to deliver after a certain time frame, in the case the phone is turned off, e.g. two-factor codes.</br> Please note that messages are still charged if the RCS platform charges for messages where the delivery attempts are cancelled due to an exceeded validity period.
    - `msisdnCooldownInMinutes` integer, nullable: If set, the message will be cancelled if the same mobile number already has received an RCS message or SMS message within this specified time period.</br> Fx. used to prevent spamming a mobile number.</br> Minimum 60 minutes (1 hour) and maximum is 43200 minutes (30 days).
    - `webhooks` RcsOutgoingWebhooks
      - `statusCallbackUrl` string: In case you would like a callback from us when the message is delivered or failed, you can specify it here, and we will call it when we have new message statuses.</br> The callback payload will be an array of status objects.</br> Api calls sending messages with the same apikey will be subject to being bulked together.
      - `readCallbackUrl` string: In case you would like a callback from us when the message is read, you can specify it here, and we will call it when we receive a read event.</br> Api calls sending messages with the same apikey will be subject to being bulked together.
    - `suggestions` RcsOutgoingMessageCreateSuggestionModel[]: List of suggestions to show underneath the message.
      - union: Exactly one of reply or action must be set.
        - object: Suggested reply.
          - `reply` RcsOutgoingMessageSuggestedReply, required
            - `text` string, required: Text that is shown in the suggested reply and sent back to the agent when the user taps it.
            - `postbackData` string, required: The base64-encoded payload that the agent receives in a user event when the user taps the suggested reply.
        - object: Suggested action.
          - `action` union, required: Exactly one action property must be set.
            - object: Dial action
              - …
            - object: Create calendar event action
              - …
            - object: Open URL action
              - …
            - object: Share location action
              - …
            - object: View location action
              - …
    - `text` string, required: The text message.

## Response `200`

- RcsOutgoingCreatePostReply
  - `results` RcsOutgoingCreateResultModel[]
    - `numberDetails` NumberDetails
      - `countryCode` string: The country code part of the msisdn, e.g. 45.
      - `phoneNumber` string: The phone number part of the msisdn, e.g. 12345678.
      - `rawMsisdn` string: The input msisdn in its unaltered format. This is the value provided when sending the text message.
      - `msisdn` string: The final cleaned msisdn.
      - `isValidMsisdn` boolean: True if the input msisdn was valid.
      - `countryHint` string: The country code hint if provided in the request.
    - `agentId` string: The agent ID.
    - `messageId` string: A message id used to identify the message. This id must be unique across all messages created on the same account. (In case a previous message has been deleted according to GDPR deletion rules setup on the specific account, the messageId is allowed to be reused)

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `409`: Conflict
- `500`: Internal server error

---

[API](https://skmtc.dev/inmobile/apis/inmobile-rest-api.md) · [All operations](https://skmtc.dev/inmobile/apis/inmobile-rest-api/llms.txt) · [OpenAPI document](https://skmtc.dev/inmobile/apis/inmobile-rest-api/revisions/197a90ad5f8f?raw)
