Pythonでbitflyerの取引所の状態を取得するソースコードを記載します。
返ってくるStatusの値と状況は下記の通りです。
status
: 以下のいずれかの値をとります。NORMAL
: 取引所は稼動しています。BUSY
: 取引所に負荷がかかっている状態です。VERY BUSY
: 取引所の負荷が大きい状態です。SUPER BUSY
: 負荷が非常に大きい状態です。発注は失敗するか、遅れて処理される可能性があります。NO ORDER
: 発注が受付できない状態です。STOP
: 取引所は停止しています。発注は受付されません。
ソースコード(Python)
import json import requests import time import hmac import hashlib api_key = 'key' api_secret = 'secret' api_endpoint = 'https://api.bitflyer.jp' def get_api_call(path): method = 'GET' timestamp = str(time.time()) text = timestamp + method + path sign = hmac.new(b'api_secret', b'text', hashlib.sha256).hexdigest() request_data=requests.get( api_endpoint+path ,headers = { 'ACCESS-KEY': api_key, 'ACCESS-TIMESTAMP': timestamp, 'ACCESS-SIGN': sign, 'Content-Type': 'application/json' }) return request_data def post_api_call(path,body): body = json.dumps(body) method = 'POST' timestamp = str(time.time()) text = timestamp + method + path + body sign = hmac.new(b'api_secret', b'text', hashlib.sha256).hexdigest() request_data=requests.post( api_endpoint+path ,data = body ,headers = { 'ACCESS-KEY': api_key, 'ACCESS-TIMESTAMP': timestamp, 'ACCESS-SIGN': sign, 'Content-Type': 'application/json' }) return request_data path = '/v1/gethealth' status = get_api_call(path).json()['status'] print(status)