Privacy Policy
Last updated: July 17, 2026
Overview
DBShifts ("we", "us") operates the DBShifts data platform (the "Service") — database migration, the Data Console, and the Agent Gateway. This policy explains what we collect, how we use it, and your rights. By using DBShifts you agree to this policy.
Information We Collect
Account: name, email, bcrypt-hashed password. If you enable two-factor authentication, an encrypted TOTP secret and hashed recovery codes.
Database connection details: hosts, ports, names, and credentials you provide — encrypted at rest, decrypted only in memory during a job or query.
Usage: job IDs, status, row counts, schema metadata, error logs, reconciliation results.
Agent & console activity: audit logs of gateway queries (table, columns, row counts, masked columns, requesting IP) and Data Console access — kept so you can answer "who saw what". Agent tokens are stored only as SHA-256 hashes.
Sign-in security: device fingerprints (IP + browser) of known sign-ins, used to alert you to new-device access.
Billing: plan + subscription status. Card data is handled by Stripe, never stored on our servers.
Technical: IP, browser, pages visited (server logs).
How We Use It
- Operate the Service and run the migrations, queries, and monitors you start
- Send transactional and security email (verification, reset, new-device sign-in, 2FA changes)
- Process billing and enforce plan quotas
- Detect errors, abuse, and security incidents (rate limits, anomaly alerts)
- Comply with legal obligations
Password breach screening: when you set a password we check it against known breaches using k-anonymity — only the first 5 characters of a SHA-1 hash ever leave our servers; your password never does.
We never train ML models on your data or sell it to advertisers. (DBShifts contains no AI/LLM components; the Agent Gateway governs your agents' access — we run none of our own.)
Database Credentials & Migrated Data
DBShifts is a data processor acting on your instructions. Credentials are encrypted at rest. Row data moves between your source and target via our worker nodes and is not persistently stored after a job completes. Migration logs retain counts and timestamps, not full row payloads. Rows a target rejects may be quarantined for your review until you retry or discard them. You are responsible for your right to migrate the data involved.
Agent Gateway & Data Console
Both products read your connected databases on demand — query results are returned to you (or your agent) and are not persistently stored by us, with two exceptions: audit logs (metadata about each access: table, columns, row counts, masked columns, IP — not full row payloads, except write-action undo snapshots you explicitly approve) and masked test-data copies you generate into a target you control.
PII masking, column rules, row limits, usage budgets, and token IP restrictions are applied server-side according to your policy configuration. Detection of sensitive columns is automated and best-effort — review the scan results; you remain the controller of what your policies expose. Owner "replay" of an agent query re-runs it under the same masking rules and is itself audited.
If you enable Slack approvals, write-action proposals (action name, parameters, requesting agent) are sent to the Slack webhook you configure — governed by Slack's own terms.
Security
- TLS 1.2+ in transit; credentials encrypted at rest with rotatable keys
- bcrypt password hashing + breach screening on new passwords
- Optional TOTP two-factor authentication with hashed recovery codes
- httpOnly JWT cookies + CSRF double-submit tokens
- Agent tokens: hashed at rest, scopable, revocable, optionally IP-bound
- Rate limiting, usage budgets, and anomaly detection
Report vulnerabilities to security@dbshift.io.
Data Retention
- Account deletion: scheduled with a short grace period (sign in again to cancel), then all owned data — projects, credentials, data sources, gateways, agent tokens, test-data sets — is permanently purged
- Database credentials: deleted with the resource or the account, whichever comes first
- Migration logs: deleted within 90 days
- Gateway audit logs: 90 days
- Webhook delivery records: 30 days
- Reconciliation monitor history: 90 days
- Billing records: retained 7 years (financial regulation)
Your Rights (GDPR / CCPA)
Access, correction, deletion, portability, and objection. Email privacy@dbshift.io; we respond within 30 days. We do not sell personal data.
Third-Party Processors
- Amazon Web Services — API hosting + workers (EC2)
- Vercel — frontend hosting (global CDN)
- MongoDB Atlas — primary database (AWS)
- Stripe — payments (US/EU)
- Slack — only if you enable Slack approvals, and only the proposal metadata you route there
- Have I Been Pwned — anonymized password-breach screening (5-character hash prefix only)
Changes
Material changes are announced via email or in-app notice at least 14 days before taking effect.
Contact
DBShifts Privacy Team
Email: privacy@dbshift.io