Product
Changelog
What changed in Headband, newest first. Each entry is something that reached production. Deprecations in the /v1 API are announced here at least 90 days before anything is removed. See the versioning policy.
Failover copies for always-on Meilisearch and Elasticsearch
- An always-on Meilisearch or Elasticsearch engine on bucket storage and a paid plan now normally keeps a live read-only copy on our other server.
- If the engine's server fails, the copy answers its searches within seconds, up to a few minutes behind. Writes usually come back in about 2 to 3 minutes, when the copy's server takes over. If the server failed in the moment it was saving, they come back after about 12 minutes.
- Up to about the last minute of writes on a server that died is not in the engine after it moves. If that server comes back, those writes stay on its disk for 30 days.
- Resizing such an engine keeps its searches answering when there is room for the new size. Writes pause while it hands over: 2 to 17 seconds in our tests.
Automatic failover
- A hosted engine on bucket storage moves to the other server by itself when its server fails, in about 2 to 3 minutes.
Request ids, an OpenAPI spec, trust pages and backups
- Every /v1 response carries an X-Request-Id header, and every JSON error body carries the same requestId. Send your own X-Request-Id to have it echoed back.
- An OpenAPI 3.1 description of the API at /v1/openapi.json.
- An unexpected server error on /v1 now answers JSON, with the code internal_error and its requestId, instead of an empty 500.
- A versioning and deprecation policy for /v1: changes are additive, and a removal is announced here at least 90 days before it happens.
- New public pages: Security, Status, Service levels, DPA and this changelog, plus /.well-known/security.txt.
- Session recordings hide project names, and never record the Documents and Search pages.
- The control-plane database now has a nightly encrypted backup in Backblaze B2, kept 30 days, alongside BataData's 7-day point-in-time restore. Both were restored in a drill.
Steadier hosted engines
- A short pause in the control plane, under about 80 seconds, no longer pauses hosted engines on bucket storage.
- Large engines no longer freeze while their data is written to bucket storage.
- While an engine server restarts, requests for its engines answer 503 and can be retried, instead of 404.
- Exporting documents with a cursor stays exact while documents are being written.
Teams, scoped search keys and email
- Invite teammates to an organization as owners, admins or members.
- Search keys can be limited to chosen indexes, and you can mint tenant tokens for per-user filters. The React SDK 0.3.0 has a tenant-token helper.
- Account email: a welcome, usage warnings, payment failed, key expiry and engine down notices.
- A server whose gateway stops answering is detected, and requests for its engines fail fast with one 503 and a Retry-After header.
- A new API key works on engine endpoints as soon as it is created.
- Typesense never confirms a write the disk did not save.
- The /v1 API pages results honestly, returns coded errors, and always shows the index names you chose.
- Pricing buttons keep the plan you picked through sign-in.
Click feedback and guides
- Click feedback: report which results people click, and let it boost ranking, per index and per engine.
- New guides for integrating Headband, using several engines at once, and A/B testing.
- Security updates to Next.js and other dependencies.
- ORM sync fixes from a 100,000-row test: decimals, aggregates, outages and reindex writes.
Browser search and billing rules
- Search straight from your own site in the browser: the API answers cross-origin requests.
- Downgrades get a grace period before engines the new plan does not include are parked, and Billing previews and confirms what a downgrade parks.
- Fixes for Typesense deletes, facets and limits, Elasticsearch settings, and the dashboard's upload dialog and key expiry.
- The dashboard chat feature was removed.
Engine switching and Visor
- Switch an index to another engine with no document loss.
- Visor joins Meilisearch, Typesense and Elasticsearch as a fourth engine, with Managed Sync support.
- The Free plan includes every engine, and limits say how to upgrade.
- A deleted API key stops working within seconds.
- A privacy policy, terms of service and a contact form.
Branches and engine-scoped keys
- Environments and branches: keep separate copies of your indexes, with their own keys, from the CLI and the dashboard.
- API keys can be limited to chosen dedicated engines.
Bucket storage for hosted engines
- Hosted engines keep their data in Backblaze B2 as compressed, encrypted chunks, with the server's disk as a cache. On for every organization.
Faster API and a CLI for agents
- Faster key checks and fewer database round trips on every search.
- CLI 0.3.0: AI agents can drive the Headband CLI.
- MCP tools now need the same permissions as the matching REST calls.
Beta pricing
- Beta pricing: plans meter searches, stored data and always-warm memory.
- The shared legacy engines no longer accept new indexes.
A new site
- A redesigned site, with plans that list only what the product does today.