POST https://api.neuronsearchlab.com/v1/search. Results use the same item shape as recommendations, so the same rendering code works for both.
Call search from your backend with an access token that has the
neuronsearchlab-api/read scope. The console’s own search box uses a different, internal endpoint that is not meant for your product.When to use search
Use search when the user types what they want: a product search box, a content discovery query, a help-article lookup. NSL matches the query by meaning and, if enabled, by keywords, then applies the context’s filters, ranking and rules. Recommendations start from a user or item embedding. Search starts from the query text.Call the REST API
Hybrid retrieval options are also accepted per request:
query_retrieval_enabled, fusion_method (rrf or weighted), semantic_weight, keyword_weight and keyword_fields. Set these on the context’s pipeline instead where you can, so every caller gets the same behaviour. See Pipeline.
Use the JavaScript SDK
/v1/search and captures the returned request_id for subsequent trackEvent() calls. Pass resultItemIds to send your own engine’s results.
Use the PHP SDK
Bring your own search engine
If your product already has search (Algolia, Elasticsearch, Typesense or your own database), keep it. Send NSL the query and the item IDs your engine showed, and NSL records the search and returns recommendations that complement those results:/v1/events with query and no item_id, or call trackSearch() in the SDKs.
Either way, the search becomes an event that steers the user’s later recommendations by the weight of your Search event. See Searches are events.
Response shape
Search responses use the standard list envelope:Measure search engagement
Every search with a user is also recorded as a search event that steers that user’s later recommendations. Use the returnedrequest_id when sending click, view, add-to-cart, or conversion events. The official SDKs handle this automatically after search(). If you call REST directly, include request_id in your event payload so analytics can attribute engagement to the search result set.
See the search endpoint reference for the full contract.
