Skip to content

Commit 20f58b5

Browse files
committed
Add GET getSubAccountTransfers request
1 parent 2c70077 commit 20f58b5

File tree

4 files changed

+148
-10
lines changed

4 files changed

+148
-10
lines changed

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

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,6 @@
11
package com.binance.api.client;
22

3-
import com.binance.api.client.domain.account.Account;
4-
import com.binance.api.client.domain.account.DepositAddress;
5-
import com.binance.api.client.domain.account.DepositHistory;
6-
import com.binance.api.client.domain.account.NewOrder;
7-
import com.binance.api.client.domain.account.NewOrderResponse;
8-
import com.binance.api.client.domain.account.Order;
9-
import com.binance.api.client.domain.account.Trade;
10-
import com.binance.api.client.domain.account.TradeHistoryItem;
11-
import com.binance.api.client.domain.account.WithdrawHistory;
12-
import com.binance.api.client.domain.account.WithdrawResult;
3+
import com.binance.api.client.domain.account.*;
134
import com.binance.api.client.domain.account.request.AllOrdersRequest;
145
import com.binance.api.client.domain.account.request.CancelOrderRequest;
156
import com.binance.api.client.domain.account.request.CancelOrderResponse;
@@ -268,6 +259,13 @@ public interface BinanceApiRestClient {
268259
*/
269260
WithdrawHistory getWithdrawHistory(String asset);
270261

262+
/**
263+
* Fetch sub-account transfer history.
264+
*
265+
* @return sub-account transfers
266+
*/
267+
List<SubAccountTransfer> getSubAccountTransfers();
268+
271269
/**
272270
* Fetch deposit address.
273271
*
Lines changed: 131 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,131 @@
1+
package com.binance.api.client.domain.account;
2+
3+
import org.apache.commons.lang3.builder.ToStringBuilder;
4+
5+
import com.binance.api.client.constant.BinanceApiConstants;
6+
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
7+
8+
@JsonIgnoreProperties(ignoreUnknown = true)
9+
public class SubAccountTransfer {
10+
11+
/**
12+
* Counter party name
13+
*/
14+
private String counterParty;
15+
16+
/**
17+
* Counter party email
18+
*/
19+
private String email;
20+
21+
/**
22+
* Transfer in or transfer out
23+
*/
24+
private Integer type; // 1 for transfer in, 2 for transfer out
25+
26+
/**
27+
* Transfer asset
28+
*/
29+
private String asset;
30+
31+
/**
32+
* Quantity of transfer asset
33+
*/
34+
private String qty;
35+
36+
/**
37+
* Transfer status
38+
*/
39+
private String status;
40+
41+
/**
42+
* Transfer ID
43+
*/
44+
private Long tranId;
45+
46+
/**
47+
* Transfer time
48+
*/
49+
private Long time;
50+
51+
// Setter
52+
public void setCounterParty(String counterParty) {
53+
this.counterParty = counterParty;
54+
}
55+
56+
public void setEmail(String email) {
57+
this.email = email;
58+
}
59+
60+
public void setType(Integer type) {
61+
this.type = type;
62+
}
63+
64+
public void setAsset(String asset) {
65+
this.asset = asset;
66+
}
67+
68+
public void setQty(String qty) {
69+
this.qty = qty;
70+
}
71+
72+
public void setStatus(String status) {
73+
this.status = status;
74+
}
75+
76+
public void setTranId(Long tranId) {
77+
this.tranId = tranId;
78+
}
79+
80+
public void setTime(Long time) {
81+
this.time = time;
82+
}
83+
84+
// Getter
85+
public String getCounterParty() {
86+
return this.counterParty;
87+
}
88+
89+
public String getEmail() {
90+
return this.email;
91+
}
92+
93+
public Integer getType() {
94+
return this.type;
95+
}
96+
97+
public String getAsset() {
98+
return this.asset;
99+
}
100+
101+
public String getQty() {
102+
return this.qty;
103+
}
104+
105+
public String getStatus() {
106+
return this.status;
107+
}
108+
109+
public Long getTranId() {
110+
return this.tranId;
111+
}
112+
113+
public Long getTime() {
114+
return this.time;
115+
}
116+
117+
@Override
118+
public String toString() {
119+
return new ToStringBuilder(this, BinanceApiConstants.TO_STRING_BUILDER_STYLE)
120+
.append("counterParty", this.counterParty)
121+
.append("email", this.email)
122+
.append("type", this.type)
123+
.append("asset", this.asset)
124+
.append("qty", this.qty)
125+
.append("status", this.status)
126+
.append("tranId", this.tranId)
127+
.append("time", this.time)
128+
.toString();
129+
}
130+
131+
}

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,11 @@ public WithdrawHistory getWithdrawHistory(String asset) {
219219
System.currentTimeMillis()));
220220
}
221221

222+
@Override
223+
public List<SubAccountTransfer> getSubAccountTransfers() {
224+
return executeSync(binanceApiService.getSubAccountTransfers(System.currentTimeMillis()));
225+
}
226+
222227
@Override
223228
public DepositAddress getDepositAddress(String asset) {
224229
return executeSync(binanceApiService.getDepositAddress(asset, BinanceApiConstants.DEFAULT_RECEIVING_WINDOW,

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

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,10 @@ Call<WithdrawResult> withdraw(@Query("asset") String asset, @Query("address") St
145145
@GET("/wapi/v3/depositAddress.html")
146146
Call<DepositAddress> getDepositAddress(@Query("asset") String asset, @Query("recvWindow") Long recvWindow, @Query("timestamp") Long timestamp);
147147

148+
@Headers(BinanceApiConstants.ENDPOINT_SECURITY_TYPE_SIGNED_HEADER)
149+
@GET("/sapi/v1/sub-account/transfer/subUserHistory")
150+
Call<List<SubAccountTransfer>> getSubAccountTransfers(@Query("timestamp") Long timestamp);
151+
148152
// User stream endpoints
149153

150154
@Headers(BinanceApiConstants.ENDPOINT_SECURITY_TYPE_APIKEY_HEADER)

0 commit comments

Comments
 (0)