---
title: "Send Message"
method: POST
path: "/send_message"
tags: ["Send Message"]
---

# Send Message

`POST /send_message`

Send a message

## Request body

- object
  - `from` string, uuid, required — Channel ID from which the message will be sent
  - `id` string, uuid, nullable — Message ID
  - `conversation_id` string, uuid, nullable — Conversation ID
  - `conversation_status` 'open' | 'closed' | 'archived', nullable — Conversation Status
  - `to` object[], nullable — To Recipients of the message
    - `handle` union
      - string
      - string[]
    - `country_codes` string[]
    - `full_name` string, nullable
    - `contact_id` string, uuid, nullable
    - `external_contact_id` string, nullable
    - `secondary_external_contact_id` string, nullable
  - `cc` object[], nullable — CC Recipients of the message
    - `handle` union
      - string
      - string[]
    - `country_codes` string[]
    - `full_name` string, nullable
    - `contact_id` string, uuid, nullable
    - `external_contact_id` string, nullable
    - `secondary_external_contact_id` string, nullable
  - `bcc` object[], nullable — BCC Recipients of the message
    - `handle` union
      - string
      - string[]
    - `country_codes` string[]
    - `full_name` string, nullable
    - `contact_id` string, uuid, nullable
    - `external_contact_id` string, nullable
    - `secondary_external_contact_id` string, nullable
  - `subject` string, nullable — Subject of the message
  - `html` string, nullable — HTML content of the message
  - `text` string, nullable — Text content of the message
  - `content` object, nullable — Content of the message. Only use this if you know what you are doing. Prefer using html or text otherwise
  - `send_after` string, date-time, nullable — Send the message after this time
  - `placeholder_values` string[], nullable — Placeholder values for the message
  - `reply_to_message_id` string, uuid, nullable — Message ID to which this message is a reply
  - `attachments` string[], nullable — Attachment URLs to the message. Can either https:// or media_library://
  - `template_id` string, uuid, nullable — Template ID
  - `review_channel_id` string, uuid, nullable — Review Channel ID
  - `marketing_channel_id` string, uuid, nullable — Marketing Channel ID
  - `actions` object[], nullable — Actions for the message, e.g. quick reply buttons
    - `data` string, nullable
    - `text` string, required
    - `type` 'quick_reply' | 'call_to_action' | 'list', required
    - `subtype` 'url' | 'phone_number', nullable
  - `footer` string, nullable — Footer text for the message

## Response `200`

The message was sent successfully

## Other responses

- `400` — Invalid input

---

[API](https://skmtc.dev/getmateo/apis/mateo-api.md) · [All operations](https://skmtc.dev/getmateo/apis/mateo-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getmateo/mateo-api/revisions/22a9b3b009d1/schema)
