我正在使用PHP SDK。我在管理员帐户下创建了一个用户帐户。我使用“代表发送”从用户帐户发送信封。我可以使用主帐户检查状态并下载完整的信封文档和标签数据,但是无法从主帐户更新信封通知设置。
我得到的错误是:
"errorCode": "USER_LACKS_PERMISSIONS",
"message": "This user lacks sufficient permissions to access this resource."
我无法代表其他用户通过API更新通知设置吗?这是相关的代码段:
$envelopeApi = new DocuSign\eSign\Api\EnvelopesApi($apiClient);
$expirations = new DocuSign\eSign\Model\Expirations();
$expirations->setExpireAfter('120');
$expirations->setExpireEnabled('true');
$expirations->setExpireWarn('0');
$reminders = new DocuSign\eSign\Model\Reminders();
$reminders->setReminderDelay('5');
$reminders->setReminderEnabled('true');
$reminders->setReminderFrequency('5');
$envelope_notification_request = new DocuSign\eSign\Model\EnvelopeNotificationRequest();
$envelope_notification_request->setReminders($reminders);
$envelope_notification_request->setExpirations($expirations);
$envelope_notification_request->setUseAccountDefaults('true');
$envelopeApi->updateNotificationSettings($accountId, $id,
$envelope_notification_request);
这是我收到错误消息的时间。我试过在标头中使用SendOnBehalfOf,并且没有,结果没有变化。有人知道是否根本无法使用该API代表另一个用户更新通知设置?
谢谢
答案 0 :(得分:0)
OAuth JWT Grant是推荐的身份验证技术,而不是旧的SOBO系统。有关如何执行此操作的示例,请参见https://github.com/docusign/eg-01-php-jwt。
这可能不是问题,但只能提供帮助。
最好是在创建信封时设置通知参数。
另一种可能性:当您尝试设置通知参数时,您确定信封不完整吗?
下一个想法:使用API Logging system查看发送到DocuSign的确切信息。对照该呼叫的API reference page进行检查,以检查呼叫是否正确。
最后,我不明白为什么您要请求默认帐户并尝试设置通知参数。不是一个还是另一个?