Skip to main content
GET
/
conversations
/
v3
/
conversations
/
threads
Get threads
curl --request GET \
  --url https://api.hubapi.com/conversations/v3/conversations/threads \
  --header 'Authorization: Bearer <token>'
{
  "results": [
    {
      "archived": true,
      "associatedContactId": "<string>",
      "createdAt": "2023-11-07T05:31:56Z",
      "id": "<string>",
      "inboxId": "<string>",
      "originalChannelAccountId": "<string>",
      "originalChannelId": "<string>",
      "spam": true,
      "status": "CLOSED",
      "assignedTo": "<string>",
      "closedAt": "2023-11-07T05:31:56Z",
      "latestMessageReceivedTimestamp": "2023-11-07T05:31:56Z",
      "latestMessageSentTimestamp": "2023-11-07T05:31:56Z",
      "latestMessageTimestamp": "2023-11-07T05:31:56Z",
      "threadAssociations": {
        "associatedTicketId": "<string>"
      }
    }
  ],
  "paging": {
    "next": {
      "after": "<string>",
      "link": "<string>"
    }
  }
}

Supported products

Requires one of the following products or higher.
Marketing HubMarketing Hub -Free
Sales HubSales Hub -Free
Service HubService Hub -Free
Content HubContent Hub -Free
Data HubData Hub -Free

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Query Parameters

after
string

The paging cursor token of the last successfully read resource will be returned as the paging.next.after JSON property of a paged response containing more results.

archived
boolean

Whether to return only results that have been archived.

associatedContactId
integer<int64>

Retrieve a filtered list of conversations for a specific contact by its ID. This parameter cannot be used in conjunction with the inboxId property.

associatedTicketId
integer<int64>

The ID of a ticket associated with the thread. When provided, returns only threads that are linked to the specified ticket.

association
enum<string>[]

You can specify an association type here of TICKET. If this is set the response will included a thread associations object and associated ticket id if present. If there are no associations to a ticket with this conversation, then the thread associations object will not be present on the response.

Available options:
TICKET
inboxId
integer<int32>[]

The ID of the conversations inbox you can optionally include to retrieve the associated messages for. This parameter cannot be used in conjunction with the associatedContactId property.

latestMessageTimestampAfter
string<date-time>

The minimum(earliest) latestMessageTimestamp. This is required only when sorting by latestMessageTimestamp.

limit
integer<int32>

The maximum number of results to display per page.

property
string

A specific property to include in the thread response.

sort
string[]

Set the sort order of the response. Valid options are id (default) and latestMessageTimestamp (which requires the latestMessageTimestampAfter field to also be set). If you’re filtering threads by associatedContactId , you can sort in descending order by prepending - to the sort option (e.g., -id or -latestMessageTimestampAfter ). Otherwise, results are always returned in ascending order.

threadStatus
string

The status of the associated conversations to filter by (either OPEN or CLOSED). This property must be provided if you’re including the associatedContactId query parameter.

Response

successful operation

results
object[]
required
paging
object
Last modified on December 16, 2025