---
title: "Send a message"
method: POST
path: "/conversations/{id}/messages"
tags: ["Conversation"]
---

# Send a message

`POST /conversations/{id}/messages`

Sends a message to a specific conversation and returns the sent message info.

## Path parameters

- `id` string, required

## Request body

- object
  - `text` string, required — The message text.
  - `medias` ConversationManagerMedia[], required
    - `id` string, uuid — The unique identifier of the media.
    - `customer_id` string, uuid — The unique identifier of the customer. Returned from the `GET /customers` response.
    - `type` 'image' | 'video' | 'audio' | 'file' | 'location' | 'sticker' | 'template' | 'imagemap' | 'flex' — Type of the media.
    - `filename` string — Filename of the media.
    - `tm_create` string, date-time — Timestamp when the media was created.
    - `tm_update` string, date-time — Timestamp when the media was last updated.
    - `tm_delete` string, date-time — Timestamp when the media was deleted.

## Response `200`

- ConversationManagerMessage
  - `id` string, uuid — The unique identifier of the message.
  - `customer_id` string, uuid — The unique identifier of the customer. Returned from the `GET /customers` response.
  - `conversation_id` string, uuid — The unique identifier of the conversation. Returned from the `GET /conversations` response.
  - `direction` 'outgoing' | 'incoming' — Direction of the message (incoming or outgoing).
  - `status` 'progressing' | 'done' | 'failed' — Delivery status of the message.
  - `reference_type` '' | 'message' | 'line' | 'whatsapp' | 'email' — Source channel that produced the message.
  - `reference_id` string, uuid — The unique identifier of the referenced resource. The actual resource type is determined by reference_type. Returned from the corresponding resource endpoint.
  - `source` CommonAddress — Contains source or destination detail info.
    - `type` '' | 'agent' | 'conference' | 'email' | 'extension' | 'line' | 'sip' | 'tel' | 'web_session' — Type of address.
    - `target` string — The address endpoint. Format depends on type: phone number for tel (e.g. +14155551234), UUID for agent/conference/extension, email for email, SIP URI for sip.
    - `target_name` string — Address's name.
    - `name` string — Optional label for this address.
    - `detail` string — Additional notes about this address.
  - `destination` CommonAddress — Contains source or destination detail info.
    - `type` '' | 'agent' | 'conference' | 'email' | 'extension' | 'line' | 'sip' | 'tel' | 'web_session' — Type of address.
    - `target` string — The address endpoint. Format depends on type: phone number for tel (e.g. +14155551234), UUID for agent/conference/extension, email for email, SIP URI for sip.
    - `target_name` string — Address's name.
    - `name` string — Optional label for this address.
    - `detail` string — Additional notes about this address.
  - `text` string — The message content.
  - `medias` ConversationManagerMedia[] — List of media associated with the message.
    - `id` string, uuid — The unique identifier of the media.
    - `customer_id` string, uuid — The unique identifier of the customer. Returned from the `GET /customers` response.
    - `type` 'image' | 'video' | 'audio' | 'file' | 'location' | 'sticker' | 'template' | 'imagemap' | 'flex' — Type of the media.
    - `filename` string — Filename of the media.
    - `tm_create` string, date-time — Timestamp when the media was created.
    - `tm_update` string, date-time — Timestamp when the media was last updated.
    - `tm_delete` string, date-time — Timestamp when the media was deleted.
  - `tm_create` string, date-time — Timestamp when the message was created.
  - `tm_update` string, date-time — Timestamp when the message was last updated.
  - `tm_delete` string, date-time — Timestamp when the message was deleted.

## Other responses

- `400` — Invalid request (INVALID_ARGUMENT).
- `401` — Authentication required (UNAUTHENTICATED).
- `403` — Insufficient permission (PERMISSION_DENIED).
- `404` — Resource not found (NOT_FOUND).
- `500` — Internal error (INTERNAL).

## Changes

- **2026-07-26** `d5569b315411` — 2 warning
  - added the new `web_session` enum value to the `destination/type` response property for the response status `200`
  - added the new `web_session` enum value to the `source/type` response property for the response status `200`
- **2026-06-27** `6ac21a841bca` — 2 info
  - added the optional property `destination` to the response with the `200` status
  - added the optional property `source` to the response with the `200` status
- **2026-06-26** `c7eb634e776f` — 7 warning, 6 info
  - added the new `` enum value to the `reference_type` response property for the response status `200`
  - added the new `done` enum value to the `status` response property for the response status `200`
  - added the new `email` enum value to the `reference_type` response property for the response status `200`
  - added the new `line` enum value to the `reference_type` response property for the response status `200`
  - …9 more
- **2026-05-30** `995c56ba9219` — 8 warning, 7 info
  - removed the optional property `destination` from the response with the `200` status
  - removed the optional property `source` from the response with the `200` status
  - added the new `call` enum value to the `reference_type` response property for the response status `200`
  - added the new `campaign` enum value to the `reference_type` response property for the response status `200`
  - …11 more

[Change history](https://skmtc.dev/voipbin/apis/voipbin-api/changes/conversations/:id/messages/post.md)

---

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