こんにちは。ビットコおじさんだよ。

今までの記事を通して、GAS(Google Apps Script)を使えば、UrlFetchApp.fetchで簡単にAPIが取得できることがわかったと思うけど、肝心のAPIはどうやって探すの?っていうのがあるよね。

関連記事→「API入門(1)取引所のリアルタイムレートをゲット!
API入門(2)APIでアービトラージ?!取引所の価格を比較しよう!

取引所によって結構違ったりするけど、おじさんはまずは取引所のTOPページに行って、メニューにAPIがないか探してみるよ。

例えば、コインチェックならこんな感じで、一番下のサイトマップ的なところにあるね。

api0
引用元:coincheck.com

ビットフライヤーやZaifも大体同じところにあるね。
他の取引も大体このサイトマップの辺りを探せば見つかるはず。

api1
引用元:ja.quoinex.com

ポロ(Poloniex)みたいに、階層になってる取引所もあるよ。
「Support Resources(サポートリソース)」をクリック。

api2
引用元:poloniex.com

サポートリソースの中にAPIドキュメントっていうのがあるよ。

api3
引用元:poloniex.com

まあ、こんな感じですぐに見つかると思うんだけど、なかなか見つからないこともある。
そんな時はグーグル先生で「取引所名 API」で調べたら出てくることもあるよ。

「みんなのビットコイン」みたいに、APIを公開していない(?)取引所もあるよ。取引所価格ぐらいならスクレイピングって言って、UrlFetchApp.fetchで取ってきたHTMLを解析して調べることもできるけど、おじさんはめんどくさがりだからあきらめちゃう。

(゚∀゚)

あとは、国内で言えば「BITPoint」みたいにAPIを使うのにもAPIキーを使ってログインが必要なところもあるね。
こういうAPIキーや認証が必要なものをプライベートAPIっていうんだけど、プライベートAPIを使うと通貨の売買もできたりするので取り扱い注意だね。

さて、ビットコイン以外の通貨ペアの探し方だけど、これも取引所によって色々あるよ。
詳しくは取引所のAPIドキュメントを読んでほしいけど、基本的にはプロダクトコード一覧とか、マーケット一覧を取得するAPIがあれば、それを叩いてみて目的の通貨ペアのコードを調べるよ。

↓例えばQUINEXだったら、プロダクトコード一覧はこれ。
https://api.quoine.com/products

↓ETHJPYのIDは「29」だから、ETHJPYの価格だけを取得したいときはIDを後ろに足すよ。
https://api.quoine.com/products/29

↓ドキュメントによると、通貨ペアを直接指定する方法もあるね。
https://api.quoine.com/products/code/CASH/ETHJPY

BTCBOXみたいにドキュメントには書いていないけど、扱っている通貨を指定したらAPIが返ってくるとかもあるよ。

↓ドキュメント(https://www.btcbox.co.jp/api/doc/v1#Reference)によると、パラメータに渡せるのは「btc、ltc、doge、bch(指定がなければbtc)」のはずだけど、ethも指定できる。
https://www.btcbox.co.jp/api/v1/ticker?coin=eth

このあたりは勘(かん)でマーケットにあるものを適当に入れてみるしかないね。

ポロ(Poloniex)はマーケット一覧は取得できるけど、特定の通貨ペアだけのJSONを取得するAPIがないので、一覧から直接指定するよ。
var po_response = UrlFetchApp.fetch("https://poloniex.com/public?command=returnTicker");
const exchanges = [
    { name: 'Poloniex', bid: po_json["BTC_ETH"]["highestBid"], ask: po_json["BTC_ETH"]["lowestAsk"] }
  ];
みたいな感じになるよ。

APIにマーケット一覧がない取引所はAPIドキュメントに通貨ペアの指定の仕方が書いてあるはずなので、それを調べて書くよ。例えばビットコインキャッシュの場合でいくつかピックアップするとこんな感じになるよ。

↓ビットフライヤー

今回はサンプルがないので、ちょっと内容が難しかったかな?
でも、ドキュメントが読めるようになったら入門は卒業して応用だね!
パブリックAPIならユーザー登録はしないでも使えるので各取引所のドキュメントを読み比べて色々と試してみてね。

アビトラ以外でなにか面白そうなAPIの使い方があればまた紹介するね!

(・∀・)つ

じゃあまた。

 ← 応援ポチっとお願いします。

ビットコイン取引高日本一の仮想通貨取引所 coincheck bitcoin

bitFlyer ビットコインを始めるなら安心・安全な取引所で