BizKitHub
DocsAPI ReferenceSearch/bff/search/stream
getSearchAdmin BFF

/bff/search/stream

Purpose-built for the admin header autocomplete: emits per-module buckets as each SQL query resolves so the fastest module (calendar/order, ~30–300 ms) reaches the browser immediately instead of waiting for the slowest one (email/post, ~800–1000 ms cold on large organisations).

Use GET /search when you need the final sorted list in a single JSON payload (search-results page, MCP server, batch consumers). Use this endpoint only when the client can render partial results progressively and sort them itself.

Wire format: text/event-stream. Events:
results{ module, items: [{...}] } — one per module bucket (may fire empty). Items already carry the final score, snippet, and <strong>-wrapped highlight.
error{ module?, message } — per-bucket failures; other buckets keep flowing.
done{ total } — sent once every bucket has settled, then the stream closes.

The query is recorded to search__search_query + cas__organisation_search_log before the stream opens, so user intent is captured even when the client aborts the fetch mid-stream (typical on every autocomplete keystroke).

SearchgetBffSearchStream

Parameters

3 query

Query parameters

· 3
querystringOptional

Search query string.

Exampleinvoice
localestringOptional

Communication locale code — controls the language of textual data (product names, descriptions, articles, storefront UI, transactional e-mails).

Preferred format: BCP 47 language tag — language[-Script][-REGION]. Use the full tag whenever the script or region matters:

  • en-GB vs. en-US (British vs. American spelling)
  • pt-PT vs. pt-BR (European vs. Brazilian Portuguese)
  • zh-Hans vs. zh-Hant (Simplified vs. Traditional Chinese)
  • sr-Latn vs. sr-Cyrl (Latin vs. Cyrillic Serbian)

Backwards-compatible fallback: the bare two-letter ISO 639-1 code (cs, en, pl, …) is accepted indefinitely — legacy clients that only send the language subtag continue to work unchanged.

Resolution algorithm (server-side): the input is resolved against the supported locale list via the [RFC 4647 Lookup] progressive-fallback strategy — trailing subtags are stripped one by one until a supported locale is found. Example: en-GB-oxendicten-GBen (matched). If no subtag combination is supported, the request is rejected.

Currently supported locales: cs, en, fr, it, pl, de, sk, sv, es, zh, ja, uk, da, hu, ro, nl, pt, fi, nb, hr. Region-specific variants (e.g. en-GB, pt-BR) are accepted and resolved to their base language when the exact variant is not registered separately.

Length: 235
Examplecs
categorystringOptional

Limit search to a specific result type (e.g. order, product, contact).

Exampleorder

Response schema

1 status code documented

200Success

This response returns no JSON body.

Response example

application/json
{
  "success": true
}

Request example

GET /bff/search/stream

get
curl -X GET "https://api.bizkithub.com/bff/search/stream?query=invoice&locale=cs&category=order" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY"

Need an API key?

All BizKitHub public API endpoints require authentication via API key.

Get API Key