You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用DocuSign处理文档时持续出现AUTHORIZATION_INVALID_TOKEN错误求助

问题描述

账户详情:

$integrationKey = '9eaed807-bd9f-4d38-b858-37f6eccc6b73'; // Your Integration Key
$userId = 'd4300ed6-aa42-47cd-b687-01c825726abd'; // Your User ID (GUID)
$accountId = '8c637b59-afa2-4821-8c5d-981bacf4ddde'; // Your Account ID

使用PHP发起签署操作时,持续遇到401错误:

请求服务器时出错,收到非成功HTTP状态码[401],响应体为:
O:8:"stdClass":2:{s:9:"errorCode";s:27:"AUTHORIZATION_INVALID_TOKEN";s:7:"message";s:59:"The access token provided is expired, revoked or malformed.";}

排查与解决方案

1. 检查访问令牌有效性

  • 确认令牌是否过期:多数OAuth2令牌(包括DocuSign的)默认1小时有效期,到期需重新获取
  • 验证令牌是否被撤销:若集成密钥、关联用户权限被修改或禁用,令牌会失效,需检查账户权限配置
  • 核对令牌格式:确保请求中携带的令牌完整,无截断、多余引号或转义字符

2. 验证JWT授权流程(若使用JWT)

如果通过JWT获取令牌,需确认:

  • 集成密钥已启用JWT授权,且绑定的用户ID与上述$userId一致
  • 生成JWT的私钥未过期、未泄露,且与DocuSign平台配置的公钥匹配
  • JWT参数合规:受众(aud)需对应沙箱(account-d.docusign.com)或生产环境(account.docusign.com),过期时间(exp)不能超出合理范围

3. 检查请求头的令牌携带方式

确保请求头正确设置授权字段,示例:

$headers = [
    'Authorization: Bearer ' . $accessToken,
    'Content-Type: application/json'
];

注意Bearer与令牌之间必须有空格,避免格式错误

4. 核对账户与环境匹配

  • 确认集成密钥、用户ID、账户ID属于同一环境(沙箱/生产),禁止混用沙箱令牌访问生产API,反之亦然
  • 检查API端点是否正确:沙箱用https://demo.docusign.net/restapi,生产用https://www.docusign.net/restapi

5. 测试令牌有效性

可通过调用用户信息端点验证令牌是否可用:

$ch = curl_init('https://demo.docusign.net/restapi/v2.1/oauth/userinfo');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer ' . $accessToken]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);

若返回401则令牌无效,需重新生成;若返回用户信息,再检查签署请求的其他参数是否正确

内容的提问来源于stack exchange,提问作者Uday Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 13:15:59