← Back to Privacy PolicyData residency
Every third-party service Redline touches, what data flows there, and the region it runs in. In the default configuration, contract analysis stays within the European Union.
Default data flows
These processors are involved every time you use Redline.
Mistral AI
EU — Paris, FranceLLM contract analysis — overview, clause extraction, risk assessment, chat responses.
- Data
- Pattern-redacted contract text (PII replaced with ⟦KIND_N⟧ tokens before leaving the browser)
- Analysis prompts in the user's selected UI language (EN, FR, DE, NL, ES, IT) — Mistral is multilingual by training and processes every supported locale natively; no translation service is involved
- Legal basis
- GDPR Art. 6(1)(b) — performance of a contract
- Notes
- Default LLM provider. Model pinned to mistral-small-latest (snapshot mistral-small-2603). Mistral La Plateforme runs in the EU, no transfer outside the EU/EEA for either the contract text or the analysis prompts, regardless of the UI language the user has selected.
- Policies
- Privacy Policy·Data Processing Addendum
Vercel
Global edge network — requests served from the nearest regionFrontend hosting and edge delivery of the Next.js app.
- Data
- HTTP request metadata (IP, user-agent) for the duration of the request
- Legal basis
- GDPR Art. 6(1)(f) — legitimate interest (site delivery)
- Notes
- Edge hosting only. Contract text is never persisted by Vercel — analysis calls are forwarded to Mistral and responses stream back through the same request.
- Policies
- Privacy Policy·Data Processing Addendum
Railway
EU West — Amsterdam, NetherlandsBackend hosting (FastAPI) for file upload, OCR, and PDF export.
- Data
- Uploaded contract files during processing
- Extracted contract text before redaction (server-side parser only)
- Legal basis
- GDPR Art. 6(1)(b) — performance of a contract
- Notes
- Contract text is held in memory during the upload → parse → return cycle and then discarded. Not logged, not stored on disk beyond the request lifecycle.
- Policies
- Privacy Policy·Data Processing Addendum
Optional data flows
These processors only come into play when a specific feature — saved history or magic-link sign-in — is enabled by the operator.
Neon
EU — Frankfurt, GermanyManaged Postgres for saved analyses, magic-link sessions, and clause embeddings.
- Data
- User email (if you sign in)
- Saved analyses and their provenance metadata
- Session identifiers
- Legal basis
- GDPR Art. 6(1)(b) — performance of a contract (for saved analyses) and Art. 6(1)(f) — legitimate interest (for session management)
- Notes
- Only used when the backend DATABASE_URL env var is set. In the zero-backend-state configuration Redline runs without Neon and no personal data is persisted. Saved analyses are auto-deleted after 30 days (SP-5 retention) unless the user pins them.
- Policies
- Privacy Policy·Data Processing Addendum
Transactional email — magic-link sign-in.
- Data
- User email address
- One-time sign-in link
- Legal basis
- GDPR Art. 6(1)(b) — performance of a contract
- Notes
- Only used when the backend RESEND_API_KEY env var is set. Email addresses are sent to Resend solely to deliver the sign-in link and not used for marketing.
- Policies
- Privacy Policy·Data Processing Addendum
Jina AI
EU — Berlin, GermanyCross-encoder reranker — reorders the top-20 chat-context candidates by semantic relevance to the user's question.
- Data
- User chat question (one per reranker call)
- Pattern-redacted clause text for the top-20 candidates from the hybrid retriever
- Legal basis
- GDPR Art. 6(1)(b) — performance of a contract
- Notes
- Only used when the frontend JINA_API_KEY env var is set. In the zero-config default Redline skips reranking entirely and the chat context is served from the BM25 + cosine hybrid retriever alone. Redaction runs before the rerank call — no unredacted PII is sent to Jina.
- Policies
- Privacy Policy·Data Processing Addendum
This page is rendered directly from the typed frontend/src/lib/data-flows.ts config so it tracks the live configuration without manual drift.
UI chrome is translated to English, French, German, Dutch, Spanish, and Italian. Analysis output (clause summaries, risk explanations, chat answers) is produced natively by Mistral — no intermediate machine-translation service touches the contract text. Each locale is enabled only after a native speaker reviews the prompts; locales still pending review fall back to English analysis so no user sees unreviewed LLM legal prose in their language.
For the EU AI Act posture mapping, operator rollback levers, and the machine-readable transparency receipt, see the transparency page.