GDPR & Privacy
Indx ships in two very different forms, and they have very different data handling profiles. The compiled search library processes no personal data at all. Indx is a full application that does store data, but you run it, and that data never reaches Indx unless you switch on Observr. This statement covers both, the Azure Managed App, the services Indx runs itself, and your account with us.
Indx is made by Bionic AS, org. nr 979 925 166, Vækerøveien 95, 0383 Oslo, Norway. Bionic AS is the controller for the personal data described under Your account with Indx and on the sites Indx runs.
Indx search library (NuGet / DLL)
The Indx search library is provided as a compiled binary (.dll) or as a NuGet package. It is designed to operate entirely within the host application and does not transmit, collect, or store any personal data.
- No data transmission. The library does not send or receive any data over the internet or any external network.
- No telemetry. There is no telemetry, tracking, or analytics built into the library.
- No logging of personal data. The library does not log, store, or transmit any personal or user‑identifiable data.
- Local execution. All operations are performed locally, in memory, within your own environment.
Because it processes no personal data as defined under the regulation, the library is fully compliant with the General Data Protection Regulation (GDPR) by design. Licensing is handled out of band, and the library itself makes no network calls, so nothing leaves your process.
Indx (self‑hosted)
Indx is the HTTP/Blazor server that wraps the engine. Unlike the library, it is a complete application that does store data, but all of it stays inside the environment you deploy it to. Indx, the company, never receives your data, your documents, or your search traffic. The one exception is Observr, and only for the datasets you switch it on for.
What it stores
- Identity database (
identity.db): accounts for the users you create to access the API: email address, hashed password, and roles. Managed by ASP.NET Identity. - Application database (
indx.db): configuration and metadata about your search instances and teams. - Search indexes, built from the JSON documents you load and held in memory only. They are never written to disk; hibernating a dataset frees them, and waking rebuilds them from the stored documents.
Who controls the data
- You are the data controller. Any personal data in the documents you index, and in the accounts you create, is under your control. Because that data never leaves your servers, Indx is not a processor of it.
- No telemetry. Indx sends no usage data, analytics, or diagnostics back to Indx.
- One update check a day. The server asks license.indx.co which release is the latest, so its admins hear about fixes. The request carries nothing about the instance or its data, and
Updates__Check=falseswitches it off. A server with a licence token also sends its version number with the daily licence fetch. - Outbound email is opt‑in. Account emails (confirmation, password reset) are sent only if you configure an email provider (Azure Communication Services). With no provider configured, these messages are written to the console/log and nothing leaves your machine.
As the controller, you remain responsible for the usual obligations under the GDPR: lawful basis, data‑subject requests, retention, and securing the host environment.
Managed (Azure) edition
The Azure Managed Application edition is deployed into your own Azure subscription, in the Azure region you choose. For EU/EEA residency pick a European region such as Norway East or West Europe. Your documents, accounts and search traffic are stored and processed inside your subscription, and Indx does not copy them out of it.
- Your licence. When the deployment finishes, Azure tells Indx about it: the application's name and its Azure resource ids, the plan, and the deployment's state. Indx creates the licence for it and writes a licence token into the app's settings. The app then fetches its licence from Indx once a day, sending that token and the app's version number, so Indx can see which deployments a fix has not reached yet.
- Publisher access. Like every managed application, the app's resources sit in a managed resource group that Indx can reach, so that it can deliver the licence and keep the app running, for example to update or repair it. Indx looks at the content of your datasets only when you ask for support, and then only what the request needs.
- Nothing else leaves. Apart from the daily anonymous update check, no telemetry goes to Indx. Logs and monitoring are created in your own subscription. Observr, if you switch it on, works as described below.
Because search responses are computed entirely in your environment, you may cache them in your own server or CDN layer as you see fit; invalidate on reload or document change.
This documentation site
docs.indx.co is hosted on Vercel. Site search sends your query to an Indx server run by Indx and returns the matching pages; nothing is stored. The Ask tab sends your question, and the earlier turns of the same conversation, to the same Indx server for retrieval and then to Anthropic's Claude API for the answer. Questions are logged, with the answer's timing and the pages it drew on, to find where the docs fall short; the log holds no account or contact details, and the IP address is used only to rate-limit the assistant, never stored with the question. Do not put personal data or secrets in a question.
indx.co
The search on indx.co is a live demo of Indx, on a film catalogue, run on an Indx server that Indx operates in Microsoft Azure's Norway East region.
- Searching. Each search is recorded with its text, a random id for the page visit (not a cookie, and new on every visit), and which result you open, so we can see how the search is used. The records are kept for 90 days, after which only daily totals remain. They hold no account or contact details, and your IP address is used only to limit request rates, never stored with a search.
- Asking. While you type, your text is sent to OpenRouter, which passes it to TypeSafe's Jev model to judge whether it is a question. If you ask, your question and the films the search found go through OpenRouter to Anthropic's Claude, which writes the answer. These providers process the text only to answer you, and they are based in the United States, outside the EU/EEA. A question you ask is recorded like a search, with the answer's timing and the films it drew on.
- Page analytics. Vercel Web Analytics counts page views without cookies or personal identifiers.
Do not type personal data or anything confidential into the search.
Observr
Observr is a service Indx runs for Pro and Enterprise subscribers. It is off until an admin switches it on, and then sends only for the datasets a team chooses. With it on, Indx processes data on your behalf: Indx is your processor, and OpenRouter and Anthropic are its sub-processors.
- What your server sends. Summaries of each watched dataset's search statistics, with what visitors searched for as they typed it, record names, the commonest values of fields whose values repeat, your own settings and text, and what you type in the Agent panel. Never whole records, and never who a visitor is: no session, visitor id, IP address or email. Visitors' search texts can still hold personal data when a visitor types it, such as a name in a search box. The guide lists what is sent, and the code that builds it is open source.
- Where it goes. Observr runs in Microsoft Azure's Norway East region. Each ask goes through OpenRouter's EU service to Anthropic's Claude, which writes the answer, and is processed in the EU only. OpenRouter and Anthropic are companies based in the United States; the text is processed only to answer and is not used to train models.
- What is kept, and for how long. Observr keeps each ask's text, its answer and proposals, and which installation asked, from what address, for 90 days. After that only the numbers remain: when, for which licence, what kind of ask, and what it cost. The evidence an ask carries goes to the model and is not kept. Findings themselves are stored on your own server, in its database, and stay until you hide them.
- Turning it off. Switch Observr off under Admin > Observr and your server sends nothing more. To have what Observr holds about your licence deleted sooner, write to us.
Tell visitors in your privacy notice that their searches are analysed by a service provider, if you switch Observr on.
cloud.indx.co
cloud.indx.co is Indx as a service, run by Indx in Microsoft Azure's Norway East region. Here Indx holds what you put in on your behalf: your team's accounts (email, hashed password, roles), your datasets, and the search statistics your sites send (the search text, an optional user id you choose to pass, a per-page id, and which result was opened). Raw statistics are kept for 90 days, after which only daily totals remain. Indx is your processor for this data, and a DPA covers it on request.
Your account with Indx
When you register on the licence portal (license.indx.co), buy a subscription or write to us, Bionic AS processes your name, email address, company name and what you have bought, to issue licences, take payment and give support. Payment is handled by Stripe, and your card details never reach Indx. You can sign in with Google or Microsoft, which then tell us your name and email address. Account emails are sent through Microsoft's Azure Communication Services. We keep this for as long as you have an account or a subscription, and for as long as accounting law requires after that. You can ask to see, correct or delete it by writing to support@indx.co, and you may complain to Datatilsynet, the Norwegian data protection authority.
Contact
For the Indx library and Indx Server, Indx does not process personal data on your behalf, so a Data Processing Agreement is normally not required; where your procurement asks for one, Indx signs it on request. With Observr on, Indx is your processor and a DPA covers it. Write to support@indx.co for data-protection questions or a DPA.