Search
Search endpoints run PostgreSQL full-text queries over indexed Tangled documents. Results include highlighted snippets and weighted relevance scores. If Constellation is configured, repository results are enriched with star counts.
GET /search
Unified search across all indexed Tangled documents.
Delegates to keyword search. The mode parameter is accepted but only "keyword" is supported.
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
q |
string | yes | Search query. Supports boolean operators, phrases, and prefix matching. |
mode |
string | — | Search mode. Only "keyword" is supported. |
limit |
int | — | Results per page (1–100). Default 20. |
offset |
int | — | Pagination offset. Default 0. |
collection |
string | — | Filter by ATProto collection NSID. |
type |
string | — | Filter by record type: repo, issue, pull, profile, string. |
author |
string | — | Filter by author handle or DID. |
repo |
string | — | Filter by repository name. |
language |
string | — | Filter by programming language. |
state |
string | — | Filter by state: open, closed, merged. |
from |
string | — | Created after (ISO 8601). |
to |
string | — | Created before (ISO 8601). |
GET /search/keyword
PostgreSQL full-text keyword search over indexed Tangled documents.
Same parameters and response shape as GET /search. Use this route to bypass mode negotiation.
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
q |
string | yes | Search query. Supports boolean operators, phrases, and prefix matching. |
limit |
int | — | Results per page (1–100). Default 20. |
offset |
int | — | Pagination offset. Default 0. |
collection |
string | — | Filter by ATProto collection NSID. |
type |
string | — | Filter by record type: repo, issue, pull, profile, string. |
author |
string | — | Filter by author handle or DID. |
repo |
string | — | Filter by repository name. |
language |
string | — | Filter by programming language. |
state |
string | — | Filter by state: open, closed, merged. |
from |
string | — | Created after (ISO 8601). |
to |
string | — | Created before (ISO 8601). |
Query syntax
The keyword search uses PostgreSQL web-style query parsing:
| Feature | Example |
|---|---|
| Simple terms | go search |
| Exclude term | rust -unsafe |
| Phrase | "pull request" |
| Natural-language | repo issue parser |
Errors
| Status | Condition |
|---|---|
| 400 | Missing q, invalid limit/offset, or unknown parameter. |
| 500 | Internal search failure. |