Skip to content

Your data and the model

If you are deciding whether Sloose is allowed near your CRM, this is the page to read. It says what happens, not what we intend.

  • Your file is parsed in your browser. It is never uploaded to us.
  • The AI features are the only thing that sends any of it anywhere, and they send samples, not the file.
  • You control how much, with a per-org setting: all values, masked values, or none.
  • Fields marked as personal data are masked before anything leaves the server, even on the most permissive setting.
  • Nothing is written to your CRM on the model’s say-so. Every AI feature proposes; a person accepts.

If you use no AI features, no part of your data reaches a model at all.

Feature Columns Sample rows
Auto-map Yes Up to 20
Value mapping Yes Up to 5
Formula assist Yes Up to 3
Explain and fix Yes Up to 5
Chat Only if the conversation is about a loaded file Up to 20

Along with them go your schema — the module and field names your org has, and any annotations an administrator has written — and, for explain-and-fix, the validation problems themselves. Value mapping also sends the distinct values a field still needs a decision on, and for a lookup the candidate records your browser already holds.

Row counts above are ceilings, not targets. A file of 40,000 rows sends at most 20 of them.

One setting per org, on the Organisation tab of org settings, with three values:

The Organisation tab: date format, expression context, AI sample policy and write pacing.

Policy What leaves
allow Sample values as they are — except fields marked as personal data, which are always masked.
masked Every value masked, whatever it is. Column names still go, so mapping still works.
deny No rows at all. The model is told none are available and works from column names and your schema alone.

An org that has never set this gets masked.

deny is not a broken mode: auto-map still proposes mappings from column names and your field names, it just cannot use the shape of the data to break a tie. It will be less good at telling a date from a number, and about as good at everything else.

Letters become x or X, digits become 9. Everything else is left alone.

Ada Lovelace → Xxx Xxxxxxxx
ada@northwind.com → xxx@xxxxxxxxx.xxx
+61 2 9000 1234 → +99 9 9999 9999
2024-03-17 → 9999-99-99
AC-1002 → XX-9999

The point is that shape survives and content does not. A masked value still tells the model “this column holds something email-shaped” or “this is a date in ISO order”, which is most of what it needs to propose a mapping — without telling it whose email it is.

An administrator annotates the field. Under the allow policy, any column that would land in an annotated field is masked; the rest are sent as they are.

The match between a column and a field is made by name, since a column has not been mapped to anything yet at auto-map time — a column fuzzy-matching an annotated field’s API name, label or recorded aliases is treated as that field’s data and masked.

That is a heuristic, and it is the reason masked is the default rather than allow: if you want a guarantee rather than a good-faith match, masked is the setting that gives you one.

See Field annotations for how to mark them.

Calls go to Anthropic through a Cloudflare AI Gateway that we operate. Model choice depends on the environment; production defaults to a Claude Opus model.

A deployment with no AI configured answers “not configured” rather than failing obscurely, and every AI route is metered against your org’s credit balance — so AI usage is accountable per feature (GET /ai/usage) rather than invisible until the invoice.

  • Your whole file. Only the sampled rows above ever leave the browser.
  • CRM records. Sloose does not read your existing records to build a prompt.
  • Credentials of any kind — your Zoho refresh token is encrypted at rest on our side and is never part of any prompt.
  • Anything at all, from any org whose policy is deny.

There is no AI without a deliberate action: every feature is a button somebody presses. Setting the org policy to deny removes the sample rows; not pressing the buttons removes the calls. Plans that do not include AI credits cannot make them at all.