Referência
Segurança e conformidade
O que a API faz para proteger as suas chaves, o seu sistema e os dados das pessoas com quem a Torqyn conversa. Cada item descreve um mecanismo que está no ar.
Chaves
- Formato:
tq_test_outq_live_, um id curto e o segredo. A chave de teste só abre a conta de teste, e a de produção só a de produção. - Só o resumo é guardado: a Torqyn guarda o SHA-256 do segredo, nunca o segredo. A chave inteira aparece uma vez, na criação, e a comparação é feita em tempo constante.
- Menor acesso: escopos por chave, IPs ou faixas permitidos e validade de 30, 90 ou 365 dias. Qualquer falha responde o mesmo
unauthorized. - Troca e emergência: troca sem queda (crie, troque, revogue) e "Revogar todas", que corta todas as chaves ativas na hora. O passo a passo para chave vazada está em Chaves e autenticação.
- Força bruta: 20 chaves erradas em 10 minutos bloqueiam o IP por 15 minutos. Chave certa chamada de um IP fora da lista fica registrada como sinal de vazamento.
- Só o dono: criar e revogar chaves e webhooks é permissão do dono da conta, e cada criação e revogação vai para a trilha de auditoria com o começo da chave, nunca o segredo.
Webhooks
- Assinatura: HMAC-SHA256 do instante e do corpo, com um segredo
whsec_por endpoint, guardado cifrado (AES-256-GCM) e mostrado uma vez. Exemplos de conferência em Node, Python e PHP. - Janela de 300 segundos: o instante vai dentro da assinatura; recusar o que passou dessa diferença impede o reenvio de um corpo capturado.
- Troca do segredo: 24 horas com as duas assinaturas, depois só a nova.
- Destino: só
https, sem credencial na URL, e nunca para rede privada,localhostou endereço de metadados de nuvem: o IP é conferido na hora da conexão, a cada envio. - IP de saída:
54.94.20.141, para o seu firewall.
A plataforma
- Teste separado de produção: duas contas, separadas pelo próprio banco de dados, como a de qualquer outra empresa. Na de teste, o canal é simulado e nada sai para ninguém.
- Separação entre empresas: o banco de dados só entrega o que é da conta da chave. Recurso de outra conta responde como inexistente.
- Transporte: use sempre
https://platform.torqyn.com. A conexão é cifrada (TLS) pela Cloudflare até o nosso servidor, que não tem porta aberta para a internet. - Limites: por chave e por conta, com os cabeçalhos
RateLimit-*(Limites). - Registro sem conteúdo: cada requisição fica 30 dias com o começo da chave, a rota (sem os valores do caminho), o status, a duração e o IP. Corpo e credencial nunca são guardados.
- Idempotência: a mesma operação repetida acontece uma vez (Idempotência).
LGPD: quem é quem
- A empresa cliente da Torqyn é a controladora dos dados das pessoas atendidas: é ela que decide para que os dados servem e com qual base legal. Quando um parceiro integra o sistema dele pela API, ele trata esses dados a pedido da empresa cliente, nos termos do contrato entre os dois.
- A Torqyn é operadora: trata os dados em nome da empresa cliente, para prestar o serviço contratado.
- Base legal e consentimento: definidos pela controladora. Mensagem de marketing só sai com consentimento registrado, com a origem e a evidência (
POST /v1/contacts/{external_id}/consents); revogar não apaga o registro, que fica como prova do período em que valeu. - Direitos do titular: o pedido da pessoa é atendido pela controladora. O que chegar à Torqyn é encaminhado a ela, e apoiamos o atendimento, como diz a política de privacidade.
- Retenção: os dados da empresa cliente ficam enquanto durar o contrato, ou pelo prazo que ela definir. O registro de requisições fica 30 dias, a resposta guardada pela idempotência 24 horas, e as cópias de segurança são apagadas em até 30 dias.
- Suboperadores: a lista de quem trata dados com a Torqyn (servidores, mensagens, modelos de IA, e-mail) está na seção 6 da política de privacidade, e o caminho de cada dado na Central de confiança.
O que nunca sai pela API nem pelos webhooks
- Documento (CPF, CNPJ) de uma pessoa: nem na leitura do contato, nem no webhook.
- O texto das conversas no webhook: o evento diz o que aconteceu e onde, e o conteúdo fica na Torqyn.
- Dado sensível, como a gravação e a transcrição de uma reunião: nenhuma rota da API o devolve.
- Nome, telefone e e-mail no webhook, só se o endpoint escolheu levar.
E dentro da conversa
- Cartão: número de cartão que alguém digite é mascarado antes de ser gravado.
- Resposta retida: resposta da IA com documento, telefone ou e-mail de outra pessoa não sai; vai para o time decidir.
- Identidade antes do dado: para falar do que é de uma pessoa (um horário marcado em outra conversa, o resultado de uma consulta ao sistema da empresa), a conversa precisa provar quem escreve: o próprio canal ou um código enviado ao e-mail do cadastro.
- Descadastro acima de tudo: quem pediu para sair não recebe mensagem ativa em nenhum canal, e a API responde
opted_outem vez de enviar.
Reportar uma vulnerabilidade
Escreva para contato@torqyn.com com o assunto "Segurança", o que encontrou e como reproduzir. O mesmo contato está em /.well-known/security.txt.
Para testar, use uma conta de teste sua. Não acesse, altere nem apague dado de outra empresa ou de outra pessoa, e não tente derrubar o serviço. Se um incidente puder gerar risco ou dano relevante, comunicamos as empresas clientes afetadas, os titulares e a ANPD, conforme a lei.