This library is an easy, simple and clean connector to the Binance public API. It is divided into three distinct endpoints:
-
Supported APIs:
/api/*
/sapi/*
-
Inclusion of test cases and examples
-
Request and response types
npm install @binance/connector-typescript
All REST API endpoints are linked to a unique module called Spot
.
To start working with the REST API, you will need to import and create the client. Keep in mind that some of the endpoints require authentication with your API credentials keys:
import { Spot } from '@binance/connector-typescript';
const API_KEY = '';
const API_SECRET = '';
const BASE_URL = 'https://api.binance.com';
const client = new Spot(API_KEY, API_SECRET, { baseURL: BASE_URL });
client.exchangeInformation().then((res) => {
console.log(res);
}).catch(err => { console.log(err) });
Please look at examples/restful
folder to check for more endpoints.
While /sapi/*
endpoints don't have testnet environment yet, /api/*
endpoints can be tested in
Spot Testnet. You can use it by changing the base URL:
// provide the testnet base url
const client = new Spot(apiKey, apiSecret, { baseURL: 'https://testnet.binance.vision'})
If base_url is not provided, it defaults to api.binance.com.
All websocket are available with the WebsocketAPI
module.
To work with the websocket API, you will need to import the client and generate a callBack function to handle the messages:
import { WebsocketAPI } from '@binance/connector-typescript';
const API_KEY = '';
const API_SECRET = '';
const callbacks = {
open: (client: WebsocketAPI) => client.exchangeInfo(),
close: () => console.debug('Disconnected from WebSocket server'),
message: (data: string) => console.info(JSON.parse(data))
}
const websocketAPIClient = new WebsocketAPI(API_KEY, API_SECRET, { callbacks });
setTimeout(() => websocketAPIClient.disconnect(), 20000);
Please look at examples/websocketAPI
folder to check for more endpoints.
All websocket streams are available with the WebsocketStream
module.
To work with the websocket API, you will need to import the client and generate a callBack function to handle the messages:
import { WebsocketStream } from '@binance/connector-typescript';
const callbacks = {
open: () => console.debug('Connected to WebSocket server'),
close: () => console.debug('Disconnected from WebSocket server'),
message: (data: string) => console.info(data)
}
const websocketStreamClient = new WebsocketStream({ callbacks });
websocketStreamClient.aggTrade('bnbusdt');
setTimeout(() => websocketStreamClient.disconnect(), 6000);
Please look at examples/websocketStream
folder to check for more endpoints.
npm install
npm run test
Futures and European Options APIs are not supported:
/fapi/*
/dapi/*
/eapi/*
- Associated Websocket Market and User Data Streams
MIT