---
title: "List Chats"
method: GET
path: "/v1/chat"
tags: ["chat"]
---

# List Chats

`GET /v1/chat`

## Request

- Base URL: `https://api.happenstance.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.happenstance.ai/v1/chat`
- Auth: HTTP bearer

The user's chats, most recently active first: the ones started through the API, which
take messages, and the ones started in the Happenstance app, which can be read.

## Query parameters

- `page` integer: Page, starting at 0 (50 chats a page)

## Response `200`

Successful Response

- GetChatsResponseV1: Response from GET /v1/chat.
  - `chats` ChatV1[], required
    - `id` string, required
    - `title` string, nullable
    - `source` 'api' | 'app', required: api: started through the API (you can send messages); app: started in the Happenstance app (read only here)
    - `url` string, required: The chat in the Happenstance app
    - `status` 'idle' | 'running', required
    - `turn_count` integer, required
    - `schedule_count` integer: The chat's scheduled tasks (only a chat started in the app has them); read them with GET /v1/chat/{chat_id}
    - `created_at` string, required
    - `last_activity_at` string, nullable
  - `page` integer, required
  - `has_more` boolean, required

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `402`: Payment Required
- `403`: Forbidden
- `404`: Not Found
- `410`: Gone
- `422`: Validation Error
- `500`: Internal Server Error
- `503`: Service Unavailable

## Changes

- **2026-10-23** `c8149ed29b44`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/happenstance/apis/happenstance-api/changes/v1/chat/get.md)

---

[API](https://skmtc.dev/happenstance/apis/happenstance-api.md) - [All operations](https://skmtc.dev/happenstance/apis/happenstance-api/llms.txt) - [OpenAPI document](https://skmtc.dev/happenstance/apis/happenstance-api/revisions/0b6ee3927db3?raw)
