---
title: "Update Conversation"
method: PATCH
path: "/v1/conversations/{conversation_id}"
tags: ["conversations"]
---

# Update Conversation

`PATCH /v1/conversations/{conversation_id}`

Update a conversation.

- `metadata`: store custom context for AI agents (customer info, order/ticket
  ids, session state). Replaces the stored object; surfaced in webhook
  payloads as `conversationState`.
- `group_name`: rename a group conversation (iMessage groups only). Also
  renames the underlying iMessage thread.

Only the fields you include are changed: a rename-only PATCH leaves metadata
untouched, and vice versa.

## Path parameters

- `conversation_id` string, required

## Request body

- UpdateConversationRequest — Request body for updating a conversation.
  - `metadata` object, nullable
  - `group_name` string, nullable — New display name for a group conversation. iMessage groups only; also renames the underlying iMessage thread. Ignored (omit) for 1:1 chats.

## Response `200`

Successful Response

- ConversationDetail
  - `id` string, required
  - `agentId` string, nullable
  - `phoneNumberId` string, required
  - `phoneNumber` string, required
  - `participant` string, required
  - `isGroup` boolean
  - `groupId` string, nullable
  - `groupName` string, nullable
  - `groupIconUrl` string, nullable
  - `participants` GroupParticipant[], nullable
    - `identifier` string, required
    - `name` string, nullable
  - `lastMessageAt` string, date-time, required
  - `messageCount` integer, required
  - `metadata` object, nullable
  - `createdAt` string, date-time, required
  - `messages` MessageInConversation[], required
    - `id` string, required
    - `body` string, required
    - `fromNumber` string, required
    - `toNumber` string, required
    - `direction` string, required
    - `senderIdentifier` string, nullable
    - `channel` string, nullable
    - `status` string, nullable
    - `failureReason` string, nullable
    - `mediaUrl` string, nullable
    - `mediaUrls` string[]
    - `receivedAt` string, date-time, required
    - `reactions` ReactionInConversation[]
      - `id` string, required
      - `reactionType` string, required
      - `fromNumber` string, required
      - `direction` string, required
      - `createdAt` string, date-time, required
    - `replyTo` ReplyToInConversation
      - `messageId` string, required
      - `message` string, required
      - `mediaUrls` string[]
  - `capabilities` ConversationCapabilities — What the caller can do in this conversation, derived from its number's provider and compliance state. Drives the dashboard composer/reaction UI.
    - `canSendMessages` boolean, required
    - `sendDisabledReason` string, nullable
    - `sendChannel` string, nullable
    - `media` boolean, required
    - `reactions` boolean, required
    - `emojiReactions` boolean, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/agentphone/apis/agentphone-api.md) · [All operations](https://skmtc.net/agentphone/apis/agentphone-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/agentphone/agentphone-api/versions/3f3aa65dcd20/schema)
