Tachyontachyon

Searching

Query parameters, pagination, and the shape of search results.

GET /collections/{name}/search

Query parameters

ParameterDefaultDescription
qThe search query
query_byall text fieldsComma-separated text fields to search
filterFilter expression — see Filtering
sortrelevanceSort expression — see Sorting
facetComma-separated facet fields — see Faceting
limit10Results per page (max 250)
offset0Results to skip (offset + limit capped at 10,000)
prefixtrueTreat the last token as a prefix match
typo_tolerancecollection settingOverride typo tolerance for this query
match_modeallall or any — whether every query_by term must match

Response shape

{
  "found": 1,
  "found_is_exact": true,
  "search_time_ms": 0,
  "hits": [
    { "document": { "id": "1", "title": "Wireless Mouse" }, "text_match": 554.788 }
  ],
  "facets": null
}
  • found — total matching documents (not just the current page)
  • found_is_exact — whether found is an exact count
  • hits[].document — the full indexed document
  • hits[].text_match — the BM25 relevance score used for ranking, also usable as the _text_match sort key

Pagination

Page through results with limit/offset:

curl 'localhost:8108/collections/products/search?q=keyboard&limit=20&offset=40'

offset + limit is capped at 10,000 — for deep pagination past that, narrow the query with a filter instead.

Highlighting

Tachyon does not currently return match highlighting (<mark>-style snippets) in search results — this isn't in the response shape today. It's tracked as a possible addition on the Roadmap.

Autocomplete

GET /collections/{name}/suggest completes the last token of a partial query, prefix- and typo-tolerant, ordered by term frequency:

curl 'localhost:8108/collections/products/suggest?q=key&query_by=title'
{
  "suggestions": [
    { "text": "keyboard", "count": 128, "typos": 0 }
  ],
  "search_time_ms": 0
}

Full parameter and response details: API Reference → Search.

On this page