お世話になります。
bitFlyerというビットコイン取引所に挑戦したいと思います。
プライベートapiを利用すると、プログラムで注文が出来るようです。
注文関係のapiは、セキュリティのため認証が必要なのですが、その部分がうまくできません。
サンプルは、node.jsというjavascriptで記載され、実際に動かす環境が同じjavascript系列のgoogle apps script になります。
今回は、一番簡単なapi一覧に挑戦しましたが、うまく認証が出来ないエラーが発生しています。
こちらがapiの説明が記載されたurlになります。
https://lightning.bitflyer.jp/docs?lang=ja
実際にgoogle apps script で記載したプログラムがこちらです。
1function bitFlyer() { 2 3 var key = "〇〇"; 4 var secretKey = "××"; 5 6 var timestamp = Date.now().toString(); 7 var method = 'GET'; 8 var path = '/v1/me/getpermissions'; 9 var text = timestamp + method + path; 10 var sign = Utilities.base64Encode(Utilities.computeHmacSha256Signature(text, secretKey)); //HMAC-SHA256 -> base64 11 var url = 'https://api.bitflyer.jp'+path; 12 13 var options = { 14 method:method, 15 headers:{ 16 'ACCESS-KEY':key, 17 'ACCESS-TIMESTAMP':timestamp, 18 'ACCESS-SIGN':sign, 19 'Content-Type':'application/json' 20 } 21 }; 22 23 var response = UrlFetchApp.fetch(url,options); 24 Logger.log(response); 25 26}
実際のエラーメッセージがこちらになります。
1https://api.bitflyer.jp/v1/me/getpermissions のリクエストに失敗しました(エラー: 401)。サーバー応答の一部: {"status":-500,"error_message":"Non-hexadecimal signature","data":null}(応答の全文を見るには muteHttpExceptions オプションを使用してください)(行 26、ファイル「bitFlyer」)
どこが原因だけでも教えていただけると助かります。
回答1件
あなたの回答
tips
プレビュー