### Get Mining Hashrate Resale List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Fetches a list of hashrate resale configurations. No specific setup or constraints are mentioned. ```java HashrateResaleListExample.java ``` -------------------------------- ### Start User Data Stream in Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-options/docs/UserDataStreamsApi.md Use this snippet to start a user data stream. Ensure you have the necessary Binance connector client libraries imported. This example includes basic error handling for API exceptions. ```java // Import classes: import com.binance.connector.client.derivatives_trading_options.ApiClient; import com.binance.connector.client.derivatives_trading_options.ApiException; import com.binance.connector.client.derivatives_trading_options.Configuration; import com.binance.connector.client.derivatives_trading_options.models.*; import com.binance.connector.client.derivatives_trading_options.rest.api.UserDataStreamsApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://eapi.binance.com"); UserDataStreamsApi apiInstance = new UserDataStreamsApi(defaultClient); try { StartUserDataStreamResponse result = apiInstance.startUserDataStream(); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling UserDataStreamsApi#startUserDataStream"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### Start User Data Stream in Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-usds-futures/docs/UserDataStreamsApi.md Initiates a new user data stream. The stream remains active for 60 minutes unless a keepalive signal is sent. If an existing listenKey is present, it will be returned and its validity extended. This example demonstrates basic setup and error handling. ```java import com.binance.connector.client.derivatives_trading_usds_futures.ApiClient; import com.binance.connector.client.derivatives_trading_usds_futures.ApiException; import com.binance.connector.client.derivatives_trading_usds_futures.Configuration; import com.binance.connector.client.derivatives_trading_usds_futures.models.*; import com.binance.connector.client.derivatives_trading_usds_futures.websocket.api.api.UserDataStreamsApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("http://localhost"); UserDataStreamsApi apiInstance = new UserDataStreamsApi(defaultClient); StartUserDataStreamRequest startUserDataStreamRequest = new StartUserDataStreamRequest(); // StartUserDataStreamRequest | try { StartUserDataStreamResponse result = apiInstance.startUserDataStream(startUserDataStreamRequest); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling UserDataStreamsApi#startUserDataStream"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### Get Mining Statistics List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Fetches statistical data for mining. No specific setup or constraints are mentioned. ```java StatisticListExample.java ``` -------------------------------- ### Initialize Spot Client (New) Source: https://github.com/binance/binance-connector-java/blob/master/MIGRATION.md Example of initializing the Spot client using the new modular connector with configuration. ```java ClientConfiguration clientConfiguration = SpotRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); SpotRestApi api = new SpotRestApi(clientConfiguration); Boolean omitZeroBalances = true; Long recvWindow = 5000L; ApiResponse response = api.getAccount(omitZeroBalances, recvWindow); System.out.println(response.getData()); ``` -------------------------------- ### Get Mining Worker List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Retrieves a list of mining workers. No specific setup or constraints are mentioned. ```java RequestForMinerListExample.java ``` -------------------------------- ### Client Initialization (Old) Source: https://github.com/binance/binance-connector-java/blob/master/clients/c2c/docs/rest-api/migration-guide.md Example of initializing the SpotClient in the old monolithic Binance Connector. ```java SpotClient client = new SpotClientImpl(PrivateConfig.API_KEY, PrivateConfig.SECRET_KEY); String result = client.(parameters); System.out.println(result); ``` -------------------------------- ### Get Mining Earnings List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Retrieves a list of mining earnings. No specific setup or constraints are mentioned. ```java EarningsListExample.java ``` -------------------------------- ### New Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/simple-earn/docs/rest-api/migration-guide.md Example of initializing the SimpleEarnRestApi with configuration and signature details. Compression can be disabled. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); SimpleEarnRestApi api = new SimpleEarnRestApi(clientConfiguration); ``` -------------------------------- ### Get Mining Account List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Retrieves a list of mining accounts. No specific setup or constraints are mentioned. ```java AccountListExample.java ``` -------------------------------- ### Update Client Initialization (Alternative) Source: https://github.com/binance/binance-connector-java/blob/master/clients/simple-earn/docs/rest-api/migration-guide.md Alternative example for initializing the SimpleEarnRestApi, showing how to disable compression. ```java ClientConfiguration clientConfiguration = SimpleEarnRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression SimpleEarnRestApi api = new SimpleEarnRestApi(clientConfiguration); ``` -------------------------------- ### New Client Initialization Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-portfolio-margin-pro/docs/rest-api/migration-guide.md Example of initializing the DerivativesTradingPortfolioMarginProRestApi with configuration in the new modular structure. Includes setting API key, private key, and disabling compression. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); DerivativesTradingPortfolioMarginProRestApi api = new DerivativesTradingPortfolioMarginProRestApi(clientConfiguration); ``` -------------------------------- ### Get Mining Worker Detail List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Fetches detailed information for mining workers. No specific setup or constraints are mentioned. ```java RequestForDetailMinerListExample.java ``` -------------------------------- ### New Client Initialization (Example 2) Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/docs/rest-api/migration-guide.md Initialize the MiningRestApi with API key, private key, and disable compression. ```java ClientConfiguration clientConfiguration = MiningRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression MiningRestApi api = new MiningRestApi(clientConfiguration); ``` -------------------------------- ### Get Mining Extra Bonus List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Fetches a list of extra bonuses for mining. No specific setup or constraints are mentioned. ```java ExtraBonusListExample.java ``` -------------------------------- ### Old Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/algo/docs/rest-api/migration-guide.md Example of initializing the SpotClient in the old Binance Connector. ```java SpotClient client = new SpotClientImpl(PrivateConfig.API_KEY, PrivateConfig.SECRET_KEY); String result = client.(parameters); System.out.println(result); ``` -------------------------------- ### New Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/wallet/docs/rest-api/migration-guide.md Example of initializing the WalletRestApi with configuration and signature details. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); WalletRestApi api = new WalletRestApi(clientConfiguration); ``` -------------------------------- ### Get Mining Acquiring Coin List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Retrieves a list of supported coins for mining. No specific setup or constraints are mentioned. ```java AcquiringCoinnameExample.java ``` -------------------------------- ### Initialize SimpleEarnRestApi with ClientConfiguration Source: https://github.com/binance/binance-connector-java/blob/master/clients/simple-earn/README.md This example demonstrates how to initialize the SimpleEarnRestApi with client configuration, including API key and private key for authentication. Ensure you replace 'apiKey' and 'path/to/private.key' with your actual credentials. ```java import com.binance.connector.client.simple_earn.rest.SimpleEarnRestApiUtil; import com.binance.connector.client.simple_earn.rest.api.SimpleEarnRestApi; import com.binance.connector.client.common.ApiException; import com.binance.connector.client.common.ApiResponse; import com.binance.connector.client.common.configuration.ClientConfiguration; import com.binance.connector.client.common.configuration.SignatureConfiguration; public static void main(String[] args) { ClientConfiguration clientConfiguration = SimpleEarnRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); SimpleEarnRestApi api = new SimpleEarnRestApi(clientConfiguration); } ``` -------------------------------- ### Get Mining Acquiring Algorithm List Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Fetches a list of available mining algorithms. No specific setup or constraints are mentioned. ```java AcquiringAlgorithmExample.java ``` -------------------------------- ### Get Mining Hashrate Resale Profit Details Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Retrieves detailed profit information for hashrate resale. No specific setup or constraints are mentioned. ```java HashrateResaleDetailExample.java ``` -------------------------------- ### New Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/vip-loan/docs/rest-api/migration-guide.md Example of initializing the VipLoanRestApi with configuration and signature details. Compression can be disabled. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); VipLoanRestApi api = new VipLoanRestApi(clientConfiguration); ``` -------------------------------- ### Client Initialization (New) Source: https://github.com/binance/binance-connector-java/blob/master/clients/c2c/docs/rest-api/migration-guide.md Example of initializing the C2cRestApi in the new modularized Binance C2C Connector, including configuration. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); C2cRestApi api = new C2cRestApi(clientConfiguration); ``` -------------------------------- ### Get Book Ticker using WebSocketStreamsApi Source: https://github.com/binance/binance-connector-java/blob/master/clients/spot/docs/WebSocketStreamsApi.md This example shows how to retrieve real-time updates for the best bid or ask price and quantity for a specified symbol using the bookTicker method. It requires proper API client setup and imports. ```java // Import classes: import com.binance.connector.client.spot.ApiClient; import com.binance.connector.client.spot.ApiException; import com.binance.connector.client.spot.Configuration; import com.binance.connector.client.spot.models.*; import com.binance.connector.client.spot.websocket.stream.api.WebSocketStreamsApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("http://localhost"); WebSocketStreamsApi apiInstance = new WebSocketStreamsApi(defaultClient); BookTickerRequest bookTickerRequest = new BookTickerRequest(); // BookTickerRequest | try { BookTickerResponse result = apiInstance.bookTicker(bookTickerRequest); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling WebSocketStreamsApi#bookTicker"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### Update Client Initialization (Alternative) Source: https://github.com/binance/binance-connector-java/blob/master/clients/vip-loan/docs/rest-api/migration-guide.md Alternative example for updating client initialization with VipLoanRestApiUtil and disabling compression. ```java ClientConfiguration clientConfiguration = VipLoanRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression VipLoanRestApi api = new VipLoanRestApi(clientConfiguration); ``` -------------------------------- ### Get Collateral Record using Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/simple-earn/docs/FlexibleLockedApi.md Retrieves collateral records for a given product ID. Time range cannot exceed 30 days. If start and end times are omitted, the last 30 days of data are returned. Requires API client setup. ```java import com.binance.connector.client.simple_earn.ApiClient; import com.binance.connector.client.simple_earn.ApiException; import com.binance.connector.client.simple_earn.Configuration; import com.binance.connector.client.simple_earn.models.*; import com.binance.connector.client.simple_earn.rest.api.FlexibleLockedApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://api.binance.com"); FlexibleLockedApi apiInstance = new FlexibleLockedApi(defaultClient); String productId = "productId_example"; // String | Long startTime = 56L; // Long | Long endTime = 56L; // Long | Long current = 56L; // Long | Currently querying page. Starts from 1. Default: 1 Long size = 56L; // Long | Number of results per page. Default: 10, Max: 100 Long recvWindow = 56L; // Long | The value cannot be greater than 60000 (ms) try { GetCollateralRecordResponse result = apiInstance.getCollateralRecord(productId, startTime, endTime, current, size, recvWindow); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling FlexibleLockedApi#getCollateralRecord"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### Client Initialization (New) Source: https://github.com/binance/binance-connector-java/blob/master/clients/alpha/docs/rest-api/migration-guide.md Example of initializing the AlphaRestApi with configuration and signature details. Compression can be disabled. ```java ClientConfiguration clientConfiguration = AlphaRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression AlphaRestApi api = new AlphaRestApi(clientConfiguration); ``` -------------------------------- ### Get NFT Deposit History using Java Connector Source: https://github.com/binance/binance-connector-java/blob/master/clients/nft/docs/NftApi.md This example demonstrates how to fetch NFT deposit history. The API supports filtering by start and end times, with a maximum interval of 90 days. If no time range is provided, recent 7 days' data is returned. ```java // Import classes: import com.binance.connector.client.nft.ApiClient; import com.binance.connector.client.nft.ApiException; import com.binance.connector.client.nft.Configuration; import com.binance.connector.client.nft.models.*; import com.binance.connector.client.nft.rest.api.NftApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://api.binance.com"); NftApi apiInstance = new NftApi(defaultClient); Long startTime = 56L; // Long | Long endTime = 56L; // Long | Long limit = 56L; // Long | Default 50, Max 50 Long page = 56L; // Long | Default 1 Long recvWindow = 56L; // Long | try { GetNFTDepositHistoryResponse result = apiInstance.getNFTDepositHistory(startTime, endTime, limit, page, recvWindow); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling NftApi#getNFTDepositHistory"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### New Client Initialization (Example 1) Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/docs/rest-api/migration-guide.md Initialize the MiningRestApi with API key and private key configuration. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); MiningRestApi api = new MiningRestApi(clientConfiguration); ``` -------------------------------- ### New Client Initialization for Algo Connector Source: https://github.com/binance/binance-connector-java/blob/master/clients/algo/docs/rest-api/migration-guide.md Example of initializing AlgoRestApi with configuration in the modularized Binance Algo Connector. Ensure API keys and private keys are correctly set. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); AlgoRestApi api = new AlgoRestApi(clientConfiguration); ``` -------------------------------- ### Get Unclaimed SOL Staking Rewards Source: https://github.com/binance/binance-connector-java/blob/master/clients/staking/docs/SolStakingApi.md Fetches unclaimed SOL staking rewards. The API supports time range filtering with specific constraints on the duration between start and end times. If no time is specified, the last 30 days of data are returned. Requires ApiClient and SolStakingApi setup. ```java import com.binance.connector.client.staking.ApiClient; import com.binance.connector.client.staking.ApiException; import com.binance.connector.client.staking.Configuration; import com.binance.connector.client.staking.models.*; import com.binance.connector.client.staking.rest.api.SolStakingApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://api.binance.com"); SolStakingApi apiInstance = new SolStakingApi(defaultClient); Long recvWindow = 56L; // Long | try { GetUnclaimedRewardsResponse result = apiInstance.getUnclaimedRewards(recvWindow); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling SolStakingApi#getUnclaimedRewards"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### New Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-coin-futures/docs/rest-api/migration-guide.md Example of initializing the DerivativesTradingCoinFuturesRestApi with configuration. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); DerivativesTradingCoinFuturesRestApi api = new DerivativesTradingCoinFuturesRestApi(clientConfiguration); ``` -------------------------------- ### GET /sapi/v1/loan/vip/accruedInterest Source: https://github.com/binance/binance-connector-java/blob/master/clients/vip-loan/docs/UserInformationApi.md Get VIP Loan Accrued Interest (USER_DATA). This endpoint retrieves the accrued interest details for VIP loans. If start time and end time are not provided, it returns data for the last 90 days. The maximum interval between start time and end time is 90 days. ```APIDOC ## GET /sapi/v1/loan/vip/accruedInterest ### Description Get VIP Loan Accrued Interest (USER_DATA). Check VIP Loan interest record. If startTime and endTime are not sent, the recent 90-day data will be returned. The max interval between startTime and endTime is 90 days. ### Method GET ### Endpoint /sapi/v1/loan/vip/accruedInterest ### Parameters #### Query Parameters - **orderId** (Long) - Optional - - **loanCoin** (String) - Optional - - **startTime** (Long) - Optional - - **endTime** (Long) - Optional - - **current** (Long) - Optional - - **limit** (Long) - Optional - - **recvWindow** (Long) - Optional - ### Response #### Success Response (200) - **GetVIPLoanAccruedInterestResponse** (object) - Description of the response object #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### Get Aggregated Trades Source: https://github.com/binance/binance-connector-java/blob/master/clients/alpha/example_rest.md Retrieves aggregated trades for a symbol. No specific setup required beyond client initialization. ```java String result = marketData.aggregatedTrades(params); System.out.println(result); ``` -------------------------------- ### New Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-portfolio-margin/docs/rest-api/migration-guide.md Example of initializing the DerivativesTradingPortfolioMarginRestApi with configuration and signature details. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); DerivativesTradingPortfolioMarginRestApi api = new DerivativesTradingPortfolioMarginRestApi(clientConfiguration); ``` -------------------------------- ### New Client Initialization with API Key and Private Key Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-options/docs/rest-api/migration-guide.md Example of initializing the DerivativesTradingOptionsRestApi using API key and private key configuration. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); DerivativesTradingOptionsRestApi api = new DerivativesTradingOptionsRestApi(clientConfiguration); ``` -------------------------------- ### GET /api/v3/aggTrades Source: https://github.com/binance/binance-connector-java/blob/master/clients/spot/docs/TradesAggregateRequest.md Get aggregate trades. Trades are trades that have been aggregated in the same second. For example, if there in total 10 trades in one second, aggregate trades will show the total amount, count, and the price, but the price is the average price. ```APIDOC ## GET /api/v3/aggTrades ### Description Retrieves aggregate trades for a given symbol, with optional filters for time range, ID, and limit. ### Method GET ### Endpoint /api/v3/aggTrades ### Parameters #### Query Parameters - **symbol** (String) - Required - The symbol to retrieve trades for. - **fromId** (Long) - Optional - If provided, tradeId will be greater than or equal to this value. - **startTime** (Long) - Optional - If provided, trades in and after this time will be returned. - **endTime** (Long) - Optional - If provided, trades in and before this time will be returned. - **limit** (Long) - Optional - Default 500, max 500. ### Response #### Success Response (200) - **aggTrades** (Array) - An array of aggregate trade objects. - **a** (Long) - Aggregate tradeId. - **p** (String) - Price. - **q** (String) - Quantity. - **f** (Long) - First tradeId. - **l** (Long) - Last tradeId. - **T** (Long) - Timestamp. - **m** (Boolean) - Is the buyer the maker? - **M** (Boolean) - Was the trade the best price match? #### Response Example { "aggTrades": [ { "a": 123456789, "p": "0.0015", "q": "100.00000000", "f": 12345, "l": 12345, "T": 1640991200000, "m": true, "M": true } ] } ``` -------------------------------- ### New Client Initialization with API Key and Private Key Source: https://github.com/binance/binance-connector-java/blob/master/clients/staking/docs/rest-api/migration-guide.md Example of initializing the StakingRestApi with API key and private key configuration. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); StakingRestApi api = new StakingRestApi(clientConfiguration); ``` -------------------------------- ### Get Historical Trades - Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/spot/example_websocket_api.md Fetches historical trade data for a symbol. You can specify the start and end time for the query. ```java String tradesHistorical = market.tradesHistorical(new ClientOption().setSymbol("BTCUSDT").setFromId(100L)); ``` -------------------------------- ### New SpotRestApi Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/spot/docs/rest-api/migration-guide.md Example of initializing the SpotRestApi with configuration in the new modularized structure. Includes setting API key, private key, and disabling compression. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); SpotRestApi api = new SpotRestApi(clientConfiguration); ``` -------------------------------- ### New Client Initialization with API Key, Private Key, and Disabled Compression Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-options/docs/rest-api/migration-guide.md Example of initializing the DerivativesTradingOptionsRestApi with API key, private key, and explicitly disabling compression. ```java ClientConfiguration clientConfiguration = DerivativesTradingOptionsRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression DerivativesTradingOptionsRestApi api = new DerivativesTradingOptionsRestApi(clientConfiguration); ``` -------------------------------- ### Get Mining Account Earning Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/mining/example_rest.md Retrieves earning details for a specific mining account. Requires a user ID. ```java MiningAccountEarningExample.java ``` -------------------------------- ### Get BFUSD Account Information Source: https://github.com/binance/binance-connector-java/blob/master/clients/simple-earn/example_rest.md Retrieves the BFUSD account details. No specific setup is required beyond client initialization. ```java String result = client.bfusd().getBfusdAccount(); System.out.println(result); ``` -------------------------------- ### Claim Boost Rewards Example Source: https://github.com/binance/binance-connector-java/blob/master/clients/staking/docs/SolStakingApi.md Demonstrates how to claim boost rewards using the SolStakingApi. Ensure the API key has 'Enable Spot & Margin Trading' permission. This example requires setting up the API client and handling potential exceptions. ```java import com.binance.connector.client.staking.ApiClient; import com.binance.connector.client.staking.ApiException; import com.binance.connector.client.staking.Configuration; import com.binance.connector.client.staking.models.*; import com.binance.connector.client.staking.rest.api.SolStakingApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://api.binance.com"); SolStakingApi apiInstance = new SolStakingApi(defaultClient); ClaimBoostRewardsRequest claimBoostRewardsRequest = new ClaimBoostRewardsRequest(); // ClaimBoostRewardsRequest | try { ClaimBoostRewardsResponse result = apiInstance.claimBoostRewards(claimBoostRewardsRequest); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling SolStakingApi#claimBoostRewards"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### New Client Initialization (Basic) Source: https://github.com/binance/binance-connector-java/blob/master/clients/nft/docs/rest-api/migration-guide.md Initialize the NftRestApi with API key and private key. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); NftRestApi api = new NftRestApi(clientConfiguration); ``` -------------------------------- ### Get Flexible Loan Borrow History - Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/crypto-loan/example_rest.md Fetches the borrowing history for flexible loans. This can be filtered by start and end times. ```java client.flexibleRate().getFlexibleLoanBorrowHistory(params); ``` -------------------------------- ### Initialize Crypto Loan Client (Old vs. New) Source: https://github.com/binance/binance-connector-java/blob/master/clients/crypto-loan/docs/rest-api/migration-guide.md Illustrates the difference in client initialization between the old and new modularized Crypto Loan Connector. ```java SpotClient client = new SpotClientImpl(PrivateConfig.API_KEY, PrivateConfig.SECRET_KEY); String result = client.(parameters); System.out.println(result); ``` ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); CryptoLoanRestApi api = new CryptoLoanRestApi(clientConfiguration); ``` ```java ClientConfiguration clientConfiguration = CryptoLoanRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression CryptoLoanRestApi api = new CryptoLoanRestApi(clientConfiguration); ``` -------------------------------- ### Get Average Price - Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/spot/example_websocket_api.md Retrieves the current average price for a symbol. No specific setup is required beyond initializing the client. ```java String avgPrice = market.avgPrice(new ClientOption().setSymbol("BTCUSDT")); ``` -------------------------------- ### Get WBETH Wrap History Source: https://github.com/binance/binance-connector-java/blob/master/clients/staking/docs/EthStakingApi.md Retrieves the history of WBETH wraps. Requires specifying start and end times, along with pagination parameters. ```java import com.binance.connector.client.staking.ApiClient; import com.binance.connector.client.staking.ApiException; import com.binance.connector.client.staking.Configuration; import com.binance.connector.client.staking.models.*; import com.binance.connector.client.staking.rest.api.EthStakingApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://api.binance.com"); EthStakingApi apiInstance = new EthStakingApi(defaultClient); Long startTime = 56L; // Long | Long endTime = 56L; // Long | Long current = 56L; // Long | Currently querying page. Start from 1. Default:1 Long size = 56L; // Long | Default:10, Max:100 Long recvWindow = 56L; // Long | try { GetWbethWrapHistoryResponse result = apiInstance.getWbethWrapHistory(startTime, endTime, current, size, recvWindow); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling EthStakingApi#getWbethWrapHistory"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### New SpotRestApi Initialization with Compression Disabled Source: https://github.com/binance/binance-connector-java/blob/master/clients/spot/docs/rest-api/migration-guide.md Example of initializing the SpotRestApi with configuration, including disabling compression. ```java ClientConfiguration clientConfiguration = SpotRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression SpotRestApi api = new SpotRestApi(clientConfiguration); ``` -------------------------------- ### Get All Book Tickers Stream - Java Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-coin-futures/docs/WebsocketMarketStreamsApi.md This example shows how to fetch all book tickers streams. It requires setting up the ApiClient and instantiating the WebsocketMarketStreamsApi. ```java import com.binance.connector.client.derivatives_trading_coin_futures.ApiClient; import com.binance.connector.client.derivatives_trading_coin_futures.ApiException; import com.binance.connector.client.derivatives_trading_coin_futures.Configuration; import com.binance.connector.client.derivatives_trading_coin_futures.models.*; import com.binance.connector.client.derivatives_trading_coin_futures.websocket.stream.api.WebsocketMarketStreamsApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("http://localhost"); WebsocketMarketStreamsApi apiInstance = new WebsocketMarketStreamsApi(defaultClient); AllBookTickersStreamRequest allBookTickersStreamRequest = new AllBookTickersStreamRequest(); // AllBookTickersStreamRequest | try { AllBookTickersStreamResponse result = apiInstance.allBookTickersStream(allBookTickersStreamRequest); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling WebsocketMarketStreamsApi#allBookTickersStream"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` -------------------------------- ### New Client Initialization for DualInvestmentRestApi Source: https://github.com/binance/binance-connector-java/blob/master/clients/dual-investment/docs/rest-api/migration-guide.md Example of initializing the DualInvestmentRestApi with configuration in the new modular structure. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); DualInvestmentRestApi api = new DualInvestmentRestApi(clientConfiguration); ``` -------------------------------- ### Get Soft Staking Product List Source: https://github.com/binance/binance-connector-java/blob/master/clients/staking/example_rest.md Retrieves a list of available Soft Staking products. No specific setup is required beyond having the connector initialized. ```java client.staking().softStaking().getSoftStakingProductList(new ClientOption()); ``` -------------------------------- ### Client Initialization with Compression Disabled (New) Source: https://github.com/binance/binance-connector-java/blob/master/clients/c2c/docs/rest-api/migration-guide.md Example of initializing the C2cRestApi in the new modularized Binance C2C Connector, with compression explicitly disabled. ```java ClientConfiguration clientConfiguration = C2cRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression C2cRestApi api = new C2cRestApi(clientConfiguration); ``` -------------------------------- ### Get Flexible Loan Borrow History API Source: https://github.com/binance/binance-connector-java/blob/master/clients/crypto-loan/docs/FlexibleRateApi.md Retrieves the borrowing history for flexible loans. If start time and end time are not provided, recent 90-day data will be returned. The maximum interval between start time and end time is 180 days. This endpoint has a weight of 400. ```APIDOC ## GET /api/v1/flexibleLoan/borrowHistory ### Description Get Flexible Loan Borrow History(USER_DATA). If startTime and endTime are not sent, the recent 90-day data will be returned. The max interval between startTime and endTime is 180 days. Weight: 400 ### Method GET ### Endpoint /api/v1/flexibleLoan/borrowHistory ### Parameters #### Query Parameters - **loanCoin** (String) - Optional - The coin for which to retrieve borrow history. - **collateralCoin** (String) - Optional - The collateral coin used for the loan. - **startTime** (Long) - Optional - The start time of the period for which to retrieve borrow history. - **endTime** (Long) - Optional - The end time of the period for which to retrieve borrow history. - **current** (Long) - Optional - The current page number. - **limit** (Long) - Optional - The number of records to return per page. - **recvWindow** (Long) - Optional - The window in milliseconds that the request must be completed in. ### Response #### Success Response (200) - **GetFlexibleLoanBorrowHistoryResponse** (GetFlexibleLoanBorrowHistoryResponse) - Contains the flexible loan borrow history. #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### Update Client Initialization (Alternative) Source: https://github.com/binance/binance-connector-java/blob/master/clients/sub-account/docs/rest-api/migration-guide.md An alternative example for updating client initialization in the modularized Binance Sub Account Connector, demonstrating how to set API keys, private keys, and disable compression. ```java ClientConfiguration clientConfiguration = SubAccountRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression SubAccountRestApi api = new SubAccountRestApi(clientConfiguration); ``` -------------------------------- ### Client Initialization: New Source: https://github.com/binance/binance-connector-java/blob/master/clients/pay/docs/rest-api/migration-guide.md Example of initializing PayRestApi with configuration and signature details in the new modular structure. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); PayRestApi api = new PayRestApi(clientConfiguration); ``` -------------------------------- ### GET /api/v1/historicalExerciseRecords Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-options/docs/MarketDataApi.md Retrieves historical exercise records for options. This endpoint allows filtering by underlying asset, start and end times, and a limit for the number of results. ```APIDOC ## GET /api/v1/historicalExerciseRecords ### Description Get historical exercise records. * REALISTIC_VALUE_STRICKEN -> Exercised * EXTRINSIC_VALUE_EXPIRED -> Expired OTM Weight: 3 ### Method GET ### Endpoint /api/v1/historicalExerciseRecords ### Parameters #### Query Parameters - **underlying** (String) - Optional - underlying, e.g BTCUSDT - **startTime** (Long) - Optional - Start Time, e.g 1593511200000 - **endTime** (Long) - Optional - End Time, e.g 1593512200000 - **limit** (Long) - Optional - Number of result sets returned Default:100 Max:1000 ### Request Example ```java // Import classes: import com.binance.connector.client.derivatives_trading_options.ApiClient; import com.binance.connector.client.derivatives_trading_options.ApiException; import com.binance.connector.client.derivatives_trading_options.Configuration; import com.binance.connector.client.derivatives_trading_options.models.*; import com.binance.connector.client.derivatives_trading_options.rest.api.MarketDataApi; public class Example { public static void main(String[] args) { ApiClient defaultClient = Configuration.getDefaultApiClient(); defaultClient.setBasePath("https://eapi.binance.com"); MarketDataApi apiInstance = new MarketDataApi(defaultClient); String underlying = "underlying_example"; // String | underlying, e.g BTCUSDT Long startTime = 56L; // Long | Start Time, e.g 1593511200000 Long endTime = 56L; // Long | End Time, e.g 1593512200000 Long limit = 56L; // Long | Number of result sets returned Default:100 Max:1000 try { HistoricalExerciseRecordsResponse result = apiInstance.historicalExerciseRecords(underlying, startTime, endTime, limit); System.out.println(result); } catch (ApiException e) { System.err.println("Exception when calling MarketDataApi#historicalExerciseRecords"); System.err.println("Status code: " + e.getCode()); System.err.println("Reason: " + e.getResponseBody()); System.err.println("Response headers: " + e.getResponseHeaders()); e.printStackTrace(); } } } ``` ### Response #### Success Response (200) - **HistoricalExerciseRecordsResponse** (HistoricalExerciseRecordsResponse) - Historical Exercise Records #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### Get Crypto Loans Income History Source: https://github.com/binance/binance-connector-java/blob/master/clients/crypto-loan/docs/StableRateApi.md Retrieves the income history for crypto loans. Supports filtering by asset, type, start time, and end time. ```APIDOC ## GET /api/v1/crypto/loans/income ### Description Retrieves the income history for crypto loans. Supports filtering by asset, type, start time, and end time. ### Method GET ### Endpoint /api/v1/crypto/loans/income ### Parameters #### Query Parameters - **asset** (String) - Optional - Description not provided. - **type** (String) - Optional - All types will be returned by default. Enum: `borrowIn`, `collateralSpent`, `repayAmount`, `collateralReturn` (Collateral return after repayment), `addCollateral`, `removeCollateral`, `collateralReturnAfterLiquidation`. - **startTime** (Long) - Optional - Description not provided. - **endTime** (Long) - Optional - Description not provided. - **limit** (Long) - Optional - Default: 10; max: 100. - **recvWindow** (Long) - Optional - Description not provided. ### Request Example ```java // Example usage in Java (refer to the provided Java code for full context) // Parameters: asset, type, startTime, endTime, limit, recvWindow // apiInstance.getCryptoLoansIncomeHistory(asset, type, startTime, endTime, limit, recvWindow); ``` ### Response #### Success Response (200) - **GetCryptoLoansIncomeHistoryResponse** (object) - Description not provided. #### Response Example ```json { "example": "response body" } ``` ``` -------------------------------- ### New Client Initialization Source: https://github.com/binance/binance-connector-java/blob/master/clients/derivatives-trading-usds-futures/docs/rest-api/migration-guide.md Example of initializing the DerivativesTradingUsdsFuturesRestApi with configuration. ```java ClientConfiguration clientConfiguration = AlgoRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); DerivativesTradingUsdsFuturesRestApi api = new DerivativesTradingUsdsFuturesRestApi(clientConfiguration); ``` -------------------------------- ### Client Initialization: New with Compression Disabled Source: https://github.com/binance/binance-connector-java/blob/master/clients/pay/docs/rest-api/migration-guide.md Example of initializing PayRestApi with configuration, signature, and compression disabled. ```java ClientConfiguration clientConfiguration = PayRestApiUtil.getClientConfiguration(); SignatureConfiguration signatureConfiguration = new SignatureConfiguration(); signatureConfiguration.setApiKey("apiKey"); signatureConfiguration.setPrivateKey("path/to/private.key"); clientConfiguration.setSignatureConfiguration(signatureConfiguration); clientConfiguration.setCompression(false); //disable compression PayRestApi api = new PayRestApi(clientConfiguration); ```