PublicRestClient
認証不要のパブリック REST API クライアントです。https://public.bitbank.cc に接続します。
インスタンス生成
import { PublicRestClient } from '@pokooo/bb-api';
const client = new PublicRestClient();
メソッド一覧
getTicker(pair)
指定ペアのティッカー情報を取得します。
const res = await client.getTicker(PAIR.BTC_JPY);
// res.data: TickerData
| パラメータ | 型 | 説明 |
|---|---|---|
pair | PairString | 取引ペア(例: 'btc_jpy') |
レスポンス TickerData:
| フィールド | 型 | 説明 |
|---|---|---|
sell | string | 現在の売値 |
buy | string | 現在の買値 |
high | string | 24時間最高値 |
low | string | 24時間最安値 |
open | string | 24時間始値 |
last | string | 最終取引価格 |
vol | string | 24時間出来高 |
timestamp | number | Unix タイムスタンプ (ms) |
getTickers()
全ペアのティッカー情報を取得します。
const res = await client.getTickers();
// res.data: TickerWithPair[]
getTickersJpy()
JPY 建て全ペアのティッカー情報を取得します。
const res = await client.getTickersJpy();
// res.data: TickerWithPair[]
getDepth(pair)
指定ペアの板情報を取得します。
const res = await client.getDepth(PAIR.BTC_JPY);
// res.data: DepthData
レスポンス DepthData:
| フィールド | 型 | 説明 |
|---|---|---|
asks | [string, string][] | 売り板 [価格, 数量] の配列 |
bids | [string, string][] | 買い板 [価格, 数量] の配列 |
asks_over | string | asks 上限外の合計数量 |
bids_under | string | bids 下限外の合計数量 |
ask_market_average | string | 成行売りの平均約定価格 |
bid_market_average | string | 成行買いの平均約定価格 |
timestamp | number | Unix タイムスタンプ (ms) |
sequenceId | string | シーケンス ID |
getTransactions(pair, date?)
指定ペアの約定履歴を取得します。
// 最新の約定履歴
const res = await client.getTransactions(PAIR.BTC_JPY);
// 特定日付の約定履歴(YYYYMMDD 形式)
const res = await client.getTransactions(PAIR.BTC_JPY, '20240101');
// res.data: TransactionsData
| パラメータ | 型 | 必須 | 説明 |
|---|---|---|---|
pair | PairString | Yes | 取引ペア |
date | string | No | 日付(YYYYMMDD 形式) |
getCandlestick(pair, type, date)
ローソク足データを取得します。
import { CANDLE_TYPE } from '@pokooo/bb-api';
const res = await client.getCandlestick(PAIR.BTC_JPY, CANDLE_TYPE.MIN1, '20240101');
// res.data: CandlestickData
| パラメータ | 型 | 説明 |
|---|---|---|
pair | PairString | 取引ペア |
type | CandleType | ローソク足の種別(下記参照) |
date | string | 日付(YYYYMMDD 形式) |
CANDLE_TYPE 定数:
| 定数 | 値 | 説明 |
|---|---|---|
CANDLE_TYPE.MIN1 | '1min' | 1分足 |
CANDLE_TYPE.MIN5 | '5min' | 5分足 |
CANDLE_TYPE.MIN15 | '15min' | 15分足 |
CANDLE_TYPE.MIN30 | '30min' | 30分足 |
CANDLE_TYPE.HOUR1 | '1hour' | 1時間足 |
CANDLE_TYPE.HOUR4 | '4hour' | 4時間足 |
CANDLE_TYPE.HOUR8 | '8hour' | 8時間足 |
CANDLE_TYPE.HOUR12 | '12hour' | 12時間足 |
CANDLE_TYPE.DAY1 | '1day' | 日足 |
CANDLE_TYPE.WEEK1 | '1week' | 週足 |
CANDLE_TYPE.MONTH1 | '1month' | 月足 |
getCircuitBreakInfo(pair)
指定ペアのサーキットブレイカー情報を取得します。
const res = await client.getCircuitBreakInfo(PAIR.BTC_JPY);
// res.data: CircuitBreakInfoData
レスポンスの型
すべてのメソッドは Promise<BitbankApiResponse<T>> を返します。
interface BitbankApiResponse<T> {
success: 0 | 1; // 1 = 成功, 0 = 失敗
data: T;
}
success が 0 の場合、data にはエラー情報が含まれます。throwExceptions: true を設定するとエラー時に例外がスローされます。