← Back to home

Sub-processors

Version 2026-05-09 · Effective 2026-05-09

Draft. This text has not yet been through legal review. The structure is final but the wording may change before customers sign at this version. Do not point procurement at this page.

We use the sub-processors listed below to deliver the SupportCore Service. Every entry has access only to the data it needs for the described purpose, is bound by data protection obligations no less protective than our Data Processing Agreement, and is included in the sub-processor section of our Article 28 records.

We give customers at least 30 days notice before adding a new sub-processor that processes workspace content, via in-app banner and email to the workspace owner. See Section 6 of the Data Processing Agreement for the right-to-object process.

The table below is the source of truth — it is generated from app/lib/legal/sub-processors.ts so any change is shipped through the normal PR + version-bump process.

Sub-processorPurposeRegionData sharedRetention
RailwayApplication hosting + PostgreSQLUnited StatesAll operational data — tickets, conversations, user accounts, audit logsActive for the life of the subscription; backups per Railway's PITR window
Cloudflare R2File storage (avatars, ticket attachments, exports)United StatesUploaded files plus generated export bundlesUntil the underlying record is deleted (lifecycle-tied)
Cloudflare (Edge / WAF / Turnstile)Edge network, bot protection, custom-domain TLSGlobal edgeRequest IPs, paths, user-agent stringsApprox. 7 days log retention per Cloudflare defaults
PostmarkOutbound + inbound transactional emailUnited StatesSender, recipient, subject, message body of every email45-day message archive per Postmark's terms
StripeSubscription billing + payment processingUnited StatesTenant billing email, plan, payment method (tokenised)Per Stripe's data retention policy
OpenAIAI bot replies, agent assist, sentiment, KB embeddings, chat summariesUnited StatesPrompt content (ticket subject + body excerpts, chat transcripts)Zero-retention when enrolled (default for our org); otherwise 30-day abuse monitoring per OpenAI's API data policy
SentryError monitoringUnited StatesUser id + email + breadcrumbs on errors that involve a logged-in user90 days
SlackTwo-way notifications + interactive shortcuts (Marketplace app)United StatesWorkspace install metadata + agent identity on attributed postsSlack workspace-side retention controlled by the customer's Slack admin
Apple APNsPush notifications to iOS clientsUnited StatesDevice push tokens + payload (title + body)Per Apple's APNs documentation
Google FCMPush notifications to Android + web clientsUnited States / GlobalDevice push tokens + payload (title + body)Per Google's FCM documentation
AtlassianOptional Jira + Confluence sync (per-tenant opt-in)Tenant-selected (US / EU)Ticket subject + body + status when sync is enabledPer Atlassian's privacy notice
DeepLMachine translation for Knowledge Base articlesEU or US (tenant-configured)Article title, subtitle, and body text during translation jobsZero-retention for Pro API access per DeepL terms
Google CloudMachine translation fallback for Knowledge Base articlesUnited States / GlobalArticle title, subtitle, and body text during translation jobsPer Google Cloud Data Processing Addendum