Data use

What Grounder stores when you search, who else sees it, how long it is kept, how it trains routing, and how to opt out.

What a search logs

  • The search query, or the prompt your agent passed along in context.prompt_content; through MCP, the user’s message as typed (user_prompt), so follow-ups in the same chat can be counted.
  • Your account, the key’s ID, the time, the client’s user agent, and any agent name, model, or metadata the client sent.
  • How the query was routed, which providers ran and how long each took, and for each provider its results’ rank, score, URL, title, date, and the first 500 characters of the snippet; then the merged list with found_by.
  • Not stored: your IP address, your key itself (only its SHA-256), other request headers, or full result text. Credentials that appear in a prompt are redacted.
  • Not logged: queries typed into the live demo in the playground. They run through the same routing and providers, are capped per visitor and per day, and leave no record.

Who else sees it

To route a search, its prompt and filters go to TypeSafe, which runs Grounder’s routing model, and its query and filters go to each provider that runs it, on Grounder’s own provider keys or on yours where you added one. Grading a finished search once a day sends its query to Claude to write a reference answer, and its query and top results to OpenRouter’s hosts to answer and grade it, never account or chat identifiers. Each of those parties keeps data under its own terms.

How long it is kept

Search records are kept indefinitely, and so is a nightly export of the whole database. Only rate-limit counters and sign-in tokens expire, within 30 days at most.

How it trains routing

No model is trained on your data, and no other customer sees your searches. Once a day, each finished search is answered from the results it got and graded right or wrong against a reference answer. The grades update shared statistics for each kind of query, and the router reads only those statistics when it picks a provider.

Opting out

Turn it off on your account page, or use your key:

opt-out.shShell
curl -X PUT https://api.grounder.net/v1/account/training \
  -H "Authorization: Bearer $GROUNDER_KEY" \
  -H "Content-Type: application/json" \
  -d '{"opt_out": true}'
# {"training_opt_out": true, "updated_at": "…"}

GET /v1/account/training shows the current setting and {"opt_out": false} reverses it. Searches keep working and are still logged for rate limiting and debugging. None of your searches, past or future, are graded or count toward the statistics; the next nightly recalculation leaves out what routing learned from them. Opting out deletes nothing.