#[derive(Debug, Clone)]
pub struct BinanceUrls {
pub public: String,
pub private: String,
pub sapi: String,
pub sapi_v2: String,
pub fapi: String,
pub fapi_public: String,
pub fapi_private: String,
pub dapi: String,
pub dapi_public: String,
pub dapi_private: String,
pub eapi: String,
pub eapi_public: String,
pub eapi_private: String,
pub papi: String,
pub ws: String,
pub ws_fapi: String,
pub ws_dapi: String,
pub ws_eapi: String,
}
impl BinanceUrls {
pub fn production() -> Self {
Self {
public: "https://api.binance.com/api/v3".to_string(),
private: "https://api.binance.com/api/v3".to_string(),
sapi: "https://api.binance.com/sapi/v1".to_string(),
sapi_v2: "https://api.binance.com/sapi/v2".to_string(),
fapi: "https://fapi.binance.com/fapi/v1".to_string(),
fapi_public: "https://fapi.binance.com/fapi/v1".to_string(),
fapi_private: "https://fapi.binance.com/fapi/v1".to_string(),
dapi: "https://dapi.binance.com/dapi/v1".to_string(),
dapi_public: "https://dapi.binance.com/dapi/v1".to_string(),
dapi_private: "https://dapi.binance.com/dapi/v1".to_string(),
eapi: "https://eapi.binance.com/eapi/v1".to_string(),
eapi_public: "https://eapi.binance.com/eapi/v1".to_string(),
eapi_private: "https://eapi.binance.com/eapi/v1".to_string(),
papi: "https://papi.binance.com/papi/v1".to_string(),
ws: "wss://stream.binance.com:9443/ws".to_string(),
ws_fapi: "wss://fstream.binance.com/ws".to_string(),
ws_dapi: "wss://dstream.binance.com/ws".to_string(),
ws_eapi: "wss://nbstream.binance.com/eoptions/ws".to_string(),
}
}
pub fn testnet() -> Self {
Self {
public: "https://testnet.binance.vision/api/v3".to_string(),
private: "https://testnet.binance.vision/api/v3".to_string(),
sapi: "https://testnet.binance.vision/sapi/v1".to_string(),
sapi_v2: "https://testnet.binance.vision/sapi/v2".to_string(),
fapi: "https://testnet.binancefuture.com/fapi/v1".to_string(),
fapi_public: "https://testnet.binancefuture.com/fapi/v1".to_string(),
fapi_private: "https://testnet.binancefuture.com/fapi/v1".to_string(),
dapi: "https://testnet.binancefuture.com/dapi/v1".to_string(),
dapi_public: "https://testnet.binancefuture.com/dapi/v1".to_string(),
dapi_private: "https://testnet.binancefuture.com/dapi/v1".to_string(),
eapi: "https://testnet.binanceops.com/eapi/v1".to_string(),
eapi_public: "https://testnet.binanceops.com/eapi/v1".to_string(),
eapi_private: "https://testnet.binanceops.com/eapi/v1".to_string(),
papi: "https://testnet.binance.vision/papi/v1".to_string(),
ws: "wss://testnet.binance.vision/ws".to_string(),
ws_fapi: "wss://stream.binancefuture.com/ws".to_string(),
ws_dapi: "wss://dstream.binancefuture.com/ws".to_string(),
ws_eapi: "wss://testnet.binanceops.com/ws-api/v3".to_string(),
}
}
pub fn demo() -> Self {
Self {
public: "https://demo-api.binance.com/api/v3".to_string(),
private: "https://demo-api.binance.com/api/v3".to_string(),
sapi: "https://demo-api.binance.com/sapi/v1".to_string(),
sapi_v2: "https://demo-api.binance.com/sapi/v2".to_string(),
fapi: "https://demo-fapi.binance.com/fapi/v1".to_string(),
fapi_public: "https://demo-fapi.binance.com/fapi/v1".to_string(),
fapi_private: "https://demo-fapi.binance.com/fapi/v1".to_string(),
dapi: "https://demo-dapi.binance.com/dapi/v1".to_string(),
dapi_public: "https://demo-dapi.binance.com/dapi/v1".to_string(),
dapi_private: "https://demo-dapi.binance.com/dapi/v1".to_string(),
eapi: "https://demo-eapi.binance.com/eapi/v1".to_string(),
eapi_public: "https://demo-eapi.binance.com/eapi/v1".to_string(),
eapi_private: "https://demo-eapi.binance.com/eapi/v1".to_string(),
papi: "https://demo-papi.binance.com/papi/v1".to_string(),
ws: "wss://demo-stream.binance.com/ws".to_string(),
ws_fapi: "wss://demo-fstream.binance.com/ws".to_string(),
ws_dapi: "wss://demo-dstream.binance.com/ws".to_string(),
ws_eapi: "wss://demo-nbstream.binance.com/eoptions/ws".to_string(),
}
}
}