> ## Documentation Index
> Fetch the complete documentation index at: https://docs.niadra.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Subprocessadores

> Quem trata dado de cliente em nome da Niadra, para quê, o que recebe, onde e com que base contratual. Conferido contra o código e a configuração em 30/09/2026.

Um subprocessador é um terceiro que trata dado dos clientes da sua empresa em nome da Niadra. A lista abaixo é a mesma que vai como anexo do contrato de tratamento de dados (DPA), e cada linha foi conferida contra o código do servidor (`niadra-back`) e o template da nuvem (`niadra-infra/aws/cluster.yaml`): nada está aqui sem estar em uso, e nada em uso está fora daqui.

A lista muda por contrato. Um subprocessador novo entra nesta página e no anexo antes de receber qualquer dado, e o contrato diz o prazo do aviso e o direito de objeção da sua empresa.

## Os subprocessadores

| Subprocessador | Para quê | O que recebe | Onde | Base contratual |
| - | - | - | - | - |
| **Amazon Web Services** (EC2, RDS PostgreSQL, S3, KMS, Secrets Manager, SNS, CloudWatch Logs, ECR, Route 53, SES) | A nuvem em que a Niadra roda: a máquina, o banco, o armazenamento de objetos, a chave-mestra, o cofre de segredos, os alertas, os logs, as imagens dos serviços, o DNS e o e-mail do plano de controle | Toda a memória, cifrada em repouso pela nuvem e, no conteúdo de conversas, fatos e contexto, uma segunda vez pela aplicação (AES-256-GCM, chave por espaço). Os logs não levam conteúdo. O e-mail leva o endereço do encarregado do cliente e um código ou um aviso, nunca dado de cliente final | `us-east-2` (Ohio, Estados Unidos). Toda região de dados da Niadra é uma região da AWS, e o contrato nomeia a da sua empresa | Termos de serviço da AWS, com o AWS Data Processing Addendum que faz parte deles; a AWS publica as certificações ISO 27001, SOC 2 e PCI DSS dos serviços usados |
| **OpenRouter** | O roteador por onde a Niadra chama os dois modelos de IA. Cada pedido leva `data_collection: deny` (o provedor final não pode guardar o pedido para treino ou melhoria) e `zdr: true` (só rotas com retenção zero) | O texto das conversas, já mascarado (e-mail, telefone, cartão, IBAN, endereço, documentos e contas bancárias trocados por marcadores dentro da célula), e as amostras de eventos que o assistente de configuração lê | Fora da região dos dados; o OpenRouter não fixa região | Termos de uso do OpenRouter; a política de retenção zero e a recusa de coleta são pedidas em cada chamada, no código (`niadra-back/src/niadra/adapters/outbound/llm/openrouter.py` e `jev.py`). Não há contrato negociado |
| **OpenAI** (modelo GPT-6 Luna, `openai/gpt-6-luna`) | O modelo de geração: extrai fatos, pendências, promessas, valores e o desfecho de cada conversa, escreve as propostas do assistente de configuração e destila as notas de trabalho dos agentes | O mesmo texto mascarado e as mesmas amostras, pelo OpenRouter | Fora da região dos dados, sem região fixa | Pelo OpenRouter, sob a política de retenção zero da rota; não há contrato direto entre a Niadra e a OpenAI |
| **TypeSafe** (modelo Jev, `typesafe/jev-1.13`) | O modelo de decisão: responde se uma conversa vale extrair, se um turno tenta instruir o agente, a categoria sensível de um texto, o tipo de uma pergunta do agente e se duas afirmações se contradizem. Devolve rótulos e probabilidades, nunca texto | O texto mascarado, como o da extração | Fora da região dos dados; o fornecedor não publica região de processamento nem prazo de retenção próprios | Pelo OpenRouter, com retenção zero pedida em cada chamada; não há contrato direto |

Sobre o e-mail: a Niadra manda e-mail pelo Amazon SES, em `us-east-2`, só a partir do plano de controle (o código de decisão de um pedido de aprovação, o aviso de um pedido ao encarregado do cliente e o aviso de um acesso de emergência). O domínio `niadra.com` está verificado no SES; a conta ainda está na caixa de areia do SES, em que o serviço só entrega a endereços verificados, então até a liberação para produção a Niadra confirma cada endereço de encarregado antes de usá-lo.

## O que roda dentro da região, sem terceiro

* O mascaramento por regras e o detector de dado pessoal que preparam o texto antes do modelo (`niadra-back/src/niadra/domain/extract/redaction.py` e o servidor de modelos da célula, `niadra-back/models/`).
* O modelo de busca por significado (embeddings) e a leitura de texto em PDF, imagem e documento de escritório: nenhum arquivo do cliente chega a um terceiro (`niadra-back/src/niadra/adapters/outbound/media_text.py`).
* A leitura do contexto: nenhum modelo é chamado quando o agente pede o contexto.

## Quem não é subprocessador

Terceiros que a Niadra usa e que não tratam dado de cliente:

| Terceiro | Uso | Por que não trata dado de cliente |
| - | - | - |
| GitHub | Código, pull requests e o CI | Os repositórios não contêm dado de cliente nem credencial da nuvem; o CI roda com dados sintéticos e nada nele implanta |
| Mintlify | Hospeda esta documentação (`docs.niadra.com`) | Só as páginas públicas; nenhum dado da memória passa por aqui |
| Let's Encrypt | Certificados TLS dos hosts da Niadra | Recebe só os nomes dos hosts |
| O provedor de identidade da sua empresa (OIDC ou SAML) | Login das suas pessoas no Console | É seu, não da Niadra; a Niadra recebe a identidade e os grupos que ele envia |
| Os seus endpoints: webhooks, SIEM, bucket de exportação | Destinos das entregas e da exportação contínua | São seus; a Niadra grava neles e nunca lê deles |

## Como conferir

Os pedidos aos modelos e o `provider` que cada um leva estão em `niadra-back/src/niadra/adapters/outbound/llm/`. Os serviços da AWS estão no template `niadra-infra/aws/cluster.yaml` e no `niadra-infra/README.md`. O site publica a mesma lista em [niadra.com/recursos](https://niadra.com/recursos#subprocessadores). Um cliente sob acordo de confidencialidade pode ler os dois repositórios.

## Próximos passos

<CardGroup cols={2}>
  <Card title="Uso de dados" href="/security/data-use">
    o que a Niadra faz e não faz com os dados.
  </Card>

  <Card title="Modelo de ameaças" href="/security/threat-model">
    a fronteira com os modelos de IA e o risco residual dela.
  </Card>
</CardGroup>
