Bitnxs API 레퍼런스
빠른 시작
섹션 제목: “빠른 시작”API 키
섹션 제목: “API 키”엔드포인트 레퍼런스
섹션 제목: “엔드포인트 레퍼런스”Info 쿼리
섹션 제목: “Info 쿼리”주문 유형
섹션 제목: “주문 유형”TP / SL 트리거
섹션 제목: “TP / SL 트리거”TypeScript SDK
섹션 제목: “TypeScript SDK”Bitnxs API 레퍼런스
섹션 제목: “Bitnxs API 레퍼런스”Nexus 체인의 HTTP 및 WebSocket 인터페이스입니다. 세션은 메인 지갑으로 직접 서명하거나, 프로그래매틱 트레이딩의 경우 API key(메인 지갑의 일회성 서명으로 파생되는 위임 서명 자격증명)로 서명할 수 있습니다. Bearer 토큰, 공유 시크릿, HMAC은 사용하지 않습니다. 동일한 인터페이스가 웹 UI, 프로그래매틱 트레이딩 봇, 인덱서, 관리 도구를 모두 지원합니다.
Base URL: https://api.bitnxs.com · WebSocket: wss://api.bitnxs.com/ws
빠른 시작
섹션 제목: “빠른 시작”- 웹 UI에서 지갑(MetaMask 또는 모든 EIP-1193 프로바이더)을 연결하여 온체인 주소(0xABC)를 가져옵니다.
- “More → API Keys” 페이지에서 API key를 발급하고 모달에 한 번만 표시되는 값을 복사합니다.
- 세션을 엽니다: POST /session/start → 반환된 challenge에 서명 → POST /session/complete → sessionId 수신.
- sessionId를 사용해 주문, 취소, 레버리지 변경, TP/SL 트리거를 전송합니다.
최소 Python 흐름
섹션 제목: “최소 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())