シェアする

Gate.ioのAPIをGoogle Apps Scriptで操作する ~認証~

シェアする

Google Apps Scriptを使った、Gate.ioのAPIの操作方法を書いていきます。まずは、認証方法について書きます。APIの認証は、自分のデータに関する操作(参照・送金・売買など)をするために必須の手順になります。

Gate.ioのAPIキー取得はこちら「Gate.ioのAPIキー取得方法

Gate.ioへの登録がまだの方は下記よりどうぞ!

Gate.ioに登録する!

スポンサーリンク

ドキュメント

Gate.ioが出してる公式ドキュメントはこちらです。但し、まあまあ分かりにくいです。

ちなみに、認証が必要になるのは、自分のアカウントに紐づいた操作をするときだけです。例えば、今回例に挙げるAPIのように、自分のアカウントのbalanceを取得するときなどです。

ざっくりした流れ

認証のざっくりした流れとしては、POSTする際のリクエストボディのデータを、APIシークレットを秘密鍵にして、HMAC SHA512にでハッシュ化します。そして、ハッシュ化した文字列を、ヘッダー部分のSIGNにセット、APIキーをKEYにセットしてリクエストする、という感じです。

認証部分のコード

コードはこんな感じです。

var apikey = "自分のkey";
var apisecret = "自分のsecret";

function creatSign() {
 // リクエスト内容により可変。何もないときは下記のように空文字
 // 複数あるときは、&で結合する
 var params = "";
 
 // リクエストBODYの中身を、secretを秘密鍵にしてHMAC SHA512でハッシュ化
 var sign = Utilities.computeHmacSignature(Utilities.MacAlgorithm.HMAC_SHA_512, params, apisecret);
 sign = sign.map(function(e) {return ("0" + (e & 0xFF).toString(16)).slice(-2)}).join("");
 
 var options = {
  method: "post",
  headers: {
   "key": apikey,
   "sign": sign
  }
 }
 
 var res = UrlFetchApp.fetch("https://api.gate.io/api2/1/private/balances", options).getContentText();
 
}

Google Apps ScriptでのHMAC SHA512についてはこちらを参考にしました!

Zaif API for Google Apps Script

スポンサーリンク

シェアする

フォローする