您好,我正在为我的新应用程序测试 SmartSheet Api。我试图使用假设用户功能。我有一个系统管理员帐户,如 [电子邮件受保护] 和一个非管理员帐户 [电子邮件受保护]。我收到错误代码 1030
注意:我目前有试用计划。
我正在传递以下标题
{'Authorization': 'Bearer {admin's token}',
'Content-Type': 'application/json',
'Assume-User': 'user%40xxxx.com'}
我使用管理员帐户使用 OAUTH 生成了此令牌,并且我请求了以下范围
ACCESS_REQUEST = [
"ADMIN_SHEETS",
"ADMIN_SIGHTS",
"ADMIN_USERS",
"READ_USERS",
"ADMIN_WEBHOOKS",
"READ_SHEETS",
"READ_SIGHTS",
"ADMIN_WORKSPACES",
"READ_CONTACTS"
]
我正在尝试达到
users/me
端点。我收到以下错误。
{'errorCode': 1030,
'message': 'You are unable to assume the user specified.',
'refId': 'h4tq8b'}
我怀疑您看到的错误是由于您使用 OAuth 为管理员用户帐户生成 API 访问令牌而引起的。如果我指定通过 OAuth 生成的令牌,我可以重现该错误,但如果我指定通过 Smartsheet Web 应用程序 (UI) 手动生成的令牌,则获取当前用户调用会成功。
我建议您以管理员用户身份登录 Smartsheet Web 应用程序 (UI),并手动生成 API 访问令牌,如下所述:原始令牌请求。然后在请求的
Authorization
标头中指定访问令牌,并且 获取当前用户 调用应返回成功的响应。
最后,还值得注意的是,您在这种情况下尝试模拟的非管理员用户帐户必须是与拥有
Authorization
标头中指定的令牌的管理员用户帐户相同的 Smartsheet 帐户的成员。
@Aryan Singh,您是如何使用商业计划使其发挥作用的?我也有类似的问题。