首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Gemini API Python {'result':'error','reason':'InvalidSignature','message':'InvalidSignature'}

Gemini API Python {'result':'error','reason':'InvalidSignature','message':'InvalidSignature'}
EN

Stack Overflow用户
提问于 2021-05-15 14:50:14
回答 2查看 256关注 0票数 2

我在使用Gemini API文档时遇到错误,同时遵循私有API调用的文档。

json输出为:

代码语言:javascript
运行
复制
{'result': 'error', 'reason': 'InvalidSignature', 'message': 'InvalidSignature'}. 

我的代码:

代码语言:javascript
运行
复制
gemini_api_key = getMasterApi()#gets master api key from a json file
gemini_api_secret = getSecretApi().encode()#gets secret api key from a json file
print(gemini_api_secret)
t = datetime.datetime.now() 
payload_nonce =  str(int(time.mktime(t.timetuple())*1000))
payload =  {"request": "/v1/mytrades", "nonce": payload_nonce}
encoded_payload = json.dumps(payload).encode()
b64 = base64.b64encode(encoded_payload)
signature = hmac.new(gemini_api_secret, b64, hashlib.sha384).hexdigest()

request_headers = {
    'Content-Type': "text/plain",
    'Content-Length': "0",
    'X-GEMINI-APIKEY': gemini_api_key,
    'X-GEMINI-PAYLOAD': b64,
    'X-GEMINI-SIGNATURE': signature,
    'Cache-Control': "no-cache"
    }

response = requests.post(url, headers=request_headers)

my_trades = response.json()
print(my_trades)
 [https://docs.gemini.com/rest-api/#public-api-invocation][1]
EN

回答 2

Stack Overflow用户

发布于 2021-05-23 00:05:17

我也有同样的问题,并且能够通过创建一个新的具有主作用域(而不是主作用域)和Auditor权限的API密钥来解决它。

票数 0
EN

Stack Overflow用户

发布于 2021-09-04 20:05:44

确保您使用的是正确的URL。如果您使用沙箱帐户创建了一个API密钥,则必须将URL更改为url = "https://api.sandbox.gemini.com/v1/mytrades"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67544017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档