Last updated September 2026

Subprocessors

The third parties that can reach data in a hosted attest_tag deployment. Each one is under contract, each one is limited to the purpose named below, and none of them may train a model on your data.

The list

  • Google Cloud Platform

    Hosting, compute and secret storage for the managed deployment

    ReachesApplication data, in transit and at rest

    United States

  • Stripe

    Payment processing for the monthly subscription and prepaid AI credit

    ReachesBilling contact and payment details. Card numbers go to Stripe directly and are never held by us — we keep their customer and subscription ids, and see only the brand, last four digits and expiry

    United States

  • Cloudflare

    DNS, content delivery and edge protection for our domains

    ReachesAll traffic, in transit

    Global (US entity)

  • Supabase

    Managed database, file storage and authentication

    ReachesApplication records: sessions, artifacts, uploaded documents

    United States

  • OpenRouter AI

    Model routing for assistant turns

    ReachesPrompt content: thread text, document excerpts, tool results

    United States

  • Microsoft (Azure Bot Service)

    Carries messages between Microsoft Teams and the bot, for organisations that connect Teams

    ReachesTeams messages to and from the bot, with the sender’s Teams identity, in transit

    Global (US entity)

  • Google Workspace

    Our own email and internal documents

    ReachesCorrespondence with you

    United States

  • Resend

    Transactional and contact-form email delivery

    ReachesRecipient address and message contents

    United States

  • Sentry

    Error monitoring and diagnostics for our own services

    ReachesStack traces and technical error data

    United States

If you run it yourself

attest_tag is built to run on infrastructure you control, and in that arrangement this page is not your list — yours is. The database file, the documents and the audit ledger stay where you put them.

The one call that necessarily leaves your network is the model call, to the endpoint you configured, plus the services you chose to connect. With OpenRouter, deny-training routing is on by default, so a turn only reaches providers that do not train on prompts.

What each one is held to

Every subprocessor is engaged under written terms that carry the same obligations we owe you: process only on instruction, keep it confidential, secure it, and delete it when the engagement ends. A vendor that will not commit to those terms does not go on this page, and therefore does not touch your data.

Access is scoped to the purpose in the row. No subprocessor receives your data to sell, to share, or to build anything of its own with.

Changes to this list

Before a new subprocessor starts handling customer data we will update this page and notify anyone on a hosted plan, with enough notice to object. The mechanics of that notice — how long, and what an objection does — are in the data processing agreement.

Questions

Ask us anything about this list at [email protected], or read the data processing agreement and the privacy policy.