---
title: "Отправить в беседу карточку видеовстречи"
method: POST
path: "/api/v1/chat/conversations/{id}/video-meeting"
tags: ["Chat"]
---

# Отправить в беседу карточку видеовстречи

`POST /api/v1/chat/conversations/{id}/video-meeting`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/chat/conversations/{id}/video-meeting`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)

Кнопка «+» → «Видеовстреча» в чате. Ссылку клиент не передаёт: сервер сам заводит комнату Яндекс Телемоста от имени отправителя или, если Телемост не подключён, берёт его постоянную ссылку видеовстречи из личных настроек календаря, и кладёт в беседу сообщение kind=application с application_type calendar.video_meeting@1 и application_payload {url, provider}, где provider — telemost или personal. Повтор с тем же client_message_id возвращает уже отправленное сообщение и вторую комнату не заводит. 409 video_meeting_not_set_up — нет ни Телемоста, ни постоянной ссылки; 409 telemost_reconnect_required — доступ к Телемосту истёк и его нужно подключить заново; 409 conflict — client_message_id уже занят другим сообщением; 502 telemost_unavailable — Телемост не ответил.

## Request body

- ChatSendVideoMeeting
  - `client_message_id` string, uuid, required

## Response `200`

Повтор ранее зафиксированной отправки

- ChatSendMessageResult
  - `message` ChatMessage, required
    - `id` string, uuid, required
    - `conversation_id` string, uuid, required
    - `seq` integer, required
    - `sender_user_id` integer, nullable, required
    - `kind` 'text' | 'system' | 'application' | 'file', required
    - `body` string, required
    - `mentions` ChatMessageMention[], required
      - `user_id` integer, required
      - `display_name` string, required
    - `client_message_id` string, uuid, required
    - `created_at` string, date-time, required
    - `attachments` ChatAttachment[], required
      - `id` string, uuid, required
      - `original_name` string, required
      - `content_type` 'audio/mp4' | 'audio/webm' | 'audio/ogg' | 'video/mp4' | 'video/quicktime', required
      - `size_bytes` integer, required
      - `sha256_hex` string, required
      - `media_kind` 'voice' | 'video_circle', required
      - `duration_ms` integer, required
      - `content_url` string, required
    - `reply_to_message_id` string, uuid, nullable
    - `forwarded_from_message_id` string, uuid, nullable: Пересланное: исходное сообщение. Нет у обычных сообщений
    - `forwarded_from_user_id` integer: Пересланное: автор оригинала — участник кабинета (ERP-1964, «Переслано от …»). При пересылке пересланного — тот, кто написал первым. Нет у обычных и у старых пересланных сообщений
    - `forwarded_from_name` string: Пересланное: подпись автора оригинала, когда участника нет в справочнике людей, — имя под ответом поддержки или название исходной беседы. Нет у обычных и у старых пересланных сообщений
    - `reply_quote` string: Цитата части исходного сообщения; поля нет, когда ответ на сообщение целиком, исходное удалено или недоступно
    - `deleted_at` string, date-time, nullable: Надгробие: сообщение удалено у всех. Тела, вложений, упоминаний и реакций у него нет; показывать его в ленте не нужно
  - `created` boolean, required

## Other responses

- `201`: Новое сообщение с карточкой видеовстречи
- `400`: Некорректный запрос или нарушение бизнес-правила
- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права
- `404`: Запись не найдена или не видима текущему пользователю
- `409`: Конфликт версии, идемпотентности или бизнес-состояния
- `502`: Яндекс Телемост не ответил; повторите позже

---

[API](https://skmtc.dev/akeda/apis/akeda-erp-client-api.md) · [All operations](https://skmtc.dev/akeda/apis/akeda-erp-client-api/llms.txt) · [OpenAPI document](https://skmtc.dev/akeda/apis/akeda-erp-client-api/revisions/a99574d597cc?raw)
