Data protection
What data the product stores, where it lives, how long it is kept, when it can reach an AI model provider and how to export or delete it. It is a technical description of the current state, verified in the code, not a legal policy.
On this page
- What data we store
- Where the data lives
- How long it is kept
- When data reaches an AI provider
- Export and delete an organization's data
- Your rights as a person
- Trial accounts
- Legal documents and contact
What data we store#
| Category | Examples | How it is protected |
|---|---|---|
| Account | E-mail, name, memberships and roles, two-step verification | Password hashed with Argon2id; refresh token and recovery codes stored as SHA-256 hashes; TOTP secret encrypted with AES-256-GCM. |
| Work content | Requests, tasks, conversations, reports, memories, artifacts, drive files, skills | Written by users or generated by agents. Isolated per organization with row-level security. |
| Configuration and governance | Agents, approvals, budgets, rules, schedules, model policy | Isolated per organization with row-level security. |
| Organization secrets | OAuth tokens, API keys, own AI keys, SSO client secret, webhook secrets | Encrypted with AES-256-GCM under a per-organization data key; the API returns only metadata. |
| Access tokens | Public API and SCIM tokens | Only their SHA-256 hash is stored; the token is shown once. |
| Audit and traces | Hash-chained log; traces of agent calls | The audit log keeps metadata, not content. Traces include prompts unless the organization turns it off. |
| Push subscriptions | The browser's subscription address | Only if the user enables notifications. Never written to logs or returned by the API. |
| Server logs | Container and proxy logs | We have not documented their content or retention yet. |
Where the data lives#
Application data is in a Postgres database on a single shared virtual private server. Drive files are stored in the same database unless the operator configures S3-compatible object storage, which the public deployment does not use. Nightly backups are kept on the same server.
Each organization is isolated from the others with Postgres row-level security: logical isolation inside one database, not a database per customer.
Note
The server's location is not published on this page and a region cannot be chosen today.
How long it is kept#
Data deleted from the database may remain in backups for up to 14 days. Purging an organization keeps only a tombstone with the hash of its identifier, the reason and the date, with no name or personal data.
| Data | Retention | How it is deleted |
|---|---|---|
| Agent traces | 30 days by default (TRACE_RETENTION_DAYS) | Automatic purge once the window is exceeded. |
| Conversations, files and audit log | Indefinite by default | An owner can turn on a retention policy in Administration console, Retention and data tab, with minimums of 30 days for conversations and files and 365 for the audit log. Files go to the trash, they are not hard-deleted. |
| A single conversation | Until deleted | An admin or owner can delete it. |
| A connection's credentials | While the connection is active | Revoking the connection destroys the ciphertext. |
| Trial accounts | Stop working after 24 hours | Purged automatically 7 days after expiry, together with their organization if it has no other members. |
| Deleted organization | 7-day grace period after the request | Full purge in a single transaction; accounts left without any organization are deleted too. |
| Backups | 14 days | The backup script removes dumps older than 14 days. |
When data reaches an AI provider#
With real AI turned on, the task text, context, memory and relevant documents go in the prompt to the chosen model provider, after masking credentials and card numbers. Without a key, the product runs in simulation and nothing leaves. The current public deployment runs in simulation.
AI Workforce OS does not train models on your data. What each provider does with what it receives is governed by its own terms, which we have not audited. The full list is on the subprocessors page.
- Leave the platform without an AI key so everything stays in simulation.
- Limit the allowed providers in the organization's model policy.
- Use your own AI key: while it is active, only that key answers and the platform keys are never used as a fallback.
- Point to your own OpenAI-compatible endpoint, for example a local model.
- Turn off prompt storage in traces if you do not want to keep prompts.
Export and delete an organization's data#
In Settings, Data & privacy, an admin or owner can download a ZIP with all of the organization's data: one file per table plus the drive files, with a manifest. Secrets (password hashes, ciphertexts, keys) are stripped inside the database before anything leaves it. One export per hour is allowed and it is recorded in the audit log.
From the same screen, an owner can delete the organization by typing its exact name and their password. The purge is scheduled 7 days later; until then the organization keeps working and any owner can cancel it.
- Partial exports: audit log (JSONL, CSV or a ZIP with verification, for admins and owners), an agent's traces, artifacts, skills and usage report.
- An admin or owner can delete conversations and remove members; anyone can leave an organization.
Your rights as a person#
You can ask for access, rectification, erasure, restriction, objection and portability of your data. When your data is processed by a customer organization, that organization is the controller and we route the request through it.
There is no self-service export or deletion of an individual account today: your account is deleted when the last organization you belong to is purged. For any other request write to info@workforceai.es. We answer within the applicable legal deadlines, without a service-level commitment.
Trial accounts#
Trial accounts are disposable: they are created with their own organization and a generated password shown only once, they stop working after 24 hours and are purged automatically 7 days later. Do not use real or confidential data in a trial.
Legal documents and contact#
The privacy policy, the terms of service and the data processing agreement (DPA) are drafts pending review by a lawyer and are not published yet. Until then we cannot sign a DPA. For any data protection question write to info@workforceai.es.