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

Django/React项目调用Alpaca Broker API获取relationship ID遇到认证错误

Alpaca Broker API获取relationship ID认证错误解决方案
  • 环境匹配校验:Alpaca沙箱与生产环境的密钥、请求地址完全独立,测试阶段必须使用沙箱专属密钥,对应请求地址前缀为https://broker-api.sandbox.alpaca.markets,生产环境需更换为对应生产密钥和https://broker-api.alpaca.markets地址,环境不匹配必然触发401认证错误。
  • 认证格式校验:Broker API采用HTTP Basic Auth规则,而非普通交易API的自定义请求头传密钥模式:需将API_KEY_ID作为用户名、SECRET_KEY作为密码,拼接为API_KEY_ID:SECRET_KEY格式后做Base64编码,放入请求头Authorization: Basic <编码后字符串>即可。如果使用Python requests库发起请求,可直接传入auth=(API_KEY_ID, SECRET_KEY)参数,无需手动编码。
  • 账户权限校验:获取relationship ID属于Broker API专属权限,你注册的必须是Alpaca Broker类账户,普通个人交易账户的密钥没有调用该类接口的权限。
  • 密钥准确性校验:从控制台复制密钥时注意不要携带多余的前后空格、换行符,这类隐形字符是高频触发认证失败的原因。

Django后端请求示例代码

# Django views 中发起请求示例
import requests
from django.conf import settings

def get_relationship_id(request, account_id):
    # 密钥建议放在settings配置文件中,不要硬编码
    api_key = settings.ALPACA_BROKER_API_KEY
    api_secret = settings.ALPACA_BROKER_API_SECRET
    # 沙箱环境地址,生产环境替换前缀即可
    url = f"https://broker-api.sandbox.alpaca.markets/v1/accounts/{account_id}/relationships"
    resp = requests.get(url, auth=(api_key, api_secret))
    if resp.status_code == 200:
        return resp.json()
    # 自定义错误处理逻辑
    return {"error": "请求失败", "code": resp.status_code}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 23:15:04