Bitnxs API リファレンス
クイックスタート
Section titled “クイックスタート”API キー
Section titled “API キー”エンドポイント一覧
Section titled “エンドポイント一覧”Info クエリ
Section titled “Info クエリ”TP / SL トリガー
Section titled “TP / SL トリガー”サブスクリプション
Section titled “サブスクリプション”TypeScript SDK
Section titled “TypeScript SDK”Bitnxs API リファレンス
Section titled “Bitnxs API リファレンス”Nexus チェーンの HTTP および WebSocket インターフェースです。セッションはメインウォレットで直接署名する方式、またはプログラム取引向けの API キー(メインウォレットからの一度きりの署名で導出される委任署名クレデンシャル)で署名する方式に対応します。Bearer トークンや共有シークレット、HMAC スキームは使用しません。Web UI、プログラム取引ボット、インデクサー、管理ツールはすべて同じインターフェースを利用しています。
Base URL: https://api.bitnxs.com · WebSocket: wss://api.bitnxs.com/ws
クイックスタート
Section titled “クイックスタート”- Web UI でウォレット(MetaMask または任意の EIP-1193 プロバイダ)を接続し、オンチェーンアドレス(0xABC)を取得します。
- 「More → API Keys」ページで API キーを発行し、モーダルに一度だけ表示される値をコピーします。
- セッションを開始します:POST /session/start → 返却された challenge に署名 → POST /session/complete → sessionId を取得。
- sessionId を用いて注文、キャンセル、レバレッジ変更、TP/SL トリガーなどを送信します。
最小構成の Python フロー
Section titled “最小構成の Python フロー”import requestsfrom eth_account import Accountfrom eth_utils import keccak
USER = "0xABC..." # MAIN wallet address — the session is bound to thisAPI_KEY = "0x..." # API key from "More → API Keys" (shown once)BASE = "https://api.bitnxs.com"
# 1. Open sessionchal = requests.post(f"{BASE}/session/start", json={"user": USER}).json()
# 2. Sign challenge with the API key (raw keccak, NOT EIP-191 / personal_sign)sig = Account.unsafe_sign_hash( keccak(chal["challenge"].encode()), private_key=API_KEY,)
ses = requests.post(f"{BASE}/session/complete", json={ "challengeId": chal["challengeId"], "signature": {"r": hex(sig.r), "s": hex(sig.s), "v": sig.v - 27},}).json()SESSION_ID = ses["sessionId"]
# 3. Submit a limit orderprint(requests.post(f"{BASE}/session/order", json={ "sessionId": SESSION_ID, "asset": 1, "isBuy": True, "limitPx": "65000.00", "sz": "0.01", "reduceOnly": False, "orderType": {"type": "limit", "tif": "Gtc"},}).json())