AI电子邮件代理的GDPR合规性:设置保留与删除

AI电子邮件代理的GDPR合规性:设置保留与删除

为什么当您的AI读取真实的客户电子邮件时,自动删除是基本要求

当您部署一个AI代理来读取和回复电子邮件时,它使用的邮箱会积累个人数据:客户姓名、地址、订单历史、支持投诉。在演示中这不是问题,但是一旦真实人员的信息落入该收件箱,您就承担了GDPR等法规下的法律义务。

为什么这在当下(2026年7月)很重要

数据保护不再是可有可无的。处理客户电子邮件的组织正面临越来越大的压力,需要证明他们有合理的保留策略,并且能够在被要求时真正删除某个人的数据。大多数AI电子邮件演示完全跳过了这一点——代理读取、归档文件,而收件箱只会越来越大。直到合规官员或客户的律师问:“您如何删除我的数据?”这套方法才行不通。如果您的回答是“我们永远保留一切”,您就有麻烦了。

代理邮箱有何不同

代理账户(Agent Account)是AI模型拥有的邮箱——就像 [email protected] 对模型负责而不是对人类负责。每条入站消息都会落入其中,并且因为它包含真实人员的个人数据,在GDPR下,该数据需要两样东西:有记录的保留时间窗,这样它就不会永远存在;以及经过验证的删除路径,这样当某人请求时,您可以删除他们的特定消息。

好消息是:无论如何您都会使用的API原语——列出、读取和删除邮件——其工作方式与常规的Nylas集成完全相同。新的是 控制平面保留策略(control-plane retention policy) 它设置邮件自动保留的时间,以及 数据平面删除操作(data-plane erasure operation) 它按需删除某人的数据。

这两个层回答不同的问题。保留回答了“我们任何东西保留多久?”——一个全面的时间限制。删除回答了“现在删除此人的数据”——一个有针对性的请求。合规的代理邮箱需要两者;一个不能替代另一个。

了解这两层

保留(Retention) 是一个控制平面设置,位于策略上——一种应用范围的资源,捆绑了限制和垃圾邮件设置——附加到您的代理账户所属的工作区。两个字段限制了邮件存在的时间:

  • limit_inbox_retention_period ——在平台自动删除之前,消息在收件箱中保留的天数。
  • limit_spam_retention_period ——删除前消息在垃圾邮件中保留的天数。

设置一次,平台就会为您执行它们,不需要您这边设置定时任务(cron job)。该工作区中的每个账户都会继承这些时间窗。

删除(Erasure) 是一个数据平面操作。要满足某个人的删除权请求,您需要通过发件人找到他们的消息,然后硬删除每一条。普通删除只是将消息丢弃到废件箱(可恢复);硬删除才是真正的清除。

一个重要的注意事项:API可以从邮箱中删除消息。您制作的任何派生副本——数据库中的行、应用程序日志中的行、向量存储中的嵌入——由您自己负责单独清除。Nylas的删除不会触及您的Postgres。

在策略上设置保留时间窗

在免费计划中,保留默认值为收件箱30天和垃圾邮件7天,而且这些默认值是不可配置的。付费计划允许您设置自己的时间窗。无论哪种方式,选择符合您记录在案的保留计划的时间窗——您写给审计员看的数字,而不是您猜测的数字。

步骤1:创建保留策略

使用curl:

curl --request POST \
  --url "https://api.us.nylas.com/v3/policies" \
  --header "Authorization: Bearer REPLACE_WITH_NYLAS_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "name": "Support Agent Retention Policy",
    "limits": {
      "limit_inbox_retention_period": 365,
      "limit_spam_retention_period": 30
    }
  }'

或者使用Nylas CLI:

nylas agent policy create --data '{
  "name": "Support Agent Retention Policy",
  "limits": {
    "limit_inbox_retention_period": 365,
    "limit_spam_retention_period": 30
  }
}'

两者都返回一个 policy_id。保留它——策略本身不会做任何事情,直到工作区指向它。

步骤2:将策略附加到您的工作区

您的代理账户在配置时会自动创建一个默认工作区。将策略附加到该工作区,以便其中的每个账户都能继承保留时间窗。

使用curl:

curl --request PATCH \
  --url "https://api.us.nylas.com/v3/workspaces/REPLACE_WITH_WORKSPACE_ID" \
  --header "Authorization: Bearer REPLACE_WITH_NYLAS_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "policy_id": "REPLACE_WITH_POLICY_ID"
  }'

或使用CLI:

nylas workspace update REPLACE_WITH_WORKSPACE_ID --policy-id REPLACE_WITH_POLICY_ID

这就是平台端保留的完整故事。从这里开始,Nylas会自行执行时间窗——不需要您编写、监控或排除故障的定时任务。

构建删除路径

保留处理被动情况:邮件按计划老化。删除处理主动情况:当有人要求您删除他们的数据时,您就删除它。

要删除特定人员的消息,请通过发件人地址找到他们的邮件,然后硬删除每一封:

curl --request DELETE \
  --url "https://api.us.nylas.com/v3/grants/REPLACE_WITH_GRANT_ID/messages/REPLACE_WITH_MESSAGE_ID?hard_delete=true" \
  --header "Authorization: Bearer REPLACE_WITH_NYLAS_API_KEY"

要进行完整的身份清除——删除授权本身——请使用:

curl --request DELETE \
  --url "https://api.us.nylas.com/v3/grants/REPLACE_WITH_GRANT_ID" \
  --header "Authorization: Bearer REPLACE_WITH_NYLAS_API_KEY"

参数 hard_delete=true 至关重要。如果没有它,您只是将消息移至废件箱——并没有真正清除它。

为什么分开如此重要

将保留(控制平面)与删除(数据平面)分开,会迫使您思考两个不同的问题。保留是您设置一次就忘记的全面时间限制。删除是您构建用于响应个人请求的工作流程。两者都是必要的。具有保留时间窗但没有删除路径的邮箱,在有人要求时仍然可能拒绝删除他们的数据。具有删除功能但没有保留时间窗的邮箱,如果没有人要求删除,可以永远保留消息。

结论

构建一个合规的代理邮箱意味着将数据保护视为基础设施,而不是事后才想到的事情。一旦您设置了策略,Nylas就会自动处理保留;而删除则需要您有一个记录在案的流程,以便在有人要求时找到并删除他们的消息。两者结合,可以让您向监管机构(或律师)证明您既有时间限制,也有删除路径。在2026年,对于任何涉及真实电子邮件的AI代理来说,这些都是基本要求。

优点

  • 保留由平台执行,而不是您的定时任务——不存在定时任务静默失败的风险。
  • 两个独立的层(保留和删除)清晰地将“全面时间限制”与“删除此人的数据”区分开来。
  • API与常规的Nylas集成完全相同——无需学习新概念。
  • 免费计划内置了30天的收件箱默认值,因此即使是演示也有一定的保护。
  • 付费计划是完全可配置的,让您可以匹配您法务团队的保留计划。
  • 附加策略是一次性操作;更新保留时间窗会自动应用于工作区中的所有账户。

缺点

  • API只删除邮箱中的消息,而不删除您自己的数据库、日志或向量存储中的副本——您必须单独跟踪并清除它们。
  • 免费计划的保留固定为收件箱30天和垃圾邮件7天,因此它可能不符合您的合规要求。
  • 删除是一项手动的数据平面操作,不是自动的——您必须构建工作流程来接收并兑现删除请求。
  • 未附加策略的工作区按您计划的默认限制运行账户,这在付费计划中可能意味着根本没有保留限制。
  • 平台强制执行保留时间窗,但如果在审计时,您仍有责任证明合规性。

注意

本文仅供教育目的,并根据文档解释Nylas API。这不是法律建议。在生产环境中实施保留和删除之前,请验证您选择的保留时间窗(例如365天)是否符合您记录在案的合规策略和法务团队的要求。在运行任何命令之前,请用您的实际值替换所有占位符值(REPLACE_WITH_NYLAS_API_KEY、REPLACE_WITH_WORKSPACE_ID、REPLACE_WITH_POLICY_ID、REPLACE_WITH_GRANT_ID、REPLACE_WITH_MESSAGE_ID)。在依赖本指南之前,请查阅Nylas官方文档和您组织的法务或合规团队。

常见问题解答

普通删除和硬删除之间有什么区别? ——普通删除将消息移至废件箱,可以在那里恢复。硬删除(?hard_delete=true)是真正的清除,无法撤销。

如果我使用的是免费计划,我还需要设置保留策略吗? ——不需要,免费计划默认内置了30天的收件箱保留和7天的垃圾邮件保留。如果这些时间窗符合您的需求,您无需设置策略。付费计划要求您明确配置保留。

Nylas能删除我已经复制到数据库中的数据吗? ——不能。Nylas API仅删除邮箱中的消息。任何派生副本——数据库行、日志或嵌入——您都有责任清除。

如果我附加了一个保留时间窗短于垃圾邮件时间窗的策略,会发生什么? ——API将拒绝它。垃圾邮件保留期必须短于收件箱保留期,以便垃圾邮件在合法邮件之前被清除。

工作区中的所有账户是否都继承相同的保留策略? ——是的。工作区中的每个代理账户都继承附加到该工作区的策略的保留时间窗。

如果我以后需要更改保留时间窗怎么办? ——只需使用PATCH请求修改策略以更改时间窗。该工作区中的所有账户都将立即遵循新的计划。

我可以删除特定消息而不对其进行硬删除吗? ——可以,但普通删除只会将其移至废件箱。要真正清除它(使其不可恢复),请使用 ?hard_delete=true 参数。

有没有办法自动化删除过程? ——API支持自动删除,但根据平台规定,您将需要构建自己的工作流程来接收删除请求并调用每条消息的硬删除端点。

标签

#gdpr #email #dataprotection #compliance #retention #api #erasure #agentmail

Free field guide

Incident Response: First Hour

A calm, evidence-preserving checklist for establishing control, bounding impact, communicating clearly, and containing an incident safely.