---
title: "Create a new talk chat"
method: POST
path: "/service_agents/talk_chats"
tags: ["Service Agent"]
---

# Create a new talk chat

`POST /service_agents/talk_chats`

Creates a new talk chat and returns the created talk's details.

Participant requirements by type:
- `direct`: Requires exactly 1 other participant (creator is automatically added as second participant)
- `group`: Can start with 0 or more participants (creator is automatically added, members can be added/removed later)
- `talk`: No additional participants required (creator is automatically added)

Note: If the creator includes themselves in the participants list, they will not be added twice.

## Request body

- object
  - `type` 'direct' | 'group' | 'talk', required — Type of the talk.
  - `name` string — Talk name (optional).
  - `detail` string — Talk description/detail (optional).
  - `participants` TalkManagerParticipantInput[] — List of participants to add to the chat (creator is added automatically).
    - `owner_type` string, required — Owner type (e.g., "agent", "customer").
    - `owner_id` string, uuid, required — The unique identifier of the participant owner. Returned from the corresponding owner resource endpoint (e.g., `GET /agents`).

## Response `200`

The created talk chat's details.

- TalkManagerTalk
  - `id` string, uuid — The unique identifier of the talk. Returned from the `POST /service_agents/talk_chats` or `GET /service_agents/talk_chats` response.
  - `customer_id` string, uuid — The unique identifier of the customer who owns this talk. Returned from the `GET /customers` response.
  - `type` 'direct' | 'group' | 'talk' — Type of the talk.
  - `name` string — Talk name (optional).
  - `detail` string — Talk description/detail (optional).
  - `member_count` integer — Number of participants in this chat.
  - `tm_create` string, date-time — Timestamp when the talk was created.
  - `tm_update` string, date-time — Timestamp when the talk was last updated.
  - `tm_delete` string, date-time — Timestamp when the talk was deleted.

## Other responses

- `400` — Invalid request (INVALID_ARGUMENT).
- `401` — Authentication required (UNAUTHENTICATED).
- `500` — Internal error (INTERNAL).

---

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