# Conversations

> Tickets, ideas, feedback, and chats — list, get, update, post messages.

Conversations are the source material for issues. They cover support tickets, feature ideas, free-form feedback, and live chat threads.

Each conversation has a `source` field:

- `chat` — created by the embedded widget
- `form` — submitted via a form and mirrored into the inbox

## GET /conversations

```bash
curl "https://app.getresolved.ai/api/v1/conversations?type=ticket,chat&status=open" \
  -H "Authorization: Bearer gr_..."
```

**Query parameters**

- `product_id`
- `type` — comma-separated: `ticket`, `idea`, `feedback`, `chat`
- `status` — comma-separated: `open`, `in_progress`, `resolved`, `dismissed`
- `priority`
- `limit` — default 50, max 200
- `offset` — default 0

## GET /conversations/{id}

Returns the conversation along with its messages.

```bash
curl https://app.getresolved.ai/api/v1/conversations/conv_123 \
  -H "Authorization: Bearer gr_..."
```

## PATCH /conversations/{id}

```bash
curl -X PATCH https://app.getresolved.ai/api/v1/conversations/conv_123 \
  -H "Authorization: Bearer gr_..." \
  -H "Content-Type: application/json" \
  -d '{ "status": "resolved" }'
```

**Body**

- `status` (optional)
- `priority` (optional)

## POST /conversations/{id}/messages

Add a message to the conversation. **This message is delivered to the customer.**

```bash
curl https://app.getresolved.ai/api/v1/conversations/conv_123/messages \
  -H "Authorization: Bearer gr_..." \
  -H "Content-Type: application/json" \
  -d '{ "body": "Thanks — we shipped a fix in v2.4." }'
```

**Body**

- `body` (required) — the message content sent to the customer

