この記事のポイント
  • APIとはプログラム同士の「接続部分」のこと
  • APIキーを取得することで、他のプログラムからbitbankの情報を取得できる
  • プログラムの知識があれば、自動売買のプログラムの作成も可能

bitbank (ビットバンク) のAPIの取得方法と、APIを活用したプログラムの作成手順について解説します。

この記事を読むことで、 bitbankのAPIの取得方法だけでなく、どういった情報をAPIから取得できるのかがわかります

▶ 『bitbank (ビットバンク) の評判・口コミ・レビュー評価』についてくわしく知りたい方はこちらの記事が参考になります。


API (Application Programming Interface) とは

API (エーピーアイ) とは、「アプリケーション・プログラミング・インターフェイス」の略称で、 「プログラムを別のプログラムから操作する」ときの接続部分を指します

連携させたいプログラムから発行される、英数字の羅列である「APIキー」をもう一方のプログラムへ入力することで、プログラム同士がを連携させることができます。例えば、GoogleカレンダーをWebサイトに表示させたい場合、GoogleのAPIを利用して「googleカレンダー」と「Webサイト」を連携させます。

プログラムに「APIキー」を入力する部分があれば、プログラミングの知識がなくても簡単に連携が可能です。

bitbank (ビットバンク) で利用できる公式API

bitbankでは、APIを利用することで以下のことを行えるようになります。

  • 気配値 (板情報) ・チャートデータ等のパブリック情報の取得
  • 注文や取引履歴の取得
  • 資産の引出しリクエスト等

発行されるAPIキーは「パブリックAPI」と「プライベートAPI (APIシークレット) 」の2種類があります。連携させたいプログラムによって、入力すべきAPIキーは変わります

パブリックAPI

パブリックAPIは、次のような「一般的に公開されている情報」を取得するときに利用します。

パブリックAPI
関数 説明 引数
get_ticker 市場価格を取得 pair
get_depth 板情報を取得 pair
get_transactions 最新の全約定履歴を取得または、指定日の全約定履歴を取得 pair/yyyymmdd=None
get_candlestick 指定日のロウソク足データを取得 pair/candle_type/yyyymmdd

bitbankのパブリックAPIを連携することで、bitbankへアクセスしなくてもこれらの情報を他のプログラムから見ることができます。

プライベートAPI

プライベートAPIは、以下の「ユーザー認証しないと取得できない情報」を得るときに使います。

プライベートAPI
関数 説明 引数
get_asset 資産の一覧を取得
get_orders オーダー情報を取得 pair/order_id
get_active_orders アクティブなオーダー情報を取得 pair/options=None
order オーダーを入れる pair/price/amount/side/order_type
cancel_order オーダーをキャンセルする pair/order_id
cancel_orders 複数のオーダーをキャンセルする pair/order_ids
get_orders_info 複数のオーダー情報を取得 pair/order_ids
get_trade_history 約定履歴を取得 pair/order_count
get_withdraw_account 出金アカウントを取得 asset
request_withdraw 出金をリクエスト asset/uuid/amount/token

プライベートAPIを実装することで、bitbankにログインしたりアプリを使ったりしなくても、他のプログラムを通して新規注文し出金させることが可能となります。

bitbank (ビットバンク) のAPI連携で出来ること

APIがあることで「全く別のプログラム同士が連携できるようになる」ため、ユーザーがより便利に使えるようになります。

例えば家計簿アプリ「Money Forward (マネーフォワード) 」では、銀行口座や証券口座、仮想通貨取引所の口座に入っている資産をまとめて管理できますが、これも「API」を活用しています

従来、銀行は銀行のアプリへログインして残高を確認し、証券会社は証券会社のサイトへログインして資産状況を確認する・・・というように、自分の資産状況を把握するにはいちいち別のアプリを開く必要がありました。

これを、銀行アプリから取得した「APIキー」をMoney Forwardへ入力することで、Money Foward上で銀行残高を確認できるようになります。bitbankも連携できるようになっており、 bitbankの「APIキー」を入力することでbitbankの残高がMoney Forward上で確認できます

いちいちアプリを立ち上げないと利用できなかった機能を、「ひとつのアプリ」から利用できるようになるためユーザーの利便性が上がります。

bitbank (ビットバンク) で利用できるAPI

APIは「プログラム同士をつなぐもの」ということはご理解いただけたと思います。では、その「APIキー」を入力する「器」であるプログラムは、どのようにして作られるのでしょうか?

実は、bitbankではプログラム開発者向けに、汎用性の高いプログラムコードの「まとまり」をライブラリに公開しています。プログラミングコードを記述するための言語は様々ありますが、bitbankでは以下の4種類のプログラミング言語のライブラリを公開しています。

  • node.js
  • Java
  • Python (パイソン)
  • Ruby

「node.js」とは?

node.jpは、サーバーサイドのJavaScript言語です。JavaScript自体はブラウザ上で動きWebページに動きを加えるために使われますが、その動作環境の多くはクライアントでした。これを、サーバーサイドでも同じ言語で書けるとしたのがnode.jpです。

node.jpの用途は、Webサービスやスマホアプリ、IoT製品です。

「Java」とは?

Javaは、OS環境に依存しないことが特徴のプログラミング言語です。 つまり、WindowsやMac、iOS、Linuxなどの異なる環境下でも動作します

Webサービスやスマホアプリ、家電製品、IoT製品などに使われます。

「Python」とは?

Python (パイソン) は、人工知能 (AI) や深層学習に使われるプログラミング言語です。文法がシンプルで書きやすいことが特徴です。 YouTubeやインスタグラム、EvernoteはPythonから作成されています

「Ruby」とは?

Ruby (ルビー) とは、Webサービスに活用されているプログラミング言語です。 フレームワークのRuby on Railsがあるため、アプリの作成工数を少なく開発できることが特徴です。食べログやクックパッドはRubyで開発されています

bitbank (ビットバンク) からAPIキーとシークレットキーを取得する方法

bitbankからAPIキーを発行する手順は、次の2ステップです。

APIキーの発行手順
STEP1APIキーを発行する
STEP2APIキーを確認する

STEP1 APIキーを発行する

bitbankへログイン後、①左のメニューから「API」をクリックし、②本画面に表示された「APIキーの発行」ボタンを押しましょう

bitbank (ビットバンク) からAPIキーとシークレットキーを取得する方法

そうすると、「ラベル名」と「権限の種類」、「二段階認証コード」を入力する画面に変わります。
bitbank (ビットバンク) からAPIキーとシークレットキーを取得する方法

「ラベル名」には、何の用途で取得するのかを記入するとよいでしょう。例えば、Money Forwardに使うのであれば、「Money Forward」と入力します。

「権限の種類」については、APIを入力するアプリでどの権限のAPIが必要か明記されているはずです。利用するアプリの説明をご確認ください。

二段階認証コード」を入力し、「確認する」をクリックしましょう。そして「発行する」ボタンをクリックしてください。

STEP2 APIキーを確認する

発行された「APIキー」を確認するには、次の手順を踏む必要があります。

API発行の画面で、確認したいAPIの取得日時をチェックし、「確認ボタン」を押してください

bitbank (ビットバンク) からAPIキーとシークレットキーを取得する方法

「二段階認証コード」を入力する画面が表示されますので、コードを入力し、「確認する」ボタンを押しましょう。そうすると、「APIキー」が表示されます。

bitbank (ビットバンク) からAPIキーとシークレットキーを取得する方法

シークレットキーは、「表示」ボタンを押して確認してください。

Pythonを使ったbitbank (ビットバンク) 公式APIの連携方法

Pythonを使ってAPI経由で情報を取得する手順は、次のとおりです。

公式APIの連携方法 全STEP
STEP1bitbankのAPIを取得
STEP2pythonをインストール
STEP3Anacondaをインストール
STEP4エディターをインストール
STEP5bitbankの公式ライブラリをインストール
STEP6エディターでコードを入力

STEP1 bitbankのAPIを取得

前の章で解説した手順に従い、bitbankからAPIを取得しましょう。

STEP2 Pythonをインストール

Python公式サイトへアクセスし、Pythonをダウンロードしましょう。
ダウンロードするときは、コツが必要なのでPython3のインストール – python.jpを見ながら行ってください。

STEP3 Anacondaをインストール

ディストリビューション「Anaconda」をインストールします。Anaconda Distributionのページからダウンロードできます。

STEP4 エディターをインストール

ソースプログラムを編集するためのエディターをインストールします。これは、お好みのものを入れていただいてOKです。

STEP5 bitbankの公式ライブラリをインストール

bitbankの公式ライブラリをインストールします。Windowsの方はコマンドプロンプト、Macの方はターミナルを立ち上げ、下記のコードを入力してください。

pip install git+https://github.com/bitbankinc/python-bitbankcc.git

STEP6 エディターを立ち上げてプログラムを入力

STEP4でインストールしたエディターを立ち上げ、プログラムコードを入力ください。公式ライブラリをインポートをするため、1行目には必ず下記をご入力下さい。

import python_bitbankcc

全体のソースコード

下記のプログラムをエディターにコピペしましょう。

‘————-ご自身が取得したAPIキー——-‘にはAPIキーを、’——ご自身が取得したシークレットキー——‘にはAPIシークレットキーを入力します。

「ファイル名をつけて保存」をクリックし、「 (任意の名前) .py」と入力します。そしてターミナルを立ち上げ、「python (任意の名前).py」と入力しましょう。

そうすると、リップルの価格と自分の資産状況のデータが返ってきます。通貨のペアについては、適宜変更してください。

#bitbankのライブラリをインポート
import python_bitbankcc

#パブリックAPIの設定
class BitBankPubAPI:

#パブリックAPI情報の取得
def __init__(self):
self.pub = python_bitbankcc.public()

#価格取得のコード
def get_ticker(self, pair):
try:
value = self.pub.get_ticker(pair)
return value
except Exception as e:
print(e)
return None

#プライベートAPIの設定
class BitBankPrvAPI:

#プライベートAPIキーの情報取得
def __init__(self):
API_KEY = ‘————-ご自身が取得したAPIキー——-‘
API_SECRET = ‘——ご自身が取得したシークレットキー——‘
self.prv = python_bitbankcc.private(API_KEY, API_SECRET)

#個人資産情報の取得
def get_asset(self):
try:
value = self.prv.get_asset()
return value
except Exception as e:
print(e)
return None

#メイン関数の設定
def main():
pub_set = BitBankPubAPI()
prv_set = BitBankPrvAPI()

ticker = pub_set.get_ticker(‘xrp_jpy’) #取引通貨ペアの設定
print(ticker[‘sell’]) #レスポンスの設定

asset_dict = prv_set.get_asset()#プライベート情報取得コマンド
print(asset_dict[‘assets’])#ウォレット情報取引コマンド

if __name__ == ‘__main__’:
main()

パブリックAPIで取得

相場価格を取得するプログラムコードです。

#bitbankのライブラリをインポート
import python_bitbankcc

#パブリックAPIの設定
class BitBankPubAPI:

#パブリックAPI情報の取得
def __init__(self):
self.pub = python_bitbankcc.public()

#価格取得のコード
def get_ticker(self, pair):
try:
value = self.pub.get_ticker(pair)
return value
except Exception as e:
print(e)
return None

プライベートAPIで取得

自分の資産情報を取得するプログラムコードです。 ‘————-ご自身が取得したAPIキー——-‘にはAPIキーを、’——ご自身が取得したシークレットキー——‘にはAPIシークレットキーを入力します。

#プライベートAPIの設定
class BitBankPrvAPI:

#プライベートAPIキーの情報取得
def __init__(self):
API_KEY = ‘————-ご自身が取得したAPIキー——-‘
API_SECRET = ‘——ご自身が取得したシークレットキー——‘
self.prv = python_bitbankcc.private(API_KEY, API_SECRET)

#個人資産情報の取得
def get_asset(self):
try:
value = self.prv.get_asset()
return value
except Exception as e:
print(e)
return None

bitbank (ビットバンク) のAPIでプログラムを作ってみる (Ruby)

Rubyを使用してプログラムを作る手順は、次のとおりです

STEP1bitbankのAPIを取得
STEP2Herokuアカウントを取得
STEP3Rubyをインストール
STEP4 ターミナルで入力
STEP5Herokuへデプロイする
STEP6bitbankの公式ライブラリをインストール
STEP7プログラムコードを入力
STEP8Herokuへデプロイする

STEP1 bitbankのAPIを取得

bitbankのAPIキーを取得しておきましょう。

STEP2 Herokuアカウントを取得

クラウド開発プラットフォームHerokuの準備の手順は、次のとおりです。

STEP1Herokuへアカウント登録、メール認証
STEP2Gitのインストール
STEP3Heroku CLIのインストール

STEP3 Rubyをインストール

RubyinstrallerでRubyのダウンロードしてインストールしてください。

STEP4 ターミナルで入力

Windowsではコマンドプロンプト、Macではターミナルを開いてコマンドを打ち込みます

$ heroku login

Rails をインストール。
$ gem install rails –no-ri –no-rdoc

Rails アプリケーションを作成。
$ rails new myapp –database=postgresql

アプリケーションのディレクトリに移動。
$ cd myapp

Gem をインストール。
$ bundle install

STEP5 Herokuへデプロイする

空のアプリケーションをHerokuへデプロイします。

git でアプリケーションを管理させる。

$ git init
$ git add .
$ git commit -m “init”

Heroku 上でアプリケーションを新しく作成。
$ heroku create

Heroku へデプロイ。
$ git push heroku master

いちおうマイグレーションも実行しておく。
$ heroku run rake db:migrate

STEP6 bitbank (ビットバンク) の公式ライブラリをインストール

bitbankのRuby用のライブラリをインストールします。以下のコードを実行しましょう。

gem install ruby_bitbankcc

その後は、次のことを実行してください。

追加した gem をインストール。
bundle install

orders タスクを追加。
rails g task orders

STEP7 プログラムを入力

プログラムコードを入力ください。

STEP8 Herokuへデプロイ

作成したプログラムをデプロイします。

git push heroku master

買い注文を入れるプログラム

下記のプログラムの「アクセスキー」と「シークレットアクセスキー」に、bitbankで取得したAPIキーを入力しましょう。

namespace :orders do
desc “50,000円で0.01BTCの買い注文を入れる”
task :buy => :environment do
bbcc = Bitbankcc.new(“アクセスキー”, “シークレットアクセスキー”)
response = bbcc.create_order(‘btc_jpy’, “0.01”, 50000, ‘buy’, ‘limit’)
result = JSON.parse(response)

if result[‘success’] == 1
puts “完了!”
end
end
end

売り注文を入れるプログラム

売り注文についても同様に、「アクセスキー」と「シークレットアクセスキー」に取得したAPIキーを入力します

namespace :orders do
desc “60,000円で0.01BTCの売り注文を入れる”
task :sell => :environment do
bbcc = Bitbankcc.new(“アクセスキー”, “シークレットアクセスキー”)
response = bbcc.create_order(‘btc_jpy’, “0.01”, 60000, ‘sell’, ‘limit’)
result = JSON.parse(response)

if result[‘success’] == 1
puts “完了!”
end
end
end

注文を確認するプログラム

現在注文中の内容を確認するためのコードです。

namespace :orders do
desc “現在 入っている注文を確認する”
task :check => :environment do
bbcc = Bitbankcc.new(“アクセスキー”, “シークレットアクセスキー”)
response = bbcc.read_active_orders(‘btc_jpy’)
result = JSON.parse(response)

result[“data”][“orders”].each do |order|
puts “#{order[‘order_id’]} – #{order[‘price’]} / #{order[‘side’]}”
end
end
end

bitbank (ビットバンク) の取引履歴APIの制限

2017年12月、bitbankはサーバーへの負荷が高まったとして、一時的に取引履歴のAPIを制限したと発表しました。

そのときに制限された内容は、次の2点です

  • 期間指定 (開始日・終了日) を伴う取引履歴の検索
  • 取引履歴APIの呼び出し

今後も負荷が高まるとAPIが制限される可能性があります。

執筆者情報
仮想通貨部 かそ部 編集部

名前。 はじめまして。本サイトの執筆を担当している、「仮想通貨部 かそ部」編集部です。本サイトは、仮想通貨の総合情報サイト「仮想通貨部 かそ部」の運営や、各種Web情報メディア事業を展開するドットメディア株式会社により運営されております。編集部一同、正確な論拠に基づいた調査のもと、読者(ユーザー)様にとって正確かつ最新の情報をお届けできるよう努めてまいりますので、どうぞよろしくお願い致します。

PR
暗号資産アプリDL数No.1!取引量・ユーザー数ともに日本最大級の取引所!

BTC (ビットコイン) などの主要な通貨はもちろん、MONA (モナコイン)、XLM (ステラルーメン) など珍しい計14種類の豊富な暗号資産を取り扱っています。また初心者にもかんたんに操作できるスマホアプリも魅力的で、iOSアプリ・Androidアプリでの使いやすさはピカイチです。さらに2018年4月マネックスグループ株式会社が主要株主になり、経営体制・内部管理体制などの抜本的な改革を実行。万全のセキュリティ体制で初心者でも安心してはじめられます。

初心者向け取引所の決定版!