Bulkhead OS uses a compiled Orama index for tenant search. Queries hit KV-backed search data at runtime, so readers get search results without direct database reads on every request.

Endpoint Shape

The public endpoint accepts a search query and optional filters for result count, node type, domain, and visibility.

GET /api/v1/search?q=bulkhead&limit=5&type=inform&visibility=external
Accept: application/json

Response Example

{
  "results": [
    {
      "title": "Search & Orama",
      "url": "/ai/search",
      "excerpt": "Bulkhead OS uses a compiled Orama index for tenant search...",
      "score": 0.91,
      "node_type": "inform",
      "domain": "Bulkhead Documentation"
    },
    {
      "title": "Introduction",
      "url": "/introduction",
      "excerpt": "BulkheadOS is a company operating graph for complex software companies...",
      "score": 0.78,
      "node_type": "inform",
      "domain": "Bulkhead Documentation"
    }
  ],
  "meta": {
    "query": "bulkhead",
    "count": 2,
    "limit": 5,
    "indexStats": {
      "documentCount": 24,
      "indexSizeBytes": 18244,
      "builtAt": "2026-04-07T10:00:00.000Z"
    }
  }
}

Useful Filters

Query paramPurposeExample
qThe required search term?q=federation
limitMaximum results, capped by the API?limit=10
typeFilter by node type?type=inform
domainFilter by domain slug?domain=default
visibilityRestrict to internal or external content?visibility=external

Build Cycle

The search index is rebuilt during compilation. If the endpoint returns an empty result set with a message that the index is not built yet, run a compile to regenerate the KV-backed index for the tenant.

Why Orama here? It keeps search runtime cheap. The expensive work happens during compile, then the public search endpoint reads from the serialized index.

Feedback

Was this page useful?

Tell us whether this page helped so we can improve examples, docs, and product defaults.

No feedback recorded yet.

No response recorded yet.