List buyer conversations
GET/v1/threads
scope messages.read
Conversations on your listings, newest activity first. Buyers are a display name and an id — never an email or a phone number. Use unread_only=true for the ones actually waiting on you.
Query parameters#
| Name | Example | |
|---|---|---|
limit | 50 | Max 100 |
cursor | — | next_cursor from the previous page |
unread_only | true | Only conversations you have not read |
product_id | 237233 | Only conversations about one listing |
updated_since | 2026-09-01T00:00:00Z | Incremental sync |
Response#
| Field | Type | Description |
|---|---|---|
count | integer | How many conversations in this page. |
next_cursor | string|null | Pass back as ?cursor=; null on the last page. |
data | array | Conversations about YOUR listings. Buyers start them — you cannot open one. |
data[]. | integer | The conversation id, for the message endpoints. |
data[]. | string|null | What the conversation is about, usually the listing title. |
data[]. | object|null | The listing being discussed. |
data[]. | integer | Our product id. |
data[]. | string | Its title. |
data[]. | string | Its URL segment. |
data[]. | object|null | Who you are talking to. null on a conversation whose counterpart could not be resolved. |
data[]. | integer | The buyer's user id. |
data[]. | string | Their display name, shortened the way buyers appear elsewhere on the marketplace. |
data[]. | object|null | The most recent message, so a list can be rendered without a call per row. null on an empty conversation. |
data[]. | integer | That message's id. |
data[]. | string | Who wrote it. Accepts |
data[]. | string | A truncated body — the full text is on GET /v1/threads/{id}/messages. |
data[]. | string | ISO-8601 UTC. |
data[]. | boolean | Whether the buyer has written since you last read it. POST /v1/threads/{id}/read clears it. |
data[]. | string | ISO-8601 UTC, when the conversation started. |
data[]. | string | ISO-8601 UTC, when it last moved. Sort on this, and use it with ?updated_since=. |
Example
{
"count": 1,
"next_cursor": null,
"data": [
{
"id": 107373,
"subject": "Trek Marlin 7",
"product": {
"id": 237233,
"title": "Trek Marlin 7",
"slug": "trek-marlin-7"
},
"buyer": {
"id": 9000002,
"name": "Jane Doe"
},
"last_message": {
"id": 174420,
"from": "buyer",
"preview": "Is this still available?",
"created_at": "2026-09-10T06:15:18Z"
},
"is_unread": true,
"created_at": "2026-09-10T06:15:18Z",
"updated_at": "2026-09-10T06:15:18Z"
}
]
}