Skip to content
This repository was archived by the owner on Oct 30, 2023. It is now read-only.

Commit 6b1a42f

Browse files
committed
Added endpoint to get max borrowable
1 parent 229060c commit 6b1a42f

5 files changed

Lines changed: 54 additions & 1 deletion

File tree

src/main/java/com/binance/api/client/BinanceApiMarginRestClient.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,10 +88,17 @@ public interface BinanceApiMarginRestClient {
8888
/**
8989
* Query loan record
9090
* @param asset asset to query
91-
* @return loan records
91+
* @return repay records
9292
*/
9393
RepayQueryResult queryRepay(String asset, long startTime);
9494

95+
/**
96+
* Query max borrowable
97+
* @param asset asset to query
98+
* @return max borrowable
99+
*/
100+
MaxBorrowableQueryResult queryMaxBorrowable(String asset);
101+
95102
/**
96103
* Query loan record
97104
* @param asset asset to query
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package com.binance.api.client.domain.account;
2+
3+
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
4+
5+
import java.util.List;
6+
7+
/**
8+
* Max Borrow Query Result
9+
*
10+
* @see Withdraw
11+
*/
12+
@JsonIgnoreProperties(ignoreUnknown = true)
13+
public class MaxBorrowableQueryResult {
14+
15+
private String amount;
16+
17+
public String getAmount() {
18+
return amount;
19+
}
20+
21+
public void setAmount(String amount) {
22+
this.amount = amount;
23+
}
24+
25+
@Override
26+
public String toString() {
27+
return "MaxBorrowQueryResult{" +
28+
"amount='" + amount + '\'' +
29+
'}';
30+
}
31+
}

src/main/java/com/binance/api/client/impl/BinanceApiMarginRestClientImpl.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,12 @@ public RepayQueryResult queryRepay(String asset, long startTime) {
105105
return executeSync(binanceApiService.queryRepay(asset, startTime, timestamp));
106106
}
107107

108+
@Override
109+
public MaxBorrowableQueryResult queryMaxBorrowable(String asset) {
110+
long timestamp = System.currentTimeMillis();
111+
return executeSync(binanceApiService.queryMaxBorrowable(asset, timestamp));
112+
}
113+
108114
@Override
109115
public MarginTransaction repay(String asset, String amount) {
110116
long timestamp = System.currentTimeMillis();

src/main/java/com/binance/api/client/impl/BinanceApiService.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -186,6 +186,10 @@ Call<WithdrawResult> withdraw(@Query("asset") String asset, @Query("address") St
186186
@GET("/sapi/v1/margin/repay")
187187
Call<RepayQueryResult> queryRepay(@Query("asset") String asset, @Query("txId") String txId, @Query("timestamp") Long timestamp);
188188

189+
@Headers({BinanceApiConstants.ENDPOINT_SECURITY_TYPE_APIKEY_HEADER, BinanceApiConstants.ENDPOINT_SECURITY_TYPE_SIGNED_HEADER})
190+
@GET("/sapi/v1/margin/maxBorrowable")
191+
Call<MaxBorrowableQueryResult> queryMaxBorrowable(@Query("asset") String asset, @Query("timestamp") Long timestamp);
192+
189193
@Headers({BinanceApiConstants.ENDPOINT_SECURITY_TYPE_APIKEY_HEADER, BinanceApiConstants.ENDPOINT_SECURITY_TYPE_SIGNED_HEADER})
190194
@GET("/sapi/v1/margin/repay")
191195
Call<RepayQueryResult> queryRepay(@Query("asset") String asset, @Query("startTime") Long starttime, @Query("timestamp") Long timestamp);

src/test/java/com/binance/api/examples/MarginAccountEndpointsLoanQueryExample.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.binance.api.client.BinanceApiClientFactory;
44
import com.binance.api.client.BinanceApiMarginRestClient;
55
import com.binance.api.client.domain.account.MarginTransaction;
6+
import com.binance.api.client.domain.account.MaxBorrowableQueryResult;
67
import com.binance.api.client.domain.account.RepayQueryResult;
78

89
/**
@@ -13,6 +14,10 @@ public class MarginAccountEndpointsLoanQueryExample {
1314
public static void main(String[] args) {
1415
BinanceApiClientFactory factory = BinanceApiClientFactory.newInstance("YOUR_API_KEY", "YOUR_SECRET");
1516
BinanceApiMarginRestClient client = factory.newMarginRestClient();
17+
MaxBorrowableQueryResult usdt = client.queryMaxBorrowable("USDT");
18+
System.out.println(usdt.getAmount());
19+
MaxBorrowableQueryResult bnb = client.queryMaxBorrowable("BNB");
20+
System.out.println(bnb.getAmount());
1621
MarginTransaction borrowed = client.borrow("USDT", "310");
1722
System.out.println(borrowed.getTranId());
1823
MarginTransaction repaid = client.repay("USDT", "310");

0 commit comments

Comments
 (0)