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

# Update a conversation

`PATCH /v1/projects/{project_id}/conversations/{conversation_id}`

This operation updates a conversation which can, for instance, be used to
update the metadata associated with a conversation.

## Query parameters

- `update_mask` string[]
- `metadata_update_strategy` 'REPLACE' | 'MERGE_PATCH' — Update strategy for the `conversation_metadata` field. Only supported in `CONVERSATION` processing mode.

## Request body

- Conversation — A collection of messages exchanged between a contact and an app. Conversations are normally created on the fly by Conversation API once a message is sent and there is no active conversation already. There can be only one active conversation at any given time between a particular contact and an app.
  - `active` boolean — Flag for whether this conversation is active.
  - `active_channel` 'SMS' | 'RCS' | 'WHATSAPP' | 'MMS' | 'KAKAOTALK' | 'KAKAOTALKCHAT' | 'VIBERBM' | 'LINE' | 'INSTAGRAM' | 'MESSENGER' | 'WECHAT' | 'TELEGRAM' | 'APPLEBC' — The identifier of the channel you want to include. Must be one of the enum values.
  - `app_id` string — The ID of the participating app.
  - `contact_id` string — The ID of the participating contact.
  - `metadata` string — Arbitrary data set by the Conversation API clients. Up to 1024 characters long. NOTE: This field has been deprecated due to changes in the system architecture or functionality. It is no longer actively maintained and may be removed in future versions. Please avoid relying on this field in new code.
  - `metadata_json` object — Arbitrary data set by the Conversation API clients and/or provided in the `conversation_metadata` field of a SendMessageRequest. A valid JSON object.
  - `correlation_id` string — Arbitrary correlation ID related to the MT message set by the Conversation API user.
  - `id` string — The ID of the conversation.
  - `last_received` string, date-time — The timestamp of the latest message in the conversation. The timestamp will be Thursday January 01, 1970 00:00:00 UTC if the conversation contains no messages.

## Response `200`

A successful response.

- Conversation — A collection of messages exchanged between a contact and an app. Conversations are normally created on the fly by Conversation API once a message is sent and there is no active conversation already. There can be only one active conversation at any given time between a particular contact and an app.
  - `active` boolean — Flag for whether this conversation is active.
  - `active_channel` 'SMS' | 'RCS' | 'WHATSAPP' | 'MMS' | 'KAKAOTALK' | 'KAKAOTALKCHAT' | 'VIBERBM' | 'LINE' | 'INSTAGRAM' | 'MESSENGER' | 'WECHAT' | 'TELEGRAM' | 'APPLEBC' — The identifier of the channel you want to include. Must be one of the enum values.
  - `app_id` string — The ID of the participating app.
  - `contact_id` string — The ID of the participating contact.
  - `metadata` string — Arbitrary data set by the Conversation API clients. Up to 1024 characters long. NOTE: This field has been deprecated due to changes in the system architecture or functionality. It is no longer actively maintained and may be removed in future versions. Please avoid relying on this field in new code.
  - `metadata_json` object — Arbitrary data set by the Conversation API clients and/or provided in the `conversation_metadata` field of a SendMessageRequest. A valid JSON object.
  - `correlation_id` string — Arbitrary correlation ID related to the MT message set by the Conversation API user.
  - `id` string — The ID of the conversation.
  - `last_received` string, date-time — The timestamp of the latest message in the conversation. The timestamp will be Thursday January 01, 1970 00:00:00 UTC if the conversation contains no messages.

## Other responses

- `400` — Malformed request. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `401` — Incorrect credentials. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `403` — Correct credentials but you don't have access to the requested resource. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `500` — Correct credentials but you don't have access to the requested resource. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.
- `501` — Something went wrong on our end, try again with exponential back-off. See [common error responses](https://developers.sinch.com/docs/conversation/api-reference/#common-error-responses) for more information.

---

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