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

调用Xero getClientCredentialsToken返回错误权限范围求助

Xero-node Client Credentials模式下Token权限不符导致403的解决方案

首先修正代码里的拼写错误:你写的clientSecret: CLIENT_SECTRET,里的变量名少了一个字母E,应该是CLIENT_SECRET。这个错误会导致认证时使用错误的密钥,很大概率是你获取到错误权限Token的直接原因。

接下来,针对Xero的Custom Connections(Client Credentials模式),权限的生效逻辑不是完全由代码中的scopes参数决定的:

  • 登录Xero开发者后台,找到你的应用,进入「Custom Connections」页面
  • 选中当前使用的连接,查看「Permissions」列表,确认已添加accounting.transactions和accounting.contacts权限
  • 若未添加,点击「Add permission」添加这两项权限,保存后重新获取Token

补充说明:xero-node在Client Credentials模式下,代码中的scopes参数主要用于验证后台配置的权限是否覆盖这些范围,而非主动请求权限。所以即便代码里指定了scopes,后台没配置对应的权限,Token里也不会包含这些权限。

最后,获取Token后可以用JWT解码工具查看Payload中的scp字段,确认是否包含所需权限,再调用Accounting相关接口即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 19:22:40