---
title: "Convert Chat To Room"
method: POST
path: "/api/chats/{chat_id}/convert-to-room"
tags: ["chats"]
---

# Convert Chat To Room

`POST /api/chats/{chat_id}/convert-to-room`

## Request

- Base URL: `https://app.thinqos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.thinqos.com/api/chats/{chat_id}/convert-to-room`
- Auth: none declared

Turn a direct or group chat into a named room, keeping its people, messages and tenant.

TOS-8003: a group chat keeps the people it started with, so this is how it
grows. The caller must be an active participant (404 otherwise) and becomes
the room owner; everyone else stays a participant. Returns 409 for a
Subconscious chat, a topic, or a room. Repeating it with the same title is
a no-op.

## Path parameters

- `chat_id` string, uuid, required

## Headers

- `x-impersonate-identity-id` string, nullable

## Request body

- ConvertToRoomRequest
  - `title` string, required

## Response `200`

Successful Response

- ChatResponse
  - `id` string, uuid, required
  - `title` string, nullable, required
  - `container_kind` string, required
  - `status` string, required
  - `description` string, nullable
  - `root_container_id` string, uuid, nullable
  - `topic_parent_id` string, uuid, nullable
  - `is_pinned` boolean
  - `extraction_excluded` boolean
  - `mind_context_disabled` boolean
  - `tenant_id` string, uuid, nullable
  - `tenant_name` string, nullable
  - `tenant_is_org` boolean
  - `message_count` integer, required
  - `message_count_capped` boolean
  - `unread_count` integer
  - `last_message_at` string, date-time, nullable, required
  - `started_at` string, date-time, nullable, required
  - `has_active_recipients` boolean
  - `facilitation_mode` 'natural' | 'facilitated'
  - `facilitator_identity_id` string, uuid, nullable
  - `alternate_facilitator_identity_ids` string[]
  - `max_responders` integer
  - `max_chain_depth` integer
  - `top_k_claimants` integer
  - `max_concurrent_generations` integer
  - `max_concurrent_generations_per_provider` integer
  - `max_root_container_spend_usd` number, nullable
  - `participant_count` integer
  - `participants` ParticipantPreview[]
    - `identity_id` string, uuid, required
    - `display_name` string, required
    - `avatar_url` string, nullable, required
    - `kind` 'person' | 'agent' | 'org', required
  - `viewer_role` string, nullable
  - `viewer_can_delete` boolean
  - `default_agent` ParticipantPreview
    - `identity_id` string, uuid, required
    - `display_name` string, required
    - `avatar_url` string, nullable, required
    - `kind` 'person' | 'agent' | 'org', required
  - `muted` boolean
  - `group_key` string, nullable
  - `display_title` string, nullable
  - `display_subtitle` string, nullable
  - `lifecycle` 'live' | 'concluded'
  - `concluded_at` string, date-time, nullable
  - `source` string, nullable
  - `source_display_name` string, nullable
  - `source_icon_url` string, nullable
  - `source_recognized` boolean, nullable
  - `capture_connection_id` string, uuid, nullable
  - `conversation_kind` 'DIRECT' | 'ROOM' | 'TOPIC' | 'RUN' | 'CAPTURE' | 'ASSISTANT', nullable
  - `is_person_conversation` boolean
  - `last_message_preview` ChatLastMessagePreview: TOS-7692: the latest visible message, flattened to plain text (<=140 chars).
    - `sender_name` string, nullable
    - `sender_is_viewer` boolean
    - `text` string, required
  - `needs_you` ChatNeedsYou: TOS-7692: why the chat is waiting on the viewer, from structured state.
    - `reason` 'approval' | 'input' | 'failed' | 'question' | 'mention', required
    - `since` string, date-time, required
  - `working` ChatWorking: TOS-7692: an agent turn or run in the chat is in progress right now.
    - `started_at` string, date-time, required
    - `label` string, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-20** `5387b4ded614`: 1 info
  - added the optional property `viewer_can_delete` to the response with the `200` status

[Operation history](https://skmtc.dev/thinqos/apis/thinqos-api/changes/api/chats/:chat_id/convert-to-room/post.md)

---

[API](https://skmtc.dev/thinqos/apis/thinqos-api.md) · [All operations](https://skmtc.dev/thinqos/apis/thinqos-api/llms.txt) · [OpenAPI document](https://skmtc.dev/thinqos/apis/thinqos-api/revisions/5387b4ded614?raw)
