Mar 19, 2026
Semantic Search Upgrade for Client API v1

Semantic Search Upgrade for Client API v1
This release puts semantic search at the center of Client API v1 so teams can build meaning-based discovery experiences, not just keyword matching.
Why this matters
Your users can search by intent ("decentralized exchange", "web3 venture fund"), while integrations stay predictable with explicit ranking metadata and performance-focused controls.
Semantic Search First
-
Meaning-based ranking on list endpoints
- Cards:
GET /v1/cards/withsearch=...&semantic=1 - Participants:
GET /v1/participants/withsearch=...&semantic=1 - Filters still control what is included; semantic mode controls ranking by relevance.
- Cards:
-
Explicit relevance signal
similarityis returned for semantic results.- Score range:
0.0-1.0(higher is a stronger semantic match). min_similaritylets you tune result strictness for your UX.
-
Transparent ranking metadata
- Response
meta.semanticexposesenabled,min_similarity, andranking. - Clients can reliably render semantic mode state and debug ranking behavior.
- Response
Platform additions that support semantic UX
- Response metadata (
meta) across key endpoints- Cards list:
GET /v1/cards/ - Participants list:
GET /v1/participants/ - Card interactions:
GET /v1/cards/<slug>/interactions/ - Detail and batch endpoints include useful flags such as
include_user_dataandinclude_sources.
- Cards list:
- Flexible payload shaping for fast search UIs
view=compactfor lightweight rendering.fields=...for top-level field selection.
- Fast pagination mode
include_total=falseon cards, participants, and card interactions.pagination.totalisnullin fast mode, whilehas_nextremains accurate.
- Cleaner payload quality
- Card location payload avoids placeholder-only location objects.
user_databehavior is explicitly controlled viainclude_user_data=true.
Integration notes
- To enable semantic ranking, always pair
semantic=1withsearch. - For tighter results, increase
min_similarity; for broader discovery, lower it. - For search-heavy interfaces, combine semantic mode with
view=compactor focusedfields=.... - Keep
include_total=trueif your pagination UI needs exact totals. - Send
include_user_data=trueonly when personalization is needed.