Subprocessors
This is the list of third parties that may receive customer data, for what purpose and under which conditions. It is derived from the code and the deployment configuration in the repository, not from a sales inventory: almost every third-party service is optional and only turns on when the operator configures it.
On this page
- How to read the list
- Subprocessors
- What we do not use
- Services each organization connects
- Other third parties without customer data
- How to limit where data goes
- Changes to the list
How to read the list#
AI model providers receive data only when the operator or the organization configures a key. Without a key, the agent runtime runs in simulation mode and no data goes to them. The current public deployment, according to its configuration in the repository (SIMULATION: "true"), runs in simulation.
The operator sets a ceiling of allowed AI providers (ALLOWED_PROVIDERS) and each organization can narrow it further in its model policy. An excluded provider is neither called nor used as a fallback.
Note
We have not verified in which country each provider processes data. That is why this list has no location column: we prefer not to guess.
Subprocessors#
| Third party | Purpose | Data involved | When it applies |
|---|---|---|---|
| Virtual private server (VPS) provider | Hosting the application, the Postgres database and the nightly backups | Everything the organization stores in the product | Always, in the deployment we operate. The provider's name is not published on this page yet. |
| Google (Gemini API) | Language model (Gemini) for the agents' tasks; it is the included model when the operator sets its key | Same as DeepSeek | Only with a configured key and the provider allowed. On Google's free tier, its terms allow using the content to improve its products: for customer data, use a paid account |
| DeepSeek | Language model for agent tasks | Task text, context, memory and documents sent in the prompt, with credentials masked | Only with a configured key and the provider allowed |
| Anthropic | Language model (Claude) for agent tasks | Same as DeepSeek | Only with a configured key and the provider allowed |
| OpenAI | Language model for agent tasks and, optionally, embeddings for semantic search over documents | Same as DeepSeek; for embeddings, chunks of the indexed documents | Only with a configured key and the provider allowed; embeddings only with EMBEDDINGS_PROVIDER=openai |
| Kimi (Moonshot AI) | Language model for agent tasks | Same as DeepSeek | Only with a configured key and the provider allowed |
SMTP mail server (default smtp.hostinger.com) | Account verification, password recovery and approval notice e-mails | The recipient's e-mail address, the link and, in notices, the approval title and a summary | Only if the operator sets the SMTP_* variables |
| Browser push services (Google FCM, Mozilla, Apple, Microsoft) | Delivering web push notices to subscribed browsers | Notice type, short title, risk and link, encrypted per the Web Push standard | Only if the operator sets VAPID_* keys and the user enables notifications |
| Web search (Brave Search, Tavily or a SearXNG instance) | The agents' search tool | The search queries the agent writes | Only if the operator sets WEB_SEARCH_PROVIDER; off by default |
| S3-compatible object storage | Storing drive files | Files that users upload or agents generate | Only if the operator sets S3_ENDPOINT and S3_BUCKET; otherwise files are stored in Postgres |
Note
Your own OpenAI-compatible endpoint (the custom provider) is not in the table because it is not a third party of ours: whoever configures it chooses and contracts it.
What we do not use#
- Payments: there is no billing and no payment provider integrated today.
- Analytics and tracking: neither the application nor this site loads third-party analytics, heatmaps or error tracking.
- Fonts and assets: typefaces are served from our own server, with no third-party CDN.
Services each organization connects#
These services are not our subprocessors: the organization chooses and contracts them, authorizes access with its own credentials and under its own agreements with them. Data flows between the product and those services only when the organization connects them.
- Integrations: Gmail, Google Calendar, Google Drive, Slack, GitHub and LinkedIn, plus the Microsoft 365 calendar for meetings. The Gmail integration has been tested in simulation, not yet with real accounts.
- Approval notices through a Slack or Microsoft Teams incoming webhook, with the title, the agent, the risk and a summary of up to 400 characters.
- Outgoing webhooks to URLs the organization configures, signed with HMAC-SHA256.
- Its identity provider (OIDC for single sign-on and SCIM for provisioning).
- Meeting links, which point to Jitsi Meet (
meet.jit.si) by default: the server does not call Jitsi, the participants' browsers connect to it.
Other third parties without customer data#
The product's code and container images are hosted on GitHub and its container registry (ghcr.io); they receive no customer data. TLS certificates are issued automatically by an ACME certificate authority through the Caddy proxy (Let's Encrypt according to the repository configuration), which only learns domain names.
How to limit where data goes#
- Configure no AI key: the product works in simulation and nothing goes to model providers.
- In the organization's model policy, allow only the providers your internal policy accepts; the others are not called, not even as a fallback.
- Bring 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 (a local model or a regional gateway) as the
customprovider.
Tip
If your organization has data residency requirements, write to info@workforceai.es before turning on real AI: today we cannot guarantee a region.
Changes to the list#
We do not have a formal advance-notice process yet. The intention is to notify customers by e-mail with reasonable notice before adding a subprocessor, and the draft data processing agreement (DPA), pending legal review, includes an objection mechanism. Until then, write to info@workforceai.es if you want to receive those notices.