Core Resources
View as Markdown

Search

Semantic + hybrid knowledge search across everything you can access, cross-Space. Built for agents: returns lightweight pointers to triage, then fetch the few you need.

Knowledge search finds published Droplets by meaning and keyword across every Space you can access — not just one. It's the surface for pulling knowledge in and finding source material to synthesize.

It is two-phase by design. This endpoint returns lightweight pointers — one row per Droplet with a snippet, relevance score, match kind, and a sizeTokens budget hint — and does not return full document bodies. Triage the pointers, then fetch the full text of only the few you need (e.g. drop get <slug>). This keeps an agent's context budget spent on the documents that actually matter.

Results always respect the caller's permissions: every hit is re-checked against the authoritative access gate before any snippet is returned, so nothing you can't read ever surfaces.

Modes: hybrid (default — fuses semantic + keyword), semantic (concept questions), lexical (exact terms). The feature is user-gated — ask a sys admin to enable it for your account.

The Search object

Every Search carries these attributes.

Attributes

slug
string
Stable identifier of the source Droplet — round-trips to fetch and to citations.
title
string
Droplet display name.
space
string | null
Name of the Space the Droplet lives in.
type
string | null
Droplet type (e.g. DROPLET).
tags
string[]
Tags applied to the Droplet.
ownerEmail
string
Email of the Droplet owner.
updatedAt
string
ISO timestamp of the last deploy — useful for resolving contradictions (newer wins).
score
number
Fused relevance score (higher = more relevant).
matchKind
string
'semantic', 'lexical', or 'both' — how the result matched.
snippet
string
A short excerpt. Often enough to judge relevance without fetching.
sizeTokens
integer
Rough token estimate of the full Droplet — budget which results to hydrate.
THE SEARCH OBJECT
{
  "slug": "data-strategy-may-2026-okr",
  "title": "Data Strategy — May 2026 OKRs",
  "space": "Strategy",
  "type": "DROPLET",
  "tags": [
    "data",
    "okr"
  ],
  "ownerEmail": "jonathan.tushman@himarley.com",
  "updatedAt": "2026-05-29T14:00:00.000Z",
  "score": 0.031,
  "matchKind": "both",
  "snippet": "Our data strategy for the quarter centers on three pillars…",
  "sizeTokens": 1840
}

Methods

Endpoints to operate on a Search. The example switches between curl, drop CLI, and MCP via the dropdown — your choice persists across the page.

POST

Search knowledge across everything you can access

/api/search/knowledge

Semantic + keyword ("hybrid") search across every published Droplet the caller can access, spanning all their Spaces. Returns lightweight pointers — one row per Droplet with a snippet, relevance score, match kind, and a sizeTokens budget hint — NOT full bodies. This is phase one of a two-phase flow: triage these pointers, then fetch the full text of only the few you need via the per-Droplet read path. Results respect the caller's permissions (every hit is re-checked against the authoritative access gate). User-gated: requires the knowledge-search feature to be enabled for the caller.

Parameters

query
string· body· required
What to search for.
mode
string· body
Retrieval mode: 'hybrid' (default), 'semantic', or 'lexical'.
limit
number· body
Max results (1–50, default 10).
POST/api/search/knowledge
drop search knowledge --query "data strategy OKRs" --mode hybrid --limit 10
Response200
{
  "results": [
    {
      "slug": "data-strategy-may-2026-okr",
      "title": "Data Strategy — May 2026 OKRs",
      "space": "Strategy",
      "type": "DROPLET",
      "tags": [
        "data",
        "okr"
      ],
      "ownerEmail": "jonathan.tushman@himarley.com",
      "updatedAt": "2026-05-29T14:00:00.000Z",
      "score": 0.031,
      "matchKind": "both",
      "snippet": "Our data strategy for the quarter centers on three pillars…",
      "sizeTokens": 1840
    }
  ],
  "truncated": false
}