我正在尝试通过 Tooling API 创建触发器。这在 Salesforce 内执行,并在同一个 Salesforce 组织上执行。这是在开发组织中完成的,运行用户是管理员。
当我创建MetadataContainer
它时,它按预期工作。当我创建ApexTriggerMember
时,出现以下错误:
INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY
以下是过程中的一些调试:
The JSON that is sent to create the MetadataContainer
{"Name":"Container 2013-03-08 17:28:06"}
它被发送到的 URL
https://na11.salesforce.com/services/data/v27.0/tooling/sobjects/MetadataContainer/
响应:
{"id":"1dcG0000000PAwZIAW","success":true,"errors":[]}
为创建 ApexTriggerMember 而发送的 JSON
{"MetadataContainerId":"1dcG0000000PAwZIAW","Body":"trigger TestTrg1 on Account (after insert, after update, before insert, before update) {\n\n}"}
它被发送到的 URL:
https://na11.salesforce.com/services/data/v27.0/tooling/sobjects/ApexTriggerMember/
响应:
[{"fields":[],"message":"insufficient access rights on cross-reference id","errorCode":"INSUFFICIENT_ACCESS_ON_CROSS_REFERENCE_ENTITY"}]
任何帮助是极大的赞赏。