Coder powers secure, scalable development across key industries — automotive, finance, government, and technology — enabling faster builds, tighter compliance, and seamless AI adoption in enterprise-grade cloud environments.
The chat list endpoint accepts a q query parameter for filtering
conversations. All filters use key:value syntax. Bare search terms
are rejected; use title: for title filtering.
Linked pull request state. Comma-separated for OR.
diff_url
URL
Match by associated diff URL. Quote values containing colons.
pr
positive integer
Exact PR number match.
repo
substring
Case-insensitive substring match against git remote origin or URL. Quote values containing colons.
pr_title
substring
Case-insensitive PR title substring match. Quote multi-word values.
Multiple filters in one query combine with AND logic.
Examples
# Title substring (case-insensitive)
?q=title:deploy
# Multi-word title (URL-encode the space or use +)
?q=title:my+project
# Unread conversations
?q=has_unread:true
# Conversations with open or draft PRs
?q=pr_status:open,draft
# Filter by diff URL (quote values containing colons)
?q=diff_url:"https://github.com/coder/coder/pull/123"
# Combine filters
?q=title:refactor+has_unread:true+pr_status:merged
# Conversations linked to PR #42
?q=pr:42
# Conversations for a specific repository
?q=repo:coder/coder
# Conversations with a specific PR title
?q=pr_title:"fix auth bug"
Notes
title:, repo:, and pr_title: use ILIKE matching. % and _ act as wildcards.
pr_status:draft means the PR is open and marked as a draft.
pr_status:open means the PR is open and not a draft.
Conversations without a linked diff status are excluded when pr_status, pr, repo, or pr_title is set. The repo: filter also matches chats tracking a branch with no PR.
Unrecognized keys or bare terms return HTTP 400 with a validation error.