有什么方法可以使用 REST API 从 salesforce 中检索已删除的记录?

Is there any way to retrieve deleted records from salesforce using REST API?

我已将我的 Salesforce 对象数据加载到 Azure SQL。现在我希望删除 Salesforce 中的一条或多条记录,然后我可以使用 REST API.

检索这些记录

有什么方法可以为特定对象的那些记录创建 REST API?

“是的,但是”。

默认顺丰软删除记录,它们仍然可以在回收站UI中看到并从那里恢复。 (还有一个跳过回收站的硬删除调用)。

记录最多可保留 15 天。 bin 的容量取决于您组织的数据存储,请参阅 https://help.salesforce.com/articleView?id=home_delete.htm&type=5。因此,如果您大量删除大量数据,垃圾箱可能会溢出。

要检索这些,您需要调用 /queryAll 而不是 /query 服务。并按 isDeleted 列过滤,该列未显示在设置中,但几乎出现在每个对象上。参见 https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/dome_queryall.htm

/services/data/v49.0/queryAll/?q=SELECT+Name+from+Account+WHERE+isDeleted+=+TRUE

如果这对您来说不够好,如果您冒着 Bin 溢出或操作被硬删除的风险 - 您可以进行自己的软删除(将记录移动到角色层次结构之外的某个特殊所有者,这样它们就变得不可见了除了系统管理员之外的所有人?)或改变策略。从 SF 推送信息而不是拉取信息。即使在删除、手动或使用 Change Data Capture 时也发送平台。 (我认为 CDC 不会在硬删除时生成事件,您必须阅读)