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

Android应用中Alexa应用间账号关联:Skill Activation API报错求助

Alexa应用内账号关联与技能激活400错误排查建议

问题场景

我在Android应用中实现Alexa应用到应用的账号关联,执行步骤如下:

  • 完成LWA fallback URL配置,使用Alexa自定义技能账号关联页面获取的Client ID
  • 在浏览器打开LWA URL后,完成亚马逊登录,确认技能授权(点击“允许”按钮)
  • 获取Auth-Token后,调用token API拿到Access Token
  • 调用Skill Activation API:
POST /v1/users/~current/skills/{skillId}/enablement HTTP/1.1
Host: api.amazonalexa.com, api.eu.amazonalexa.com, api.fe.amazonalexa.com
Content-Type: application/json
Authorization: "Bearer {Amazon Access Token}"
{
    "stage": "skill stage",
    "accountLinkRequest": {
        "redirectUri": "https://yourRedirectURI",
        "authCode": "Your user's authorization code from your authorization server",
        "type": "AUTH_CODE"
    }
}

使用的参数值:

  • Amazon access token:从Amazon token API获取
  • redirectUri:https://pitangui.amazon.com/api/skill/link/XXXXXXXXXXX
  • authCode:成功登录亚马逊后获取

但调用API时收到400错误请求,返回信息:

{"message":"Invalid account linking credentials"}

排查建议

1. 核对authCode的来源与有效性

  • 注意:Skill Activation API中的authCode要求是你的自有授权服务器生成的代码,而非亚马逊LWA登录返回的授权码。确认你传入的代码是否符合这个要求。
  • 检查authCode是否过期,这类授权码通常有效期较短(如5分钟),确保调用API时代码仍在有效期内。

2. 验证redirectUri的一致性

  • 确认redirectUri与你在Alexa技能控制台账号关联设置中填写的重定向URI完全一致,包括协议、域名、路径,不能有任何字符差异(比如大小写、末尾斜杠)。
  • 检查该URI是否已在亚马逊开发者控制台的LWA配置中被添加为允许的重定向URI。

3. 检查Amazon Access Token的权限

  • 确保获取的Access Token包含alexa::skills:enable权限,可通过亚马逊token introspection API验证权限范围。
  • 确认Access Token未过期,过期token会导致权限验证失败。

4. 修正Skill Activation API的参数格式

  • stage参数需填写实际值:development或live,与你的技能部署阶段匹配,不能使用占位符文本"skill stage"。
  • 检查请求体的JSON格式,确保引号闭合、逗号无多余,避免语法错误导致请求解析失败。

5. 验证账号关联配置一致性

  • 确认Alexa技能控制台中账号关联的授权类型设置为Auth Code Grant,与API中type: "AUTH_CODE"匹配。
  • 检查技能的Client ID、Client Secret是否与LWA配置中的信息一致,避免两端配置冲突。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 08:39:46