Improved

Chat Thread Search: Date Filters and Browse Mode

Filter chat thread search results by date range and browse recent threads without a text query. Date filters use updatedAt so that resumed conversations appear in results for the time period they were last active, not just when they were first created.

What's New

  • Optional query: The query parameter is now optional. Omitting it returns recent threads sorted by last activity (browse mode)
  • Date range filtering: New updatedAfter and updatedBefore parameters scope results to threads active within a time window
  • Browse mode: Combine no query with date filters to list threads active in a specific period — useful for reviewing recent work
  • 30-day default for text searches: Text queries without explicit date filters automatically scope to the last 30 days for faster, more relevant results

Modified Endpoint

  • GET /api/v1/accounts/{accountId}/workspaces/{workspaceId}/chat-threads/searchquery is now optional, two new date filter parameters

New Query Parameters

ParameterTypeDefaultDescription
updatedAfterdate?Only return threads updated on or after this ISO 8601 date
updatedBeforedate?Only return threads updated on or before this ISO 8601 date

Updated Response

Browse mode results include a new matchedIn value:

{
  "threadId": "550e8400-...",
  "title": "Revenue analysis Q4",
  "snippet": null,
  "matchedIn": "none",
  "turnNumber": null,
  "createdAt": "2026-01-15T10:00:00Z",
  "updatedAt": "2026-02-18T14:30:00Z"
}

matchedIn is "none" in browse mode since no text matching is performed. The snippet is null for the same reason.

Example: Browse Recent Threads

GET /api/v1/.../chat-threads/search?updatedAfter=2026-02-11

Returns threads updated on or after Feb 11, sorted by most recently updated.

Example: Date-Scoped Search

GET /api/v1/.../chat-threads/search?query=revenue&updatedAfter=2026-01-01&updatedBefore=2026-01-31

Searches for "revenue" only in threads active during January 2026.

Getting Started

  1. Omit query to browse recent threads without text matching
  2. Add updatedAfter and/or updatedBefore (ISO 8601 dates) to scope results by time range
  3. Date filters work with both text searches and browse mode
  4. Text searches without date filters default to the last 30 days; browse mode has no default limit