Search Types
Overview of all search modes: BM25, semantic vector, hybrid, NLP, voice, image, and geo search.
Search Modes
| Mode | Endpoint | AI Credits | Description |
|---|---|---|---|
| BM25 (Keyword) | POST /search | 0 | Traditional keyword matching. Set use_semantic: false |
| Hybrid (BM25 + Vector) | POST /search | 2 | Default mode. Combines keyword with semantic vector similarity |
| Similar Items | POST /search/similar | 0 | Find items similar to a given entity using More Like This |
| Advanced Search | POST /search/advanced | 0-5 | Full control over filters, facets, geo, date ranges, price ranges |
| Autocomplete | GET /search/autocomplete | 0 | Prefix-based suggestions as user types |
| Voice Search | POST /search/voice | 5 | Audio transcription (STT) then semantic search |
| Image Search | POST /search/image | 5 | Image analysis then semantic search on extracted text |
| NLP Search | POST /search/nlp | 3 | Natural language understanding with intent extraction |
| Geo Search | POST /search/geo | 0 | Location-based search within a geographic radius |
Entity Types
Searchable Entities
The search service indexes 5 entity types across dedicated OpenSearch indices.
| Entity Type | Index Name | Source Service |
|---|---|---|
event | eventzr-events | event-svc |
venue | eventzr-venues | venue-svc |
artist | eventzr-artists | talent-svc |
destination | eventzr-destinations | destination-svc |
brand | eventzr-brands | brand-svc |
Examples
Keyword search (no AI credits)bash
curl -X POST "$API/search/v1/search" \
-H "Authorization: Bearer $TOKEN" \
-H "x-tenant-id: $TENANT_ID" \
-H "Content-Type: application/json" \
-d '{
"query": "music festival",
"entity_type": "event",
"use_semantic": false,
"limit": 10
}'Hybrid search (2 AI credits)bash
curl -X POST "$API/search/v1/search" \
-H "Authorization: Bearer $TOKEN" \
-H "x-tenant-id: $TENANT_ID" \
-H "Content-Type: application/json" \
-d '{
"query": "outdoor concert near the beach",
"use_semantic": true,
"include_facets": true
}'Find similar eventsbash
curl -X POST "$API/search/v1/search/similar" \
-H "Authorization: Bearer $TOKEN" \
-H "x-tenant-id: $TENANT_ID" \
-H "Content-Type: application/json" \
-d '{
"item_id": "event-uuid-here",
"entity_type": "event",
"limit": 5,
"min_score": 0.5
}'Geo search (venues within 10km)bash
curl -X POST "$API/search/v1/search/geo" \
-H "Authorization: Bearer $TOKEN" \
-H "x-tenant-id: $TENANT_ID" \
-H "Content-Type: application/json" \
-d '{
"lat": 19.076,
"lng": 72.8777,
"radius_km": 10,
"entity_type": "venue"
}'Hybrid Search Configuration
| Parameter | Default | Description |
|---|---|---|
bm25_weight | 0.6 | Weight for BM25 keyword score in hybrid ranking |
vector_weight | 0.4 | Weight for vector similarity score in hybrid ranking |
min_score | 0.1 | Minimum combined score threshold for results |
rrf_k | 60 | Reciprocal Rank Fusion smoothing constant |