用途:面向 Intercom 集成,处理敏感联系人数据,兼顾 GDPR/CCPA 合规,覆盖数据导出、删除、PII 脱敏与保留策略等五个工作流。
主要能力:一是 DSAR 导出,exportContactData(contactId) 汇总联系人资料、全部对话及对话分片、标签、分组与数据事件;二是删除权(第17条),deleteContactData(contactId) 先导出留存审计线索,再从 Intercom 与本地缓存删除,并记录不含原始 PII 的审计条目(邮箱以哈希形式保存);三是批量导出,bulkExportMessages(start, end) 发起异步 /export/messages/data 任务,checkExportStatus(jobId) 轮询直至返回 CSV 的 download_url;四是日志 PII 脱敏,redactIntercomData(data) 在记录日志前遮蔽固定的 PII_FIELDS 集合(含嵌套 custom_attributes.*);五是保留策略执行,enforceRetention() 每日定时清理超出 RETENTION 窗口的缓存记录,且不触碰 7 年审计日志。
使用方式:需了解 GDPR/CCPA 要求、安装 intercom-client SDK、准备审计日志数据库并熟悉 Intercom 联系人与对话数据模型。所有调用通过 Bearer 头携带访问令牌,令牌存于环境变量 INTERCOM_ACCESS_TOKEN,切勿硬编码或写入日志。导入方式为 import { IntercomClient } from "intercom-client";。给予令牌最小必要权限(导出需读取联系人与对话,擦除需写入/删除);若令牌出现在日志或 diff 中应立即轮换。原始 REST 调用使用 Authorization: Bearer ${process.env.INTERCOM_ACCESS_TOKEN}。
适用场景与限制:适用于处理敏感 Intercom 联系人数据的合规集成。五个流程均以数据最小化为原则,只同步需要的字段。导出任务数据集较大时可能长时间处于 pending,建议每 30 秒轮询、1 小时超时;删除返回 404 表示已删除,应记录并继续(幂等);对话正文可能含用户提交的 PII,记录前需正则扫描并脱敏;审计日志写入失败需用预写日志或队列。完整可复制的 TypeScript 实现与示例分别在 references/implementation.md 和 references/examples.md。企业访问控制与权限范围可另见 intercom-enterprise-rbac 技能。