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

如何调用官方Xbox Web API获取用户账号数据?

官方Xbox Web API 调用指南及端点说明

前置步骤:令牌转换

你拿到的Azure AD访问令牌无法直接调用Xbox API,需先转换为Xbox Live令牌和XSTS令牌:

  1. 获取Xbox Live用户令牌

    • 请求端点:POST https://user.auth.xboxlive.com/user/authenticate
    • 请求体(JSON格式):
      {
        "Properties": {
          "AuthMethod": "RPS",
          "SiteName": "user.auth.xboxlive.com",
          "RpsTicket": "d={你的Azure AD访问令牌}"
        },
        "RelyingParty": "http://auth.xboxlive.com",
        "TokenType": "JWT"
      }
      
    • 响应提取:Token字段为Xbox Live用户令牌,DisplayClaims.xui[0].uhs为用户哈希(后续请求需用)
  2. 获取XSTS令牌

    • 请求端点:POST https://xsts.auth.xboxlive.com/xsts/authorize
    • 请求体(JSON格式):
      {
        "Properties": {
          "SandboxId": "RETAIL",
          "UserTokens": [
            "{你的Xbox Live用户令牌}"
          ]
        },
        "RelyingParty": "http://xboxlive.com",
        "TokenType": "JWT"
      }
      
    • 响应提取:Token字段为XSTS令牌

核心数据获取端点

所有请求需在请求头中携带授权信息:Authorization: XBL3.0 x={用户哈希};{XSTS令牌}

  • 用户概要信息(summaries)
    根据玩家标签(Gamertag)获取:
    GET https://profile.xboxlive.com/users/gt({玩家标签})/profile/settings?settings=Gamerscore,GameDisplayPicRaw,Gamertag
    根据用户XUID获取:
    GET https://profile.xboxlive.com/users/xuid({XUID})/profile/settings?settings=Gamerscore,GameDisplayPicRaw,Gamertag
    可修改settings参数获取更多字段,比如ProfileBio、Location等。

  • 用户统计数据(UserStats/profileStats)
    获取特定游戏的玩家统计数据:
    GET https://stats.xboxlive.com/users/xuid({XUID})/scids({游戏SCID})/stats
    说明:SCID是游戏的服务配置ID,公开游戏的SCID可通过Xbox开发者文档或游戏官方渠道获取;部分统计数据需游戏开发者授权访问。

注意事项

  • Azure AD应用注册时,需添加Xbox Live的委托权限(如XboxLive.signin、XboxLive.offline_access)并完成管理员同意
  • 令牌有效期有限,可通过refresh token重新获取Azure AD令牌,再重复令牌转换流程

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 19:04:59