Skip to content

Search

GET /api/v1/ideas/search

Search across all ideas using keyword matching or AI-powered semantic search.

ParameterTypeRequiredDescription
qstringYesSearch query
modestringNokeyword or semantic (default: automatic — uses semantic search with full-text search fallback)

Keyword mode performs a text match against idea titles and bodies. Results are ordered by relevance.

Terminal window
curl "https://neuralrepo.com/api/v1/ideas/search?q=dark+mode&mode=keyword" \
-H "X-API-Key: nrp_YOUR_KEY"

Semantic mode converts the query into a vector embedding and finds ideas with similar meaning, even if they use different words. This is useful for finding conceptually related ideas.

Terminal window
curl "https://neuralrepo.com/api/v1/ideas/search?q=user+interface+theming&mode=semantic" \
-H "X-API-Key: nrp_YOUR_KEY"

200 OK

The response includes a query echo and a search_type field indicating which mode was used (semantic or fts) and a score on each result representing relevance.

{
"query": "user interface theming",
"search_type": "semantic",
"results": [
{
"id": 42,
"title": "Add dark mode support",
"body": "Users have requested a dark theme...",
"status": "exploring",
"source": "web",
"source_url": null,
"tags": ["ui", "feature-request"],
"score": 0.92,
"created_at": "2026-03-20T10:00:00Z",
"updated_at": "2026-03-22T14:30:00Z"
},
{
"id": 18,
"title": "Theme customization options",
"body": "Allow users to pick accent colors...",
"status": "building",
"source": "web",
"source_url": null,
"tags": ["ui"],
"score": 0.85,
"created_at": "2026-03-18T08:00:00Z",
"updated_at": "2026-03-19T11:00:00Z"
}
]
}

The score field is a floating-point number between 0 and 1:

ModeScore meaning
keywordnull — full-text search does not produce a numeric score
semanticCosine similarity between query and idea embeddings

Higher scores indicate stronger matches. Results are always sorted by descending score.

FeatureKeywordSemantic
Matches exact wordsYesNot necessarily
Finds conceptual matchesNoYes
Requires vector indexNoYes
SpeedFasterSlightly slower
StatusMeaning
200 OKSearch completed
400 Bad RequestMissing q parameter or invalid mode
401 UnauthorizedMissing or invalid auth