GoHighLevel Conversations API

Update Conversation

PUT/conversations/:conversationId

PUT /conversations/:conversationId Update the conversation details based on the conversation ID It takes 1 path parameter and 4 body fields, requires the conversations.write scope and authenticates with a sub-account (location) token.

Request and authentication

Method
PUT
Full URL
https://services.leadconnectorhq.com/conversations/:conversationId
Scopes
conversations.write
Token type
Sub-account (location) token
Accepted auth
OAuth Access Token, Private Integration Token
API version header
Version: 2021-07-28
Schema verified
22 June 2026

Path parameters

Substituted into the URL. Required by definition.

NameTypeDescription
conversationIdrequiredstring

Example: tDtDnQdgm2LXpyiqYvZ6

Request body

JSON body fields. Nested objects are shown indented under their parent.

NameTypeDescription
locationIdrequiredstring

Location ID as string

Example: tDtDnQdgm2LXpyiqYvZ6

unreadCountnumber

Count of unread messages in the conversation

Example: 1

starredboolean

Starred status of the conversation.

Example: true

feedbackobject

Response fields

Top-level fields returned on a successful call.

NameTypeDescription
successrequiredboolean

Boolean value as the API response.

Example: true

conversationrequiredunknown

Conversation data of the provided conversation ID.

Example request

Copy-paste ready. Swap YOUR_TOKEN for your access token or Private Integration Token, and the sample ID for your own.

curl -X PUT 'https://services.leadconnectorhq.com/conversations/tDtDnQdgm2LXpyiqYvZ6' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Version: 2021-07-28' \
  -H 'Content-Type: application/json' \
  -d '{
    "locationId": "tDtDnQdgm2LXpyiqYvZ6"
  }'

Skip the schema lookup

Hylo gives your AI agent this schema — and the other 52 documented here — without you looking anything up. Ask in plain English; it picks the endpoint, fills the body, and can run the call against your own sub-account.

More conversations endpoints