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)
limitnumberNoItems per page (default 20, max 100)
offsetnumberNoItems to skip (default 0)

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 search_type field indicating which mode was used and a score on each result representing relevance.

{
"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
keywordText relevance ranking
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