diff --git a/clients/web3-wallet/CHANGELOG.md b/clients/web3-wallet/CHANGELOG.md
new file mode 100644
index 0000000..f485a59
--- /dev/null
+++ b/clients/web3-wallet/CHANGELOG.md
@@ -0,0 +1,13 @@
+# Changelog
+
+## 1.0.0 - 2026-07-24
+
+### Changed (1)
+
+- Modified response for `getGasLimit()` (`POST /api/v1/dex/pre-transaction/gas-limit`):
+ - `data`: property `energyFee` added
+ - `data`: property `energyRequired` added
+ - `data`: property `freeBandwidth` added
+ - `data`: property `freeEnergy` added
+ - `data`: property `bandwidthFee` added
+ - `data`: property `bandwidthRequired` added
diff --git a/clients/web3-wallet/docs/AddressPortfolioApi.md b/clients/web3-wallet/docs/AddressPortfolioApi.md
new file mode 100644
index 0000000..dcc2ad3
--- /dev/null
+++ b/clients/web3-wallet/docs/AddressPortfolioApi.md
@@ -0,0 +1,617 @@
+# AddressPortfolioApi
+
+All URIs are relative to *https://web3.binance.com/build*
+
+| Method | HTTP request | Description |
+|------------- | ------------- | -------------|
+| [**getAddressPnLForSpecificToken**](AddressPortfolioApi.md#getAddressPnLForSpecificToken) | **GET** /api/v1/dex/market/portfolio/token/latest-pnl | Get Address PnL for Specific Token |
+| [**getAddressPortfolioOverview**](AddressPortfolioApi.md#getAddressPortfolioOverview) | **GET** /api/v1/dex/market/portfolio/overview | Get Address Portfolio Overview |
+| [**getAddressRecentPnL**](AddressPortfolioApi.md#getAddressRecentPnL) | **GET** /api/v1/dex/market/portfolio/recent-pnl | Get Address Recent PnL |
+| [**getDexTradeHistory**](AddressPortfolioApi.md#getDexTradeHistory) | **GET** /api/v1/dex/market/portfolio/dex-history | Get DEX Trade History |
+| [**getLeaderboard**](AddressPortfolioApi.md#getLeaderboard) | **GET** /api/v1/dex/market/leaderboard/list | Get Leaderboard |
+| [**getPortfolioSupportedChains**](AddressPortfolioApi.md#getPortfolioSupportedChains) | **GET** /api/v1/dex/market/portfolio/supported/chain | Get Portfolio Supported Chains |
+| [**getTrackedTrades**](AddressPortfolioApi.md#getTrackedTrades) | **GET** /api/v1/dex/market/address-tracker/trades | Get Tracked Trades |
+
+
+
+# **getAddressPnLForSpecificToken**
+> GetAddressPnLForSpecificTokenResponse getAddressPnLForSpecificToken(binanceChainId, walletAddress, tokenContractAddress).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get Address PnL for Specific Token
+
+Return the latest realized PnL detail for a specific token held by an address, including buy/sell stats, current balance, and holding duration.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String walletAddress = "0x28c6c06298d514db089934071355e5743bf21d60"; // String | Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Token contract address. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ try {
+ GetAddressPnLForSpecificTokenResponse result = apiInstance.getAddressPnLForSpecificToken(binanceChainId, walletAddress, tokenContractAddress)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getAddressPnLForSpecificToken");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **walletAddress** | **String**| Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | |
+| **tokenContractAddress** | **String**| Token contract address. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+
+### Return type
+
+[**GetAddressPnLForSpecificTokenResponse**](GetAddressPnLForSpecificTokenResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Token latest PnL returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getAddressPortfolioOverview**
+> GetAddressPortfolioOverviewResponse getAddressPortfolioOverview(binanceChainId, walletAddress, timeFrame).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get Address Portfolio Overview
+
+Return trading performance overview for an address within the selected time frame, including realized PnL, daily PnL breakdown, win rate, and top 3 profitable tokens.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String walletAddress = "0x28c6c06298d514db089934071355e5743bf21d60"; // String | Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ TimeFrame timeFrame = TimeFrame.fromValue("1"); // TimeFrame | Statistics time range. 1=1D, 2=7D, 3=1M, 4=3M. Note: these values differ from the leaderboard/list endpoint (where 1=7D, 2=1M, 3=3M); do not reuse enum knowledge across endpoints.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ try {
+ GetAddressPortfolioOverviewResponse result = apiInstance.getAddressPortfolioOverview(binanceChainId, walletAddress, timeFrame)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getAddressPortfolioOverview");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **walletAddress** | **String**| Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | |
+| **timeFrame** | [**TimeFrame**](.md)| Statistics time range. 1=1D, 2=7D, 3=1M, 4=3M. Note: these values differ from the leaderboard/list endpoint (where 1=7D, 2=1M, 3=3M); do not reuse enum knowledge across endpoints. | [enum: 1, 2, 3] |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+
+### Return type
+
+[**GetAddressPortfolioOverviewResponse**](GetAddressPortfolioOverviewResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Portfolio overview returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getAddressRecentPnL**
+> GetAddressRecentPnLResponse getAddressRecentPnL(binanceChainId, walletAddress).recvWindow(recvWindow).nonce(nonce).cursor(cursor).limit(limit).execute();
+
+Get Address Recent PnL
+
+Return recent realized PnL list for an address.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String walletAddress = "0x28c6c06298d514db089934071355e5743bf21d60"; // String | Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String cursor = ""; // String | Pagination cursor. Omit or pass empty string for the first page; pass the cursor from the previous response to get the next page.
+ String limit = "20"; // String | Number of records per page. Default 20, max 100.
+ try {
+ GetAddressRecentPnLResponse result = apiInstance.getAddressRecentPnL(binanceChainId, walletAddress)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .cursor(cursor)
+ .limit(limit)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getAddressRecentPnL");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **walletAddress** | **String**| Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **cursor** | **String**| Pagination cursor. Omit or pass empty string for the first page; pass the cursor from the previous response to get the next page. | [optional] |
+| **limit** | **String**| Number of records per page. Default 20, max 100. | [optional] |
+
+### Return type
+
+[**GetAddressRecentPnLResponse**](GetAddressRecentPnLResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Recent PnL list returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getDexTradeHistory**
+> GetDexTradeHistoryResponse getDexTradeHistory(binanceChainId, walletAddress).recvWindow(recvWindow).nonce(nonce).begin(begin).end(end).tokenContractAddress(tokenContractAddress).type(type).cursor(cursor).limit(limit).execute();
+
+Get DEX Trade History
+
+Return swap trade history for a specific address. Supports filtering by time range, token, and trade type.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String walletAddress = "0x28c6c06298d514db089934071355e5743bf21d60"; // String | Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String begin = "1714000000000"; // String | Start timestamp (Unix milliseconds, inclusive). If both begin and end are omitted, no time filter is applied.
+ String end = "1748601600000"; // String | End timestamp (Unix milliseconds, inclusive). If both begin and end are omitted, no time filter is applied.
+ String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Filter by token contract address. Returns all tokens when omitted.
+ OrderType type = OrderType.fromValue("1"); // OrderType | Trade type filter. 1=Buy, 2=Sell. Omit to return all types.
+ String cursor = ""; // String | Pagination cursor. Omit or pass empty string for the first page.
+ String limit = "20"; // String | Number of records per page. Default 20, max 100.
+ try {
+ GetDexTradeHistoryResponse result = apiInstance.getDexTradeHistory(binanceChainId, walletAddress)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .begin(begin)
+ .end(end)
+ .tokenContractAddress(tokenContractAddress)
+ .type(type)
+ .cursor(cursor)
+ .limit(limit)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getDexTradeHistory");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **walletAddress** | **String**| Wallet address to query. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **begin** | **String**| Start timestamp (Unix milliseconds, inclusive). If both begin and end are omitted, no time filter is applied. | [optional] |
+| **end** | **String**| End timestamp (Unix milliseconds, inclusive). If both begin and end are omitted, no time filter is applied. | [optional] |
+| **tokenContractAddress** | **String**| Filter by token contract address. Returns all tokens when omitted. | [optional] |
+| **type** | [**OrderType**](.md)| Trade type filter. 1=Buy, 2=Sell. Omit to return all types. | [optional] [enum: 1, 2] |
+| **cursor** | **String**| Pagination cursor. Omit or pass empty string for the first page. | [optional] |
+| **limit** | **String**| Number of records per page. Default 20, max 100. | [optional] |
+
+### Return type
+
+[**GetDexTradeHistoryResponse**](GetDexTradeHistoryResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | DEX history returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getLeaderboard**
+> GetLeaderboardResponse getLeaderboard(binanceChainId, timeFrame, sortBy).recvWindow(recvWindow).nonce(nonce).walletType(walletType).minRealizedPnlUsd(minRealizedPnlUsd).maxRealizedPnlUsd(maxRealizedPnlUsd).minWinRatePercent(minWinRatePercent).maxWinRatePercent(maxWinRatePercent).minTxs(minTxs).maxTxs(maxTxs).minTxVolume(minTxVolume).maxTxVolume(maxTxVolume).cursor(cursor).limit(limit).execute();
+
+Get Leaderboard
+
+Return a leaderboard of top-performing wallets, with sorting and filtering by PnL, win rate, transaction count, and volume.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). Single chain only.
+ TimeFrame timeFrame = TimeFrame.fromValue("1"); // TimeFrame | Statistics time range. 1=7D, 2=1M, 3=3M. Note: these values differ from the portfolio/overview endpoint (where 1=1D, 2=7D, 3=1M, 4=3M); do not reuse enum knowledge across endpoints.
+ SortBy sortBy = SortBy.fromValue("1"); // SortBy | Sort field. 1=Realized PnL (USD), 2=Win Rate, 3=Transaction count, 4=Volume (USD), 5=Realized PnL %.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ WalletType walletType = WalletType.fromValue("1"); // WalletType | Wallet type filter, single selection only. 1=Smart Money, 2=KOL, 3=Hot List. Returns all types when omitted.
+ String minRealizedPnlUsd = "1000"; // String | Minimum realized PnL filter, denominated in USD.
+ String maxRealizedPnlUsd = "50000"; // String | Maximum realized PnL filter, denominated in USD.
+ String minWinRatePercent = "50"; // String | Minimum win rate filter, without percent sign. \"50\" means ≥50%.
+ String maxWinRatePercent = "90"; // String | Maximum win rate filter, without percent sign. \"90\" means ≤90%.
+ String minTxs = "10"; // String | Minimum transaction count filter.
+ String maxTxs = "1000"; // String | Maximum transaction count filter.
+ String minTxVolume = "5000"; // String | Minimum total transaction volume filter, denominated in USD.
+ String maxTxVolume = "1000000"; // String | Maximum total transaction volume filter, denominated in USD.
+ String cursor = ""; // String | Pagination cursor. Omit or pass empty string for the first page.
+ String limit = "50"; // String | Number of records per page. Default 50, max 50.
+ try {
+ GetLeaderboardResponse result = apiInstance.getLeaderboard(binanceChainId, timeFrame, sortBy)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .walletType(walletType)
+ .minRealizedPnlUsd(minRealizedPnlUsd)
+ .maxRealizedPnlUsd(maxRealizedPnlUsd)
+ .minWinRatePercent(minWinRatePercent)
+ .maxWinRatePercent(maxWinRatePercent)
+ .minTxs(minTxs)
+ .maxTxs(maxTxs)
+ .minTxVolume(minTxVolume)
+ .maxTxVolume(maxTxVolume)
+ .cursor(cursor)
+ .limit(limit)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getLeaderboard");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). Single chain only. | |
+| **timeFrame** | [**TimeFrame**](.md)| Statistics time range. 1=7D, 2=1M, 3=3M. Note: these values differ from the portfolio/overview endpoint (where 1=1D, 2=7D, 3=1M, 4=3M); do not reuse enum knowledge across endpoints. | [enum: 1, 2, 3] |
+| **sortBy** | [**SortBy**](.md)| Sort field. 1=Realized PnL (USD), 2=Win Rate, 3=Transaction count, 4=Volume (USD), 5=Realized PnL %. | [enum: 1, 2, 3, 4, 5] |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **walletType** | [**WalletType**](.md)| Wallet type filter, single selection only. 1=Smart Money, 2=KOL, 3=Hot List. Returns all types when omitted. | [optional] [enum: 1, 2, 3] |
+| **minRealizedPnlUsd** | **String**| Minimum realized PnL filter, denominated in USD. | [optional] |
+| **maxRealizedPnlUsd** | **String**| Maximum realized PnL filter, denominated in USD. | [optional] |
+| **minWinRatePercent** | **String**| Minimum win rate filter, without percent sign. \"50\" means ≥50%. | [optional] |
+| **maxWinRatePercent** | **String**| Maximum win rate filter, without percent sign. \"90\" means ≤90%. | [optional] |
+| **minTxs** | **String**| Minimum transaction count filter. | [optional] |
+| **maxTxs** | **String**| Maximum transaction count filter. | [optional] |
+| **minTxVolume** | **String**| Minimum total transaction volume filter, denominated in USD. | [optional] |
+| **maxTxVolume** | **String**| Maximum total transaction volume filter, denominated in USD. | [optional] |
+| **cursor** | **String**| Pagination cursor. Omit or pass empty string for the first page. | [optional] |
+| **limit** | **String**| Number of records per page. Default 50, max 50. | [optional] |
+
+### Return type
+
+[**GetLeaderboardResponse**](GetLeaderboardResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Leaderboard list returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getPortfolioSupportedChains**
+> GetPortfolioSupportedChainsResponse getPortfolioSupportedChains().recvWindow(recvWindow).nonce(nonce).execute();
+
+Get Portfolio Supported Chains
+
+Return the list of blockchains supported by address portfolio analysis.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ try {
+ GetPortfolioSupportedChainsResponse result = apiInstance.getPortfolioSupportedChains()
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getPortfolioSupportedChains");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+
+### Return type
+
+[**GetPortfolioSupportedChainsResponse**](GetPortfolioSupportedChainsResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Supported chains returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getTrackedTrades**
+> GetTrackedTradesResponse getTrackedTrades(trackerType).recvWindow(recvWindow).nonce(nonce).walletAddress(walletAddress).tradeType(tradeType).binanceChainId(binanceChainId).minVolume(minVolume).maxVolume(maxVolume).minMarketCap(minMarketCap).maxMarketCap(maxMarketCap).isHideRiskToken(isHideRiskToken).limit(limit).execute();
+
+Get Tracked Trades
+
+Return the latest swap trades from tracked addresses (smart money, KOL, or custom address list).
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.AddressPortfolioApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ AddressPortfolioApi apiInstance = new AddressPortfolioApi(defaultClient);
+ TrackerType trackerType = TrackerType.fromValue("1"); // TrackerType | Tracker type. 1=Smart Money, 2=KOL, 3=Custom address list (walletAddress required).
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String walletAddress = "0x28c6c06298d514db089934071355e5743bf21d60,0xd8da6bf26964af9d7eed9e03e53415d37aa96045"; // String | Required when trackerType=3. One or more wallet addresses, comma-separated, up to 20. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ String tradeType = "0"; // String | Trade type filter. 0=All (default), 1=Buy, 2=Sell, 3=Add position, 4=Reduce position, 5=Open position, 6=Close position, 7=Transfer in, 8=Transfer out. Multiple values comma-separated.
+ String binanceChainId = "1"; // String | Filter by chain. Returns all chains when omitted.
+ String minVolume = "100"; // String | Minimum trade volume filter, denominated in USD.
+ String maxVolume = "100000"; // String | Maximum trade volume filter, denominated in USD.
+ String minMarketCap = "10000"; // String | Minimum market cap filter, denominated in USD.
+ String maxMarketCap = "10000000"; // String | Maximum market cap filter, denominated in USD.
+ Boolean isHideRiskToken = true; // Boolean | Whether to hide risk tokens. true=hide risk tokens (default), false=show all tokens including risk tokens.
+ Integer limit = 50; // Integer | Maximum number of trades to return. Effective only for trackerType=3 (custom address list); trackerType=1/2 ignore this and use the downstream public query fixed cap. Omit to use the downstream default.
+ try {
+ GetTrackedTradesResponse result = apiInstance.getTrackedTrades(trackerType)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .walletAddress(walletAddress)
+ .tradeType(tradeType)
+ .binanceChainId(binanceChainId)
+ .minVolume(minVolume)
+ .maxVolume(maxVolume)
+ .minMarketCap(minMarketCap)
+ .maxMarketCap(maxMarketCap)
+ .isHideRiskToken(isHideRiskToken)
+ .limit(limit)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling AddressPortfolioApi#getTrackedTrades");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **trackerType** | [**TrackerType**](.md)| Tracker type. 1=Smart Money, 2=KOL, 3=Custom address list (walletAddress required). | [enum: 1, 2, 3] |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **walletAddress** | **String**| Required when trackerType=3. One or more wallet addresses, comma-separated, up to 20. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | [optional] |
+| **tradeType** | **String**| Trade type filter. 0=All (default), 1=Buy, 2=Sell, 3=Add position, 4=Reduce position, 5=Open position, 6=Close position, 7=Transfer in, 8=Transfer out. Multiple values comma-separated. | [optional] |
+| **binanceChainId** | **String**| Filter by chain. Returns all chains when omitted. | [optional] |
+| **minVolume** | **String**| Minimum trade volume filter, denominated in USD. | [optional] |
+| **maxVolume** | **String**| Maximum trade volume filter, denominated in USD. | [optional] |
+| **minMarketCap** | **String**| Minimum market cap filter, denominated in USD. | [optional] |
+| **maxMarketCap** | **String**| Maximum market cap filter, denominated in USD. | [optional] |
+| **isHideRiskToken** | **Boolean**| Whether to hide risk tokens. true=hide risk tokens (default), false=show all tokens including risk tokens. | [optional] |
+| **limit** | **Integer**| Maximum number of trades to return. Effective only for trackerType=3 (custom address list); trackerType=1/2 ignore this and use the downstream public query fixed cap. Omit to use the downstream default. | [optional] |
+
+### Return type
+
+[**GetTrackedTradesResponse**](GetTrackedTradesResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Address tracker trades returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
diff --git a/clients/web3-wallet/docs/BinanceChainId.md b/clients/web3-wallet/docs/BinanceChainId.md
new file mode 100644
index 0000000..c5507d8
--- /dev/null
+++ b/clients/web3-wallet/docs/BinanceChainId.md
@@ -0,0 +1,11 @@
+
+
+# BinanceChainId
+
+## Enum
+
+
+* `CT_501` (value: `"CT_501"`)
+
+
+
diff --git a/clients/web3-wallet/docs/BroadcastTransactionsRequest.md b/clients/web3-wallet/docs/BroadcastTransactionsRequest.md
index a4ce593..e82f1be 100644
--- a/clients/web3-wallet/docs/BroadcastTransactionsRequest.md
+++ b/clients/web3-wallet/docs/BroadcastTransactionsRequest.md
@@ -7,9 +7,9 @@
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
-|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
-|**signedTransaction** | **String** | Client-signed raw transaction. EVM chains use a hex-encoded RLP transaction; Solana uses a base64-encoded signed transaction. | |
-|**address** | **String** | Sender wallet address. Used for status attribution and signature verification. | |
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana, \"CT_195\"=Tron). | |
+|**signedTransaction** | **String** | Client-signed raw transaction. Format depends on `binanceChainId`: - **EVM chains**: hex-encoded RLP transaction (e.g. `0xf86c...`). - **Solana (`CT_501`)**: base64-encoded signed transaction. - **Tron (`CT_195`)**: JSON string of the signed transaction returned by a Tron signer, containing `raw_data` (with `contract[].parameter.value.owner_address`) and a `signature` array. Example: `{\"raw_data\":{\"contract\":[{\"type\":\"TriggerSmartContract\",\"parameter\":{\"value\":{\"owner_address\":\"T...\",\"contract_address\":\"T...\",\"data\":\"<calldata hex>\",\"call_value\":0}}}]},\"signature\":[\"...\"]}`. Note for Tron: `signedTransaction` is NOT the calldata hex passed to `simulate` / `getGasLimit` under `tronTx.triggerSmartContractParams.data`. The signer is extracted from `raw_data.contract[0].parameter.value.owner_address` and must match `address`; passing calldata hex here will be rejected with `code=40001, invalid signedTransaction: failed to parse Tron signedTransaction: syntax error`. | |
+|**address** | **String** | Sender wallet address. Used for status attribution and signature verification. On Tron and Solana the address is case-sensitive base58check. | |
|**enableMevProtection** | **Boolean** | When true, route the transaction through a private mempool for MEV protection. | [optional] |
diff --git a/clients/web3-wallet/docs/BroadcastTransactionsResponseData.md b/clients/web3-wallet/docs/BroadcastTransactionsResponseData.md
index e8a19d1..19e0b54 100644
--- a/clients/web3-wallet/docs/BroadcastTransactionsResponseData.md
+++ b/clients/web3-wallet/docs/BroadcastTransactionsResponseData.md
@@ -8,7 +8,7 @@
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**orderId** | **String** | Internal order identifier. Use this to query on-chain status via the post-transaction service. | [optional] |
-|**txHash** | **String** | On-chain transaction hash. | [optional] |
+|**txHash** | **String** | On-chain transaction hash. EVM chains return a hex hash; Tron returns a base58check hash; Solana returns a base58 hash. | [optional] |
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponse.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponse.md
new file mode 100644
index 0000000..87940a4
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponse.md
@@ -0,0 +1,17 @@
+
+
+# BuildSolanaSwapInstructionsResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**BuildSolanaSwapInstructionsResponseData**](BuildSolanaSwapInstructionsResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseData.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseData.md
new file mode 100644
index 0000000..edd9746
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseData.md
@@ -0,0 +1,16 @@
+
+
+# BuildSolanaSwapInstructionsResponseData
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**addressLookupTableAccount** | **List<String>** | Address Lookup Table addresses (Base58) referenced by the transaction, including the platform-injected custom ALT. The caller must fetch each ALT account (`getAccountInfo`) and pass the parsed lookup data when compiling the v0 message. | [optional] |
+|**instructionLists** | [**List<BuildSolanaSwapInstructionsResponseDataInstructionListsInner>**](BuildSolanaSwapInstructionsResponseDataInstructionListsInner.md) | Ordered uncompiled instructions to assemble into the v0 transaction. | [optional] |
+|**routerResult** | [**BuildSolanaSwapInstructionsResponseDataRouterResult**](BuildSolanaSwapInstructionsResponseDataRouterResult.md) | | [optional] |
+|**tx** | [**BuildSolanaSwapInstructionsResponseDataTx**](BuildSolanaSwapInstructionsResponseDataTx.md) | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataInstructionListsInner.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataInstructionListsInner.md
new file mode 100644
index 0000000..9c6cc61
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataInstructionListsInner.md
@@ -0,0 +1,15 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataInstructionListsInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**programId** | **String** | Program that owns the instruction (Base58). | [optional] |
+|**data** | **String** | Instruction data, Base64-encoded. May be an empty string for instructions without data. | [optional] |
+|**accounts** | [**List<BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner>**](BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner.md) | Accounts referenced by the instruction, in ABI order. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner.md
new file mode 100644
index 0000000..056668f
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner.md
@@ -0,0 +1,15 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**pubkey** | **String** | Account public key (Base58). | [optional] |
+|**isSigner** | **Boolean** | Whether the account must sign the transaction. | [optional] |
+|**isWritable** | **Boolean** | Whether the account is writable. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResult.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResult.md
new file mode 100644
index 0000000..889520d
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResult.md
@@ -0,0 +1,24 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResult
+
+Routing result (same shape and semantics as `/swap`'s `routerResult`).
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Chain identifier (always `CT_501`). | [optional] |
+|**vendorName** | **String** | Vendor that supplied the executed quote (Solana vendors include Jupiter, LiquidMesh). | [optional] |
+|**fromTokenAmount** | **String** | Sell-token amount (smallest unit, integer string). | [optional] |
+|**toTokenAmount** | **String** | Estimated buy-token amount (smallest unit, integer string). | [optional] |
+|**tradeFee** | **String** | Estimated network fee in USD. | [optional] |
+|**estimateGasFee** | **String** | Estimated compute units for the transaction (echoes `computeUnitLimit`). | [optional] |
+|**router** | **String** | Routing path description, mints joined with \"--\". | [optional] |
+|**priceImpactPercent** | **String** | Price impact percentage. | [optional] |
+|**dexRouterList** | [**List<BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner>**](BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner.md) | Routing path segments (same shape as `/quote`'s `dexRouterList`). | [optional] |
+|**fromToken** | [**BuildSolanaSwapInstructionsResponseDataRouterResultFromToken**](BuildSolanaSwapInstructionsResponseDataRouterResultFromToken.md) | | [optional] |
+|**toToken** | [**BuildSolanaSwapInstructionsResponseDataRouterResultToToken**](BuildSolanaSwapInstructionsResponseDataRouterResultToToken.md) | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner.md
new file mode 100644
index 0000000..ab54b3a
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner.md
@@ -0,0 +1,17 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**dexProtocol** | [**BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol**](BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol.md) | | [optional] |
+|**fromToken** | [**BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken**](BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken.md) | | [optional] |
+|**fromTokenIndex** | **String** | | [optional] |
+|**toToken** | [**BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken**](BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken.md) | | [optional] |
+|**toTokenIndex** | **String** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol.md
new file mode 100644
index 0000000..447d92b
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol.md
@@ -0,0 +1,14 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**dexName** | **String** | | [optional] |
+|**percent** | **String** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken.md
new file mode 100644
index 0000000..781fa3e
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken.md
@@ -0,0 +1,14 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tokenContractAddress** | **String** | | [optional] |
+|**tokenSymbol** | **String** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken.md
new file mode 100644
index 0000000..63dd50e
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken.md
@@ -0,0 +1,14 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tokenContractAddress** | **String** | | [optional] |
+|**tokenSymbol** | **String** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultFromToken.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultFromToken.md
new file mode 100644
index 0000000..6e6040b
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultFromToken.md
@@ -0,0 +1,16 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResultFromToken
+
+Sell-token metadata.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tokenContractAddress** | **String** | | [optional] |
+|**tokenSymbol** | **String** | | [optional] |
+|**decimal** | **String** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultToToken.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultToToken.md
new file mode 100644
index 0000000..bf224f8
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataRouterResultToToken.md
@@ -0,0 +1,16 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataRouterResultToToken
+
+Buy-token metadata.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tokenContractAddress** | **String** | | [optional] |
+|**tokenSymbol** | **String** | | [optional] |
+|**decimal** | **String** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataTx.md b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataTx.md
new file mode 100644
index 0000000..ac3aef8
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSolanaSwapInstructionsResponseDataTx.md
@@ -0,0 +1,17 @@
+
+
+# BuildSolanaSwapInstructionsResponseDataTx
+
+Transaction summary (no `data` field — replaced by `instructionLists`). Contains the fields the caller needs to display or audit before signing.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**from** | **String** | User wallet address (transaction sender / fee payer). | [optional] |
+|**to** | **String** | Platform Router program address (the swap target program). | [optional] |
+|**minReceiveAmount** | **String** | Minimum buy-token amount the user accepts at the slippage limit (smallest unit, integer string). | [optional] |
+|**slippagePercent** | **String** | Slippage value applied to this transaction (percentage string). | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/BuildSwapTransactionResponseData.md b/clients/web3-wallet/docs/BuildSwapTransactionResponseData.md
index 0e4f3a7..b91543a 100644
--- a/clients/web3-wallet/docs/BuildSwapTransactionResponseData.md
+++ b/clients/web3-wallet/docs/BuildSwapTransactionResponseData.md
@@ -9,6 +9,8 @@
|------------ | ------------- | ------------- | -------------|
|**routerResult** | [**BuildSwapTransactionResponseDataRouterResult**](BuildSwapTransactionResponseDataRouterResult.md) | | [optional] |
|**tx** | [**BuildSwapTransactionResponseDataTx**](BuildSwapTransactionResponseDataTx.md) | | [optional] |
+|**executionMode** | **String** | Execution mode for this swap. `SWAP` = sign the `tx` object and broadcast to the chain. `RFQ` = sign `rfq.typedDataToSign` with EIP-712 (`eth_signTypedData_v4`), then submit via `POST /order/submit` and poll `GET /order/{orderId}` for settlement status. Equity / RWA tokens always return `RFQ`. | [optional] |
+|**rfq** | [**BuildSwapTransactionResponseDataRfq**](BuildSwapTransactionResponseDataRfq.md) | | [optional] |
diff --git a/clients/web3-wallet/docs/BuildSwapTransactionResponseDataRfq.md b/clients/web3-wallet/docs/BuildSwapTransactionResponseDataRfq.md
new file mode 100644
index 0000000..471acb1
--- /dev/null
+++ b/clients/web3-wallet/docs/BuildSwapTransactionResponseDataRfq.md
@@ -0,0 +1,18 @@
+
+
+# BuildSwapTransactionResponseDataRfq
+
+RFQ order payload. Present only when `executionMode=RFQ`. Contains the EIP-712 typed data to sign, the target vendor, the signing scheme, and (when requested) the approve transaction data.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**vendor** | **String** | RFQ vendor that will settle this order on-chain. Pass this as the `vendor` field in `POST /order/submit`. | [optional] |
+|**txType** | **String** | Transaction type for this RFQ order. Currently always `EIP712` (all three RFQ vendors use EIP-712 typed-data signing); reserved for future signing schemes. | [optional] |
+|**typedDataToSign** | **String** | EIP-712 typed data payload for `eth_signTypedData_v4`, serialized as a hex string (or JSON-encoded string). Sign with the wallet that matches `userWalletAddress` from `/quote`. Pass the resulting signature as `userSignature` in `POST /order/submit`. | [optional] |
+|**signingScheme** | **String** | Signing scheme required by this vendor. Pass this as `signingScheme` in `POST /order/submit`. | [optional] |
+|**signatureData** | **List<String>** | Approve transaction data, present only when `approveTransaction=true` was passed and the from-token is an EVM ERC-20. Each element is a JSON string containing `approveContract` (the spender address, resolved per vendor: InchFusion→router, PcsXRfq→Permit2, CowSwap→VaultRelayer) and `approveTxCalldata` (the ERC-20 `approve()` calldata). Empty list otherwise. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/MarketApi.md b/clients/web3-wallet/docs/GeneralDataApi.md
similarity index 84%
rename from clients/web3-wallet/docs/MarketApi.md
rename to clients/web3-wallet/docs/GeneralDataApi.md
index e0e0e40..9ce1919 100644
--- a/clients/web3-wallet/docs/MarketApi.md
+++ b/clients/web3-wallet/docs/GeneralDataApi.md
@@ -1,21 +1,22 @@
-# MarketApi
+# GeneralDataApi
All URIs are relative to *https://web3.binance.com/build*
| Method | HTTP request | Description |
|------------- | ------------- | -------------|
-| [**getCandles**](MarketApi.md#getCandles) | **GET** /api/v1/dex/market/candles | Get Candles |
-| [**getHoldersRanking**](MarketApi.md#getHoldersRanking) | **GET** /api/v1/dex/market/token/holder | Get Holders Ranking |
-| [**getHotTokenList**](MarketApi.md#getHotTokenList) | **GET** /api/v1/dex/market/token/hot-token | Get Hot Token List |
-| [**getSupportedChains**](MarketApi.md#getSupportedChains) | **GET** /api/v1/dex/market/supported/chain | Get Supported Chains |
-| [**getTokenAdvancedInfo**](MarketApi.md#getTokenAdvancedInfo) | **GET** /api/v1/dex/market/token/advanced-info | Get Token Advanced Info |
-| [**getTokenBasicInfo**](MarketApi.md#getTokenBasicInfo) | **POST** /api/v1/dex/market/token/basic-info | Get Token Basic Info |
-| [**getTokenPrice**](MarketApi.md#getTokenPrice) | **POST** /api/v1/dex/market/price | Get Token Price |
-| [**getTokenTrades**](MarketApi.md#getTokenTrades) | **GET** /api/v1/dex/market/trades | Get Token Trades |
-| [**getTokenTradingInfo**](MarketApi.md#getTokenTradingInfo) | **POST** /api/v1/dex/market/price-info | Get Token Trading Info |
-| [**getTopLiquidityPools**](MarketApi.md#getTopLiquidityPools) | **GET** /api/v1/dex/market/token/top-liquidity | Get Top Liquidity Pools |
-| [**getTopTraders**](MarketApi.md#getTopTraders) | **GET** /api/v1/dex/market/token/top-trader | Get Top Traders |
-| [**searchToken**](MarketApi.md#searchToken) | **GET** /api/v1/dex/market/token/search | Search Token |
+| [**getCandles**](GeneralDataApi.md#getCandles) | **GET** /api/v1/dex/market/candles | Get Candles |
+| [**getHoldersRanking**](GeneralDataApi.md#getHoldersRanking) | **GET** /api/v1/dex/market/token/holder | Get Holders Ranking |
+| [**getHotTokenList**](GeneralDataApi.md#getHotTokenList) | **GET** /api/v1/dex/market/token/hot-token | Get Hot Token List |
+| [**getSupportedChains**](GeneralDataApi.md#getSupportedChains) | **GET** /api/v1/dex/market/supported/chain | Get Supported Chains |
+| [**getTokenAdvancedInfo**](GeneralDataApi.md#getTokenAdvancedInfo) | **GET** /api/v1/dex/market/token/advanced-info | Get Token Advanced Info |
+| [**getTokenBasicInfo**](GeneralDataApi.md#getTokenBasicInfo) | **POST** /api/v1/dex/market/token/basic-info | Get Token Basic Info |
+| [**getTokenDevInfo**](GeneralDataApi.md#getTokenDevInfo) | **GET** /api/v1/dex/market/memepump/tokenDevInfo | Get Token Dev Info |
+| [**getTokenPrice**](GeneralDataApi.md#getTokenPrice) | **POST** /api/v1/dex/market/price | Get Token Price |
+| [**getTokenTrades**](GeneralDataApi.md#getTokenTrades) | **GET** /api/v1/dex/market/trades | Get Token Trades |
+| [**getTokenTradingInfo**](GeneralDataApi.md#getTokenTradingInfo) | **POST** /api/v1/dex/market/price-info | Get Token Trading Info |
+| [**getTopLiquidityPools**](GeneralDataApi.md#getTopLiquidityPools) | **GET** /api/v1/dex/market/token/top-liquidity | Get Top Liquidity Pools |
+| [**getTopTraders**](GeneralDataApi.md#getTopTraders) | **GET** /api/v1/dex/market/token/top-trader | Get Top Traders |
+| [**searchToken**](GeneralDataApi.md#searchToken) | **GET** /api/v1/dex/market/token/search | Search Token |
@@ -33,14 +34,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
String tokenContractAddress = "0xdac17f958d2ee523a2206206994597c13d831ec7"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -60,7 +61,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getCandles");
+ System.err.println("Exception when calling GeneralDataApi#getCandles");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -119,14 +120,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier.
String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -140,7 +141,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getHoldersRanking");
+ System.err.println("Exception when calling GeneralDataApi#getHoldersRanking");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -183,7 +184,7 @@ No authorization required
# **getHotTokenList**
-> GetHotTokenListResponse getHotTokenList().recvWindow(recvWindow).nonce(nonce).binanceChainId(binanceChainId).rankBy(rankBy).rankingTimeFrame(rankingTimeFrame).priceChangePercentMin(priceChangePercentMin).priceChangePercentMax(priceChangePercentMax).volumeMin(volumeMin).volumeMax(volumeMax).txsMin(txsMin).txsMax(txsMax).marketCapMin(marketCapMin).marketCapMax(marketCapMax).liquidityMin(liquidityMin).liquidityMax(liquidityMax).devHoldingPercentMin(devHoldingPercentMin).devHoldingPercentMax(devHoldingPercentMax).inflowUsdMin(inflowUsdMin).inflowUsdMax(inflowUsdMax).holdersMin(holdersMin).holdersMax(holdersMax).bnHolderCountMin(bnHolderCountMin).bnHolderCountMax(bnHolderCountMax).top10HoldingPercentMin(top10HoldingPercentMin).top10HoldingPercentMax(top10HoldingPercentMax).sniperHoldingPercentMin(sniperHoldingPercentMin).sniperHoldingPercentMax(sniperHoldingPercentMax).smartMoneyHoldingPercentMin(smartMoneyHoldingPercentMin).smartMoneyHoldingPercentMax(smartMoneyHoldingPercentMax).kolHoldingPercentMin(kolHoldingPercentMin).kolHoldingPercentMax(kolHoldingPercentMax).proHoldingPercentMin(proHoldingPercentMin).proHoldingPercentMax(proHoldingPercentMax).freshWalletHoldingPercentMin(freshWalletHoldingPercentMin).freshWalletHoldingPercentMax(freshWalletHoldingPercentMax).insiderHoldingPercentMin(insiderHoldingPercentMin).insiderHoldingPercentMax(insiderHoldingPercentMax).bundlerHoldingPercentMin(bundlerHoldingPercentMin).bundlerHoldingPercentMax(bundlerHoldingPercentMax).devCreatedTokenCountMin(devCreatedTokenCountMin).devCreatedTokenCountMax(devCreatedTokenCountMax).devMigratedTokenCountMin(devMigratedTokenCountMin).devMigratedTokenCountMax(devMigratedTokenCountMax).devMigratedTokenPercentMin(devMigratedTokenPercentMin).devMigratedTokenPercentMax(devMigratedTokenPercentMax).isDevSoldAll(isDevSoldAll).isDevBurned(isDevBurned).isMint(isMint).isFreeze(isFreeze).isHideWashTradingTokens(isHideWashTradingTokens).isHideDevWashTradingTokens(isHideDevWashTradingTokens).isHideInternalWashTradingTokens(isHideInternalWashTradingTokens).pageId(pageId).size(size).execute();
+> GetHotTokenListResponse getHotTokenList(binanceChainId).recvWindow(recvWindow).nonce(nonce).rankBy(rankBy).rankingTimeFrame(rankingTimeFrame).priceChangePercentMin(priceChangePercentMin).priceChangePercentMax(priceChangePercentMax).volumeMin(volumeMin).volumeMax(volumeMax).txsMin(txsMin).txsMax(txsMax).marketCapMin(marketCapMin).marketCapMax(marketCapMax).liquidityMin(liquidityMin).liquidityMax(liquidityMax).devHoldingPercentMin(devHoldingPercentMin).devHoldingPercentMax(devHoldingPercentMax).inflowUsdMin(inflowUsdMin).inflowUsdMax(inflowUsdMax).holdersMin(holdersMin).holdersMax(holdersMax).bnHolderCountMin(bnHolderCountMin).bnHolderCountMax(bnHolderCountMax).top10HoldingPercentMin(top10HoldingPercentMin).top10HoldingPercentMax(top10HoldingPercentMax).sniperHoldingPercentMin(sniperHoldingPercentMin).sniperHoldingPercentMax(sniperHoldingPercentMax).smartMoneyHoldingPercentMin(smartMoneyHoldingPercentMin).smartMoneyHoldingPercentMax(smartMoneyHoldingPercentMax).kolHoldingPercentMin(kolHoldingPercentMin).kolHoldingPercentMax(kolHoldingPercentMax).proHoldingPercentMin(proHoldingPercentMin).proHoldingPercentMax(proHoldingPercentMax).freshWalletHoldingPercentMin(freshWalletHoldingPercentMin).freshWalletHoldingPercentMax(freshWalletHoldingPercentMax).insiderHoldingPercentMin(insiderHoldingPercentMin).insiderHoldingPercentMax(insiderHoldingPercentMax).bundlerHoldingPercentMin(bundlerHoldingPercentMin).bundlerHoldingPercentMax(bundlerHoldingPercentMax).devCreatedTokenCountMin(devCreatedTokenCountMin).devCreatedTokenCountMax(devCreatedTokenCountMax).devMigratedTokenCountMin(devMigratedTokenCountMin).devMigratedTokenCountMax(devMigratedTokenCountMax).devMigratedTokenPercentMin(devMigratedTokenPercentMin).devMigratedTokenPercentMax(devMigratedTokenPercentMax).isDevSoldAll(isDevSoldAll).isDevBurned(isDevBurned).isMint(isMint).isFreeze(isFreeze).isHideWashTradingTokens(isHideWashTradingTokens).isHideDevWashTradingTokens(isHideDevWashTradingTokens).isHideInternalWashTradingTokens(isHideInternalWashTradingTokens).pageId(pageId).size(size).execute();
Get Hot Token List
@@ -196,17 +197,17 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
+ String binanceChainId = "1"; // String | Chain identifier. Single value only.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
- String binanceChainId = "1"; // String | Chain identifier. Single value only. Omit to return mixed results across all chains.
RankBy rankBy = RankBy.fromValue("1"); // RankBy | Ranking field. 1=price, 2=price change, 3=transactions, 4=volume, 5=market cap, 6=liquidity, 7=creation time, 8=holders, 9=Binance MPC wallet holders, 10=net inflow.
RankingTimeFrame rankingTimeFrame = RankingTimeFrame.fromValue("1"); // RankingTimeFrame | Data time range. 1=1 min, 2=5 min, 3=1 hour, 4=4 hours, 5=24 hours. Default 1 hour.
String priceChangePercentMin = "5"; // String | Minimum price change filter. \"5\" means 5%.
@@ -259,10 +260,9 @@ public class Example {
Integer pageId = 1; // Integer | Pagination identifier. Do not pass on the first request; pass the page value from the previous response to get the next page.
Integer size = 100; // Integer | Page size. Maximum 100. Defaults to 100.
try {
- GetHotTokenListResponse result = apiInstance.getHotTokenList()
+ GetHotTokenListResponse result = apiInstance.getHotTokenList(binanceChainId)
.recvWindow(recvWindow)
.nonce(nonce)
- .binanceChainId(binanceChainId)
.rankBy(rankBy)
.rankingTimeFrame(rankingTimeFrame)
.priceChangePercentMin(priceChangePercentMin)
@@ -317,7 +317,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getHotTokenList");
+ System.err.println("Exception when calling GeneralDataApi#getHotTokenList");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -331,9 +331,9 @@ public class Example {
| Name | Type | Description | Notes |
|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Chain identifier. Single value only. | |
| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
-| **binanceChainId** | **String**| Chain identifier. Single value only. Omit to return mixed results across all chains. | [optional] |
| **rankBy** | [**RankBy**](.md)| Ranking field. 1=price, 2=price change, 3=transactions, 4=volume, 5=market cap, 6=liquidity, 7=creation time, 8=holders, 9=Binance MPC wallet holders, 10=net inflow. | [optional] [enum: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10] |
| **rankingTimeFrame** | [**RankingTimeFrame**](.md)| Data time range. 1=1 min, 2=5 min, 3=1 hour, 4=4 hours, 5=24 hours. Default 1 hour. | [optional] [default to 3] [enum: 1, 2, 3, 4, 5] |
| **priceChangePercentMin** | **String**| Minimum price change filter. \"5\" means 5%. | [optional] |
@@ -422,14 +422,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
try {
@@ -439,7 +439,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getSupportedChains");
+ System.err.println("Exception when calling GeneralDataApi#getSupportedChains");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -492,14 +492,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier.
String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -511,7 +511,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTokenAdvancedInfo");
+ System.err.println("Exception when calling GeneralDataApi#getTokenAdvancedInfo");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -566,14 +566,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier.
String tokenContractAddress = "0xdac17f958d2ee523a2206206994597c13d831ec7"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -585,7 +585,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTokenBasicInfo");
+ System.err.println("Exception when calling GeneralDataApi#getTokenBasicInfo");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -626,6 +626,80 @@ No authorization required
| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+# **getTokenDevInfo**
+> GetTokenDevInfoResponse getTokenDevInfo(binanceChainId, tokenContractAddress).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get Token Dev Info
+
+Return developer profile for a token, including historical token launch stats, current holding percentage, and initial funding source.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
+ String binanceChainId = "CT_501"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String tokenContractAddress = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; // String | Token contract address. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive).
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ try {
+ GetTokenDevInfoResponse result = apiInstance.getTokenDevInfo(binanceChainId, tokenContractAddress)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling GeneralDataApi#getTokenDevInfo");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **tokenContractAddress** | **String**| Token contract address. EVM chains accept lowercase 42-character hex addresses; Solana accepts base58 addresses (case-sensitive). | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+
+### Return type
+
+[**GetTokenDevInfoResponse**](GetTokenDevInfoResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Token dev info returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
# **getTokenPrice**
> GetTokenPriceResponse getTokenPrice().recvWindow(recvWindow).nonce(nonce).execute();
@@ -641,14 +715,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
try {
@@ -658,7 +732,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTokenPrice");
+ System.err.println("Exception when calling GeneralDataApi#getTokenPrice");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -712,14 +786,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier.
String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -739,7 +813,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTokenTrades");
+ System.err.println("Exception when calling GeneralDataApi#getTokenTrades");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -798,14 +872,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
try {
@@ -815,7 +889,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTokenTradingInfo");
+ System.err.println("Exception when calling GeneralDataApi#getTokenTradingInfo");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -869,14 +943,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier.
String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -888,7 +962,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTopLiquidityPools");
+ System.err.println("Exception when calling GeneralDataApi#getTopLiquidityPools");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -943,14 +1017,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String binanceChainId = "1"; // String | Unique chain identifier.
String tokenContractAddress = "0x6982508145454ce325ddbe47a25d4ec3d2311933"; // String | Token contract address.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -964,7 +1038,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#getTopTraders");
+ System.err.println("Exception when calling GeneralDataApi#getTopTraders");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
@@ -1020,14 +1094,14 @@ import com.binance.connector.client.web3_wallet.ApiClient;
import com.binance.connector.client.web3_wallet.ApiException;
import com.binance.connector.client.web3_wallet.Configuration;
import com.binance.connector.client.web3_wallet.models.*;
-import com.binance.connector.client.web3_wallet.rest.api.MarketApi;
+import com.binance.connector.client.web3_wallet.rest.api.GeneralDataApi;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
defaultClient.setBasePath("https://web3.binance.com/build");
- MarketApi apiInstance = new MarketApi(defaultClient);
+ GeneralDataApi apiInstance = new GeneralDataApi(defaultClient);
String chains = "1,56,CT_501"; // String | List of chain IDs to search, comma-separated.
String search = "USDT"; // String | Search keyword. Can be a token address or token symbol.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
@@ -1039,7 +1113,7 @@ public class Example {
.execute();
System.out.println(result);
} catch (ApiException e) {
- System.err.println("Exception when calling MarketApi#searchToken");
+ System.err.println("Exception when calling GeneralDataApi#searchToken");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
diff --git a/clients/web3-wallet/docs/GetAddressPnLForSpecificTokenResponse.md b/clients/web3-wallet/docs/GetAddressPnLForSpecificTokenResponse.md
new file mode 100644
index 0000000..ebcc07e
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPnLForSpecificTokenResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetAddressPnLForSpecificTokenResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetAddressPnLForSpecificTokenResponseData**](GetAddressPnLForSpecificTokenResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressPnLForSpecificTokenResponseData.md b/clients/web3-wallet/docs/GetAddressPnLForSpecificTokenResponseData.md
new file mode 100644
index 0000000..c19c0f7
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPnLForSpecificTokenResponseData.md
@@ -0,0 +1,28 @@
+
+
+# GetAddressPnLForSpecificTokenResponseData
+
+Token latest PnL details.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**realizedPnlUsd** | **String** | Cumulative realized PnL for this token, denominated in USD. Positive means profit, negative means loss. | [optional] |
+|**realizedPnlPercent** | **String** | Realized PnL percentage. No percent sign included. | [optional] |
+|**buyTxVolume** | **String** | Cumulative buy spend for this token, denominated in USD. | [optional] |
+|**buyAmount** | **String** | Cumulative buy quantity (token units). | [optional] |
+|**buyTxCount** | **String** | Number of buy transactions. | [optional] |
+|**sellTxVolume** | **String** | Cumulative sell proceeds for this token, denominated in USD. | [optional] |
+|**sellAmount** | **String** | Cumulative sell quantity (token units). | [optional] |
+|**sellTxCount** | **String** | Number of sell transactions. | [optional] |
+|**buyAvgPrice** | **String** | Average buy price, denominated in USD. | [optional] |
+|**sellAvgPrice** | **String** | Average sell price, denominated in USD. | [optional] |
+|**tokenBalanceUsd** | **String** | Current market value of the address's holding in this token, denominated in USD. Returns \"0\" when fully sold. | [optional] |
+|**tokenBalanceAmount** | **String** | Current holding amount (token units). Returns \"0\" when fully sold. | [optional] |
+|**maxBalanceAmount** | **String** | Maximum historical holding amount (token units). | [optional] |
+|**holdingDuration** | **String** | Cumulative holding duration in milliseconds. Counts only actual holding periods; gaps between sell and re-buy are excluded. If still holding, counts up to the current time. | [optional] |
+|**isPnlSupported** | **Boolean** | Whether PnL calculation is meaningful for this token. true=supported; false=not supported. Returns false for stablecoins (USDT/USDC/DAI etc.), native tokens (ETH/BNB/SOL etc.), and wrapped tokens (WETH/WBNB/WSOL etc.). Returns true for regular trading tokens. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponse.md b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponse.md
new file mode 100644
index 0000000..cd36c0a
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetAddressPortfolioOverviewResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetAddressPortfolioOverviewResponseData**](GetAddressPortfolioOverviewResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseData.md b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseData.md
new file mode 100644
index 0000000..c40928b
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseData.md
@@ -0,0 +1,27 @@
+
+
+# GetAddressPortfolioOverviewResponseData
+
+Address portfolio overview.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**realizedPnlUsd** | **String** | Total realized PnL within the time frame, denominated in USD. Positive means profit, negative means loss. | [optional] |
+|**realizedPnlPercent** | **String** | Realized PnL percentage within the time frame. \"16.44\" means +16.44%. No percent sign included. | [optional] |
+|**dailyPnl** | [**List<GetAddressPortfolioOverviewResponseDataDailyPnlInner>**](GetAddressPortfolioOverviewResponseDataDailyPnlInner.md) | Daily realized PnL breakdown, sorted by date descending (most recent first). Number of entries matches the timeFrame. | [optional] |
+|**winRate** | **String** | Win rate within the time frame. \"61.11\" means 61.11%. No percent sign included. | [optional] |
+|**tokenCountByPnlPercent** | [**GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent**](GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent.md) | | [optional] |
+|**buyTxCount** | **String** | Number of buy transactions within the time frame. | [optional] |
+|**sellTxCount** | **String** | Number of sell transactions within the time frame. | [optional] |
+|**totalTokenCount** | **String** | Total number of distinct tokens traded within the time frame. | [optional] |
+|**buyTxVolume** | **String** | Total buy volume within the time frame, denominated in USD. | [optional] |
+|**sellTxVolume** | **String** | Total sell volume within the time frame, denominated in USD. | [optional] |
+|**avgBuyValueUsd** | **String** | Average buy value per transaction within the time frame, denominated in USD. | [optional] |
+|**top3PnlTokenSumUsd** | **String** | Total realized PnL of the top 3 profit tokens, denominated in USD. | [optional] |
+|**top3PnlTokenPercent** | **String** | Percentage of total realized PnL contributed by the top 3 profit tokens. No percent sign included. | [optional] |
+|**topPnlTokenList** | [**List<GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner>**](GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner.md) | Top 3 tokens by realized PnL. Returns fewer items if fewer than 3 tokens were traded. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataDailyPnlInner.md b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataDailyPnlInner.md
new file mode 100644
index 0000000..449ed41
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataDailyPnlInner.md
@@ -0,0 +1,14 @@
+
+
+# GetAddressPortfolioOverviewResponseDataDailyPnlInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**date** | **String** | Date in YYYY-MM-DD format. | [optional] |
+|**pnlUsd** | **String** | Realized PnL for this day, denominated in USD. Positive means profit, negative means loss. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent.md b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent.md
new file mode 100644
index 0000000..2fe87c0
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent.md
@@ -0,0 +1,19 @@
+
+
+# GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent
+
+Token count breakdown by realized PnL percentage range.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**over500Percent** | **String** | Number of tokens with realized PnL ≥500%. | [optional] |
+|**from200To500Percent** | **String** | Number of tokens with realized PnL in [200%, 500%). | [optional] |
+|**from50To200Percent** | **String** | Number of tokens with realized PnL in [50%, 200%). | [optional] |
+|**zeroTo50Percent** | **String** | Number of tokens with realized PnL in [0%, 50%). | [optional] |
+|**zeroToMinus50Percent** | **String** | Number of tokens with realized PnL in [-50%, 0%). | [optional] |
+|**overMinus50Percent** | **String** | Number of tokens with realized PnL < -50%. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner.md b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner.md
new file mode 100644
index 0000000..0d57a2a
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner.md
@@ -0,0 +1,16 @@
+
+
+# GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tokenContractAddress** | **String** | Token contract address. EVM addresses are lowercase; Solana addresses are case-sensitive. | [optional] |
+|**tokenSymbol** | **String** | Token symbol. | [optional] |
+|**tokenPnLUsd** | **String** | Realized PnL for this token, denominated in USD. Positive means profit, negative means loss. | [optional] |
+|**tokenPnLPercent** | **String** | Realized PnL percentage for this token. No percent sign included. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressRecentPnLResponse.md b/clients/web3-wallet/docs/GetAddressRecentPnLResponse.md
new file mode 100644
index 0000000..f048403
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressRecentPnLResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetAddressRecentPnLResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetAddressRecentPnLResponseData**](GetAddressRecentPnLResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressRecentPnLResponseData.md b/clients/web3-wallet/docs/GetAddressRecentPnLResponseData.md
new file mode 100644
index 0000000..e0f0f65
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressRecentPnLResponseData.md
@@ -0,0 +1,15 @@
+
+
+# GetAddressRecentPnLResponseData
+
+Paginated PnL list.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**cursor** | **String** | Pagination cursor for the next page. Empty string when no more data. | [optional] |
+|**pnlList** | [**List<GetAddressRecentPnLResponseDataPnlListInner>**](GetAddressRecentPnLResponseDataPnlListInner.md) | PnL records sorted by lastActiveTimestamp descending. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressRecentPnLResponseDataPnlListInner.md b/clients/web3-wallet/docs/GetAddressRecentPnLResponseDataPnlListInner.md
new file mode 100644
index 0000000..256d9f9
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressRecentPnLResponseDataPnlListInner.md
@@ -0,0 +1,27 @@
+
+
+# GetAddressRecentPnLResponseDataPnlListInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier. | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. EVM addresses are lowercase; Solana addresses are case-sensitive. | [optional] |
+|**tokenSymbol** | **String** | Token symbol. | [optional] |
+|**lastActiveTimestamp** | **String** | Timestamp of the last transaction for this token, Unix millisecond timestamp. | [optional] |
+|**realizedPnlUsd** | **String** | Realized PnL for this token, denominated in USD. Positive means profit, negative means loss. | [optional] |
+|**realizedPnlPercent** | **String** | Realized PnL percentage for this token. No percent sign included. | [optional] |
+|**tokenBalanceUsd** | **String** | Current market value of the address's holding in this token, denominated in USD. | [optional] |
+|**tokenBalanceAmount** | **String** | Current holding amount of this token (token units). | [optional] |
+|**tokenPositionDuration** | [**GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration**](GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration.md) | | [optional] |
+|**buyTxCount** | **String** | Number of buy transactions for this token. | [optional] |
+|**buyTxVolume** | **String** | Total buy spend for this token, denominated in USD. | [optional] |
+|**buyAvgPrice** | **String** | Average buy price for this token, denominated in USD. | [optional] |
+|**sellTxCount** | **String** | Number of sell transactions for this token. | [optional] |
+|**sellTxVolume** | **String** | Total sell proceeds for this token, denominated in USD. | [optional] |
+|**sellAvgPrice** | **String** | Average sell price for this token, denominated in USD. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration.md b/clients/web3-wallet/docs/GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration.md
new file mode 100644
index 0000000..c84e36e
--- /dev/null
+++ b/clients/web3-wallet/docs/GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration.md
@@ -0,0 +1,14 @@
+
+
+# GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration
+
+Holding duration information for this token.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**holdingTimestamp** | **String** | Timestamp of the first buy for this token, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetAggregatedQuoteResponseDataInner.md b/clients/web3-wallet/docs/GetAggregatedQuoteResponseDataInner.md
index 75a1423..fc926ef 100644
--- a/clients/web3-wallet/docs/GetAggregatedQuoteResponseDataInner.md
+++ b/clients/web3-wallet/docs/GetAggregatedQuoteResponseDataInner.md
@@ -19,6 +19,9 @@
|**fromToken** | [**GetAggregatedQuoteResponseDataInnerFromToken**](GetAggregatedQuoteResponseDataInnerFromToken.md) | | [optional] |
|**toToken** | [**GetAggregatedQuoteResponseDataInnerToToken**](GetAggregatedQuoteResponseDataInnerToToken.md) | | [optional] |
|**dexRouterList** | [**List<GetAggregatedQuoteResponseDataInnerDexRouterListInner>**](GetAggregatedQuoteResponseDataInnerDexRouterListInner.md) | Routing path segments. Each segment corresponds to one hop on one DEX protocol; multi-DEX hops are flattened. | [optional] |
+|**executionMode** | **String** | Execution mode for this route. `SWAP` = standard on-chain swap (sign the `tx` object from `/swap` and broadcast). `RFQ` = signed order flow (sign `rfq.typedDataToSign` from `/swap` with EIP-712, submit via `POST /order/submit`, poll `GET /order/{orderId}`). Equity / RWA tokens always return `RFQ`. | [optional] |
+|**approveTarget** | **String** | The spender contract address the backend will encode into the approve calldata for this route. To obtain that calldata, call `/approve-transaction` with `vendor=<vendorName>` (the string name, e.g. `\"PcsXRfq\"`) — the backend resolves the spender address internally from the vendor name. This field is provided for informational purposes only (e.g. to call ERC-20 `approve()` directly without going through `/approve-transaction`). Null when no approval is needed (e.g. native-token swap or already approved). | [optional] |
+|**isBest** | **Boolean** | Whether this route has the highest `toTokenAmount` among all routes returned in this response. At most one route per response has `isBest=true`. | [optional] |
diff --git a/clients/web3-wallet/docs/GetDexTradeHistoryResponse.md b/clients/web3-wallet/docs/GetDexTradeHistoryResponse.md
new file mode 100644
index 0000000..6b4ec47
--- /dev/null
+++ b/clients/web3-wallet/docs/GetDexTradeHistoryResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetDexTradeHistoryResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetDexTradeHistoryResponseData**](GetDexTradeHistoryResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetDexTradeHistoryResponseData.md b/clients/web3-wallet/docs/GetDexTradeHistoryResponseData.md
new file mode 100644
index 0000000..341250b
--- /dev/null
+++ b/clients/web3-wallet/docs/GetDexTradeHistoryResponseData.md
@@ -0,0 +1,15 @@
+
+
+# GetDexTradeHistoryResponseData
+
+Paginated DEX transaction list.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**cursor** | **String** | Pagination cursor for the next page. Empty string when no more data. | [optional] |
+|**transactionList** | [**List<GetDexTradeHistoryResponseDataTransactionListInner>**](GetDexTradeHistoryResponseDataTransactionListInner.md) | DEX transaction records sorted by time descending. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetDexTradeHistoryResponseDataTransactionListInner.md b/clients/web3-wallet/docs/GetDexTradeHistoryResponseDataTransactionListInner.md
new file mode 100644
index 0000000..199b913
--- /dev/null
+++ b/clients/web3-wallet/docs/GetDexTradeHistoryResponseDataTransactionListInner.md
@@ -0,0 +1,23 @@
+
+
+# GetDexTradeHistoryResponseDataTransactionListInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**type** | **String** | Trade type. 1=Buy, 2=Sell. | [optional] |
+|**binanceChainId** | **String** | Unique chain identifier. | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. EVM addresses are lowercase; Solana addresses are case-sensitive. | [optional] |
+|**tokenSymbol** | **String** | Token symbol. | [optional] |
+|**valueUsd** | **String** | Transaction value, denominated in USD. | [optional] |
+|**amount** | **String** | Token quantity involved in this transaction (token units). | [optional] |
+|**price** | **String** | Execution price of this transaction, denominated in USD. | [optional] |
+|**marketCap** | **String** | Token market cap at the time of this transaction, denominated in USD. | [optional] |
+|**txHash** | **String** | On-chain transaction hash. | [optional] |
+|**chainLogoUrl** | **String** | Chain logo image URL. | [optional] |
+|**time** | **String** | Transaction on-chain time, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetGasLimitRequest.md b/clients/web3-wallet/docs/GetGasLimitRequest.md
index 140406d..2a05709 100644
--- a/clients/web3-wallet/docs/GetGasLimitRequest.md
+++ b/clients/web3-wallet/docs/GetGasLimitRequest.md
@@ -7,9 +7,10 @@
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
-|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
-|**evmTx** | [**GetGasLimitRequestEvmTx**](GetGasLimitRequestEvmTx.md) | | [optional] |
-|**solTx** | [**GetGasLimitRequestSolTx**](GetGasLimitRequestSolTx.md) | | [optional] |
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana, \"CT_195\"=Tron). Provide `evmTx` for EVM chains, `solTx` for Solana, or `tronTx` for Tron — exactly one must be present. Note: `evmTx`, `solTx`, and `tronTx` are marked required in this schema for rendering purposes only; in practice supply exactly one matching `binanceChainId`. | |
+|**evmTx** | [**GetGasLimitRequestEvmTx**](GetGasLimitRequestEvmTx.md) | | |
+|**solTx** | [**GetGasLimitRequestSolTx**](GetGasLimitRequestSolTx.md) | | |
+|**tronTx** | [**GetGasLimitRequestTronTx**](GetGasLimitRequestTronTx.md) | | |
diff --git a/clients/web3-wallet/docs/GetGasLimitRequestEvmTx.md b/clients/web3-wallet/docs/GetGasLimitRequestEvmTx.md
index f88b551..9a9858f 100644
--- a/clients/web3-wallet/docs/GetGasLimitRequestEvmTx.md
+++ b/clients/web3-wallet/docs/GetGasLimitRequestEvmTx.md
@@ -11,7 +11,7 @@ EVM transaction payload. Required when `binanceChainId` belongs to an EVM chain.
|**from** | **String** | Sender address. | |
|**to** | **String** | Destination address (contract or EOA). | |
|**value** | **String** | Native token amount in wei (integer string). Use \"0\" for ERC-20 transfers. | |
-|**data** | **String** | ABI-encoded calldata (hex). Optional when no contract call is involved. | [optional] |
+|**data** | **String** | ABI-encoded calldata (hex). Optional when no contract call is involved. | |
diff --git a/clients/web3-wallet/docs/GetGasLimitRequestTronTx.md b/clients/web3-wallet/docs/GetGasLimitRequestTronTx.md
new file mode 100644
index 0000000..aeef223
--- /dev/null
+++ b/clients/web3-wallet/docs/GetGasLimitRequestTronTx.md
@@ -0,0 +1,26 @@
+
+
+# GetGasLimitRequestTronTx
+
+Tron transaction payload. Required when `binanceChainId=CT_195`.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**from** | **String** | Sender address (base58check). | |
+|**txType** | [**TxTypeEnum**](#TxTypeEnum) | Tron contract type. `TRIGGER_SMART_CONTRACT` requires `triggerSmartContractParams`; `TRANSFER_CONTRACT` requires `transferContractParams`. | |
+|**triggerSmartContractParams** | [**GetGasLimitRequestTronTxTriggerSmartContractParams**](GetGasLimitRequestTronTxTriggerSmartContractParams.md) | | [optional] |
+|**transferContractParams** | [**GetGasLimitRequestTronTxTransferContractParams**](GetGasLimitRequestTronTxTransferContractParams.md) | | [optional] |
+
+
+
+## Enum: TxTypeEnum
+
+| Name | Value |
+|---- | -----|
+| TRIGGER_SMART_CONTRACT | "TRIGGER_SMART_CONTRACT" |
+| TRANSFER_CONTRACT | "TRANSFER_CONTRACT" |
+
+
+
diff --git a/clients/web3-wallet/docs/GetGasLimitRequestTronTxTransferContractParams.md b/clients/web3-wallet/docs/GetGasLimitRequestTronTxTransferContractParams.md
new file mode 100644
index 0000000..914d9a6
--- /dev/null
+++ b/clients/web3-wallet/docs/GetGasLimitRequestTronTxTransferContractParams.md
@@ -0,0 +1,15 @@
+
+
+# GetGasLimitRequestTronTxTransferContractParams
+
+Required when `txType=TRANSFER_CONTRACT`.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**toAddress** | **String** | Recipient address (base58check). | |
+|**amount** | **Long** | TRX amount in sun (1 TRX = 1_000_000 sun). | |
+
+
+
diff --git a/clients/web3-wallet/docs/GetGasLimitRequestTronTxTriggerSmartContractParams.md b/clients/web3-wallet/docs/GetGasLimitRequestTronTxTriggerSmartContractParams.md
new file mode 100644
index 0000000..4c0896b
--- /dev/null
+++ b/clients/web3-wallet/docs/GetGasLimitRequestTronTxTriggerSmartContractParams.md
@@ -0,0 +1,17 @@
+
+
+# GetGasLimitRequestTronTxTriggerSmartContractParams
+
+Required when `txType=TRIGGER_SMART_CONTRACT`.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**contractAddress** | **String** | Smart-contract address (base58check). | |
+|**data** | **String** | ABI-encoded calldata (hex, no `0x` prefix). | |
+|**callValue** | **Long** | Amount of TRX (in sun) to attach as `call_value`. | |
+|**feeLimitSun** | **Long** | Optional max fee the caller is willing to pay (in sun). If omitted, server default applies. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetGasLimitResponseData.md b/clients/web3-wallet/docs/GetGasLimitResponseData.md
index eb93989..5cf3563 100644
--- a/clients/web3-wallet/docs/GetGasLimitResponseData.md
+++ b/clients/web3-wallet/docs/GetGasLimitResponseData.md
@@ -2,12 +2,19 @@
# GetGasLimitResponseData
+Estimated gas limit. On Tron, the response additionally carries energy/bandwidth fields; non-applicable fields are returned as `null`.
## Properties
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
-|**gasLimit** | **String** | Estimated gas limit (EVM) or compute-unit ceiling (Solana), as an integer string. | [optional] |
+|**gasLimit** | **String** | Estimated gas limit (EVM), compute-unit ceiling (Solana), or fee limit in sun (Tron), as an integer string. | [optional] |
+|**energyRequired** | **String** | Energy consumed by the Tron transaction (integer string). Null on non-Tron chains. | [optional] |
+|**bandwidthRequired** | **String** | Bandwidth consumed by the Tron transaction (integer string). Null on non-Tron chains. | [optional] |
+|**freeEnergy** | **String** | Free energy available to the account on Tron (integer string). Null on non-Tron chains. | [optional] |
+|**freeBandwidth** | **String** | Free bandwidth available to the account on Tron (integer string). Null on non-Tron chains. | [optional] |
+|**energyFee** | **String** | Unit price of energy on Tron (sun per energy, integer string). Null on non-Tron chains. | [optional] |
+|**bandwidthFee** | **String** | Unit price of bandwidth on Tron (sun per byte, integer string). Null on non-Tron chains. | [optional] |
diff --git a/clients/web3-wallet/docs/GetLeaderboardResponse.md b/clients/web3-wallet/docs/GetLeaderboardResponse.md
new file mode 100644
index 0000000..d2cd1b5
--- /dev/null
+++ b/clients/web3-wallet/docs/GetLeaderboardResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetLeaderboardResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetLeaderboardResponseData**](GetLeaderboardResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetLeaderboardResponseData.md b/clients/web3-wallet/docs/GetLeaderboardResponseData.md
new file mode 100644
index 0000000..580801f
--- /dev/null
+++ b/clients/web3-wallet/docs/GetLeaderboardResponseData.md
@@ -0,0 +1,15 @@
+
+
+# GetLeaderboardResponseData
+
+Paginated leaderboard data.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**cursor** | **String** | Pagination cursor for the next page. Empty string when no more data. | [optional] |
+|**items** | [**List<GetLeaderboardResponseDataItemsInner>**](GetLeaderboardResponseDataItemsInner.md) | List of leaderboard wallet entries. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInner.md b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInner.md
new file mode 100644
index 0000000..e14dd00
--- /dev/null
+++ b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInner.md
@@ -0,0 +1,33 @@
+
+
+# GetLeaderboardResponseDataItemsInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**walletAddress** | **String** | Wallet address. | [optional] |
+|**walletName** | **String** | Wallet display name. Empty string when unavailable. | [optional] |
+|**walletLogoUrl** | **String** | Wallet avatar URL. Empty string when unavailable. | [optional] |
+|**walletTwitterUrl** | **String** | Associated Twitter/X profile URL. Empty string when unavailable. | [optional] |
+|**walletType** | **String** | Wallet type tags, comma-separated if multiple. 1=Smart Money, 2=KOL, 3=Hot List. Empty string when no tag applies. | [optional] |
+|**nativeTokenBalance** | **String** | Native token balance of this address on the queried chain. | [optional] |
+|**nativeTokenBalanceUsd** | **String** | Native token balance of this address, denominated in USD. | [optional] |
+|**realizedPnlUsd** | **String** | Cumulative realized PnL within the time frame, denominated in USD. Positive means profit, negative means loss. | [optional] |
+|**realizedPnlPercent** | **String** | Realized PnL percentage within the time frame. No percent sign included. | [optional] |
+|**dailyPnl** | [**List<GetLeaderboardResponseDataItemsInnerDailyPnlInner>**](GetLeaderboardResponseDataItemsInnerDailyPnlInner.md) | Daily realized PnL within the selected time frame, sorted by date descending. | [optional] |
+|**winRatePercent** | **String** | Win rate within the time frame. No percent sign included. | [optional] |
+|**txVolume** | **String** | Total transaction volume within the time frame, denominated in USD. Equals buyTxVolume + sellTxVolume. | [optional] |
+|**buyTxVolume** | **String** | Total buy volume within the time frame, denominated in USD. | [optional] |
+|**sellTxVolume** | **String** | Total sell volume within the time frame, denominated in USD. | [optional] |
+|**avgBuyValueUsd** | **String** | Average buy value per transaction within the time frame, denominated in USD. Returns \"0\" when no buy transactions. | [optional] |
+|**txs** | **String** | Total transaction count within the time frame. Equals buyTxCount + sellTxCount. | [optional] |
+|**buyTxCount** | **String** | Buy transaction count within the time frame. | [optional] |
+|**sellTxCount** | **String** | Sell transaction count within the time frame. | [optional] |
+|**topPnlTokenList** | [**List<GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner>**](GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner.md) | Top 3 tokens by realized PnL. Returns fewer items if fewer than 3 tokens were traded. | [optional] |
+|**tokenCountByPnlPercent** | [**GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent**](GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent.md) | | [optional] |
+|**lastActiveTimestamp** | **String** | Timestamp of the address's last trade, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerDailyPnlInner.md b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerDailyPnlInner.md
new file mode 100644
index 0000000..8734d09
--- /dev/null
+++ b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerDailyPnlInner.md
@@ -0,0 +1,14 @@
+
+
+# GetLeaderboardResponseDataItemsInnerDailyPnlInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**date** | **String** | Date in YYYY-MM-DD format. | [optional] |
+|**pnlUsd** | **String** | Realized PnL for this day, denominated in USD. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent.md b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent.md
new file mode 100644
index 0000000..0d2b96c
--- /dev/null
+++ b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent.md
@@ -0,0 +1,17 @@
+
+
+# GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent
+
+Token count breakdown by realized PnL percentage range within the time frame.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**above500Percent** | **String** | Number of tokens with realized PnL >500%. | [optional] |
+|**between0And500Percent** | **String** | Number of tokens with realized PnL in [0%, 500%]. | [optional] |
+|**betweenNeg50And0Percent** | **String** | Number of tokens with realized PnL in [-50%, 0%]. | [optional] |
+|**belowNeg50Percent** | **String** | Number of tokens with realized PnL < -50%. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner.md b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner.md
new file mode 100644
index 0000000..454d090
--- /dev/null
+++ b/clients/web3-wallet/docs/GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner.md
@@ -0,0 +1,17 @@
+
+
+# GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**tokenContractAddress** | **String** | Token contract address. EVM addresses are lowercase; Solana addresses are case-sensitive. | [optional] |
+|**tokenSymbol** | **String** | Token symbol. | [optional] |
+|**tokenLogoUrl** | **String** | Token logo URL. | [optional] |
+|**tokenPnLUsd** | **String** | Realized PnL for this token, denominated in USD. Positive means profit, negative means loss. | [optional] |
+|**tokenPnLPercent** | **String** | Realized PnL percentage for this token. No percent sign included. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetPortfolioSupportedChainsResponse.md b/clients/web3-wallet/docs/GetPortfolioSupportedChainsResponse.md
new file mode 100644
index 0000000..76133af
--- /dev/null
+++ b/clients/web3-wallet/docs/GetPortfolioSupportedChainsResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetPortfolioSupportedChainsResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**List<GetPortfolioSupportedChainsResponseDataInner>**](GetPortfolioSupportedChainsResponseDataInner.md) | List of supported blockchain networks. | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetPortfolioSupportedChainsResponseDataInner.md b/clients/web3-wallet/docs/GetPortfolioSupportedChainsResponseDataInner.md
new file mode 100644
index 0000000..ad113f3
--- /dev/null
+++ b/clients/web3-wallet/docs/GetPortfolioSupportedChainsResponseDataInner.md
@@ -0,0 +1,19 @@
+
+
+# GetPortfolioSupportedChainsResponseDataInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**name** | **String** | Full chain name. | [optional] |
+|**shortName** | **String** | Short chain name (uppercase). | [optional] |
+|**logoUrl** | **String** | Chain logo image URL. | [optional] |
+|**caseSensitive** | **Boolean** | Whether addresses on this chain are case-sensitive. true=case-sensitive (e.g. Solana), false=case-insensitive (e.g. EVM chains). | [optional] |
+|**nativeTokenSymbol** | **String** | Symbol of the chain's native asset (uppercase). | [optional] |
+|**nativeTokenDecimals** | **Integer** | Native token decimals. Display value = raw value / 10^nativeTokenDecimals. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRfqOrderStatusResponse.md b/clients/web3-wallet/docs/GetRfqOrderStatusResponse.md
new file mode 100644
index 0000000..5219127
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRfqOrderStatusResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetRfqOrderStatusResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetRfqOrderStatusResponseData**](GetRfqOrderStatusResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRfqOrderStatusResponseData.md b/clients/web3-wallet/docs/GetRfqOrderStatusResponseData.md
new file mode 100644
index 0000000..86aee27
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRfqOrderStatusResponseData.md
@@ -0,0 +1,20 @@
+
+
+# GetRfqOrderStatusResponseData
+
+Order status details.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**orderId** | **String** | Platform order ID. | [optional] |
+|**status** | **String** | Current order status. - **Terminal**: `FILLED` (settled on-chain), `FAILED` (settlement failed), `EXPIRED` (vendor could not settle before the order deadline), `CANCELLED` (cancelled by the user or vendor). - **Intermediate**: `PENDING_VENDOR` (forwarded to vendor, awaiting settlement), `PENDING_ONCHAIN` (vendor has broadcast the on-chain transaction, awaiting block confirmation). | [optional] |
+|**txHash** | **String** | On-chain transaction hash. Present only when `status=FILLED`. | [optional] |
+|**fromAmount** | **String** | Actual sell-token amount settled (smallest unit, integer string). Present when filled. | [optional] |
+|**toAmount** | **String** | Actual buy-token amount received (smallest unit, integer string). Present when filled. | [optional] |
+|**filledAt** | **Long** | Settlement timestamp (Unix epoch milliseconds). Present when filled. | [optional] |
+|**createdAt** | **Long** | Order creation timestamp (Unix epoch milliseconds). | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponse.md b/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponse.md
new file mode 100644
index 0000000..a8e1396
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetRwaTokenIssuancePlatformsResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | Status message. | [optional] |
+|**data** | [**List<GetRwaTokenIssuancePlatformsResponseDataInner>**](GetRwaTokenIssuancePlatformsResponseDataInner.md) | List of RWA token issuance platforms. | [optional] |
+|**timestamp** | **Long** | Server response time, Unix millisecond timestamp. | [optional] |
+|**success** | **Boolean** | Whether the request was successful. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponseDataInner.md b/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponseDataInner.md
new file mode 100644
index 0000000..165c79a
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponseDataInner.md
@@ -0,0 +1,17 @@
+
+
+# GetRwaTokenIssuancePlatformsResponseDataInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**platformId** | **String** | Unique platform identifier. Examples: ondo=Ondo Finance, bstock=bStocks. | [optional] |
+|**tickerCount** | **Integer** | Number of underlying assets corresponding to the RWA tokens. | [optional] |
+|**chainDistribution** | [**List<GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner>**](GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner.md) | RWA token distribution across chains. | [optional] |
+|**website** | **String** | Platform official website. Null when unavailable. | [optional] |
+|**logoUrl** | **String** | Platform logo URL. Null when unavailable. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner.md b/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner.md
new file mode 100644
index 0000000..e43f313
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner.md
@@ -0,0 +1,14 @@
+
+
+# GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**tokenCount** | **Integer** | Number of RWA tokens on this chain (the same underlying asset deployed on different chains is counted separately). | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenListResponse.md b/clients/web3-wallet/docs/GetRwaTokenListResponse.md
new file mode 100644
index 0000000..a78f2df
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenListResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetRwaTokenListResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | Status message. | [optional] |
+|**data** | [**List<GetRwaTokenListResponseDataInner>**](GetRwaTokenListResponseDataInner.md) | List of RWA tokenized assets. | [optional] |
+|**timestamp** | **Long** | Server response time, Unix millisecond timestamp. | [optional] |
+|**success** | **Boolean** | Whether the request was successful. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenListResponseDataInner.md b/clients/web3-wallet/docs/GetRwaTokenListResponseDataInner.md
new file mode 100644
index 0000000..988a531
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenListResponseDataInner.md
@@ -0,0 +1,31 @@
+
+
+# GetRwaTokenListResponseDataInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. | [optional] |
+|**platformId** | **String** | Unique platform identifier. | [optional] |
+|**assetType** | **Integer** | Asset type. 1=Stock, 2=Pre-IPO, 3=ETF. | [optional] |
+|**tokenName** | **String** | Token full name. | [optional] |
+|**tokenSymbol** | **String** | Token symbol. | [optional] |
+|**tokenLogoUrl** | **String** | Token logo URL. | [optional] |
+|**decimals** | **String** | Token decimals. | [optional] |
+|**underlyingTicker** | **String** | Underlying asset ticker symbol. | [optional] |
+|**underlyingName** | **String** | Underlying company English name. | [optional] |
+|**underlyingNameZh** | **String** | Underlying company Chinese name. Falls back to English if unavailable. | [optional] |
+|**tokenToShareRatio** | **String** | Token-to-share exchange ratio. E.g. \"1.003701\" means 1 token ≈ 1.003701 underlying shares. | [optional] |
+|**tags** | **List<String>** | Token tag array. Enum: alpha, communityRecognized, volumeSurge, volumePlunge. | [optional] |
+|**statusInfo** | [**GetRwaTokenListResponseDataInnerStatusInfo**](GetRwaTokenListResponseDataInnerStatusInfo.md) | | [optional] |
+|**tokenPrice** | **String** | On-chain token price (USD). | [optional] |
+|**referencePrice** | **String** | Underlying reference price (USD). A per-share converted price derived from the on-chain token price, not an official quote from the traditional stock market. | [optional] |
+|**volume24H** | **String** | 24-hour trading volume (USD). | [optional] |
+|**marketCap** | **String** | Market capitalization (USD). | [optional] |
+|**peRatioTTM** | **String** | Price-to-Earnings ratio (TTM). Null when unavailable. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenListResponseDataInnerStatusInfo.md b/clients/web3-wallet/docs/GetRwaTokenListResponseDataInnerStatusInfo.md
new file mode 100644
index 0000000..be606df
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenListResponseDataInnerStatusInfo.md
@@ -0,0 +1,19 @@
+
+
+# GetRwaTokenListResponseDataInnerStatusInfo
+
+Market status information.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**openState** | **Boolean** | Whether the underlying market is currently tradable. | [optional] |
+|**marketStatus** | **String** | Current market status: premarket, regular (normal hours), postmarket, overnight, closed, or pause (trading halt/circuit breaker). | [optional] |
+|**reasonCode** | **String** | Reason code when the market is not tradable (returned when openState=false). Market-level: MARKET_CLOSED (closed), MARKET_PAUSED (whole market paused), MARKET_MAINTENANCE (system maintenance). Asset-level: ASSET_PAUSED (single asset paused, incl. corporate actions — see reasonMsg), ASSET_LIMITED (single asset restricted but not paused, e.g. earnings window). Others: TRADING (normal), UNSUPPORTED (not supported). | [optional] |
+|**reasonMsg** | **String** | Human-readable reason when the market is not tradable. Common case e.g. \"Weekend or Holiday\". For ASSET_PAUSED (corporate actions): cash_dividend, stock_dividend, stock_split, merger, acquisition, spinoff, maintenance, corporate action. For ASSET_LIMITED: earnings. | [optional] |
+|**nextOpenTime** | **Long** | Expected next market open time, Unix millisecond timestamp. | [optional] |
+|**nextCloseTime** | **Long** | Expected next market close time, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenPriceResponse.md b/clients/web3-wallet/docs/GetRwaTokenPriceResponse.md
new file mode 100644
index 0000000..bc95606
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenPriceResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetRwaTokenPriceResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | Status message. | [optional] |
+|**data** | [**List<GetRwaTokenPriceResponseDataInner>**](GetRwaTokenPriceResponseDataInner.md) | List of token price data. | [optional] |
+|**timestamp** | **Long** | Server response time, Unix millisecond timestamp. | [optional] |
+|**success** | **Boolean** | Whether the request was successful. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaTokenPriceResponseDataInner.md b/clients/web3-wallet/docs/GetRwaTokenPriceResponseDataInner.md
new file mode 100644
index 0000000..c1b7a38
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaTokenPriceResponseDataInner.md
@@ -0,0 +1,18 @@
+
+
+# GetRwaTokenPriceResponseDataInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. | [optional] |
+|**platformId** | **String** | Unique platform identifier. | [optional] |
+|**tokenPrice** | **String** | On-chain token price (USD). | [optional] |
+|**referencePrice** | **String** | Underlying reference price (USD). A per-share converted price derived from the on-chain token price, not an official quote from the traditional stock market. | [optional] |
+|**tokenPriceUpdatedAt** | **Long** | Token price last updated time, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponse.md b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponse.md
new file mode 100644
index 0000000..fa75a53
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetRwaUnderlyingInfoResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | Status message. | [optional] |
+|**data** | [**GetRwaUnderlyingInfoResponseData**](GetRwaUnderlyingInfoResponseData.md) | | [optional] |
+|**timestamp** | **Long** | Server response time, Unix millisecond timestamp. | [optional] |
+|**success** | **Boolean** | Whether the request was successful. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseData.md b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseData.md
new file mode 100644
index 0000000..d97cad1
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseData.md
@@ -0,0 +1,22 @@
+
+
+# GetRwaUnderlyingInfoResponseData
+
+Underlying company information and protections.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. | [optional] |
+|**platformId** | **String** | Unique platform identifier. | [optional] |
+|**underlyingTicker** | **String** | Underlying asset ticker symbol. | [optional] |
+|**underlyingFullName** | **String** | Underlying asset full name. | [optional] |
+|**assetType** | **Integer** | Asset type. 1=Stock, 2=Pre-IPO, 3=ETF. | [optional] |
+|**tokenToShareRatio** | **String** | Token-to-share exchange ratio. E.g. \"1.003701\" means 1 token ≈ 1.003701 underlying shares. | [optional] |
+|**protections** | [**Map<String, GetRwaUnderlyingInfoResponseDataProtectionsValue>**](GetRwaUnderlyingInfoResponseDataProtectionsValue.md) | Investor protection mechanisms, keyed by mechanism type. Each entry includes whether it is supported and a related proof/report link. Known keys: dailyAttestationReport, monthlyAttestationReport, collateralReport. New keys may be added per platform. | [optional] |
+|**companyInfo** | [**GetRwaUnderlyingInfoResponseDataCompanyInfo**](GetRwaUnderlyingInfoResponseDataCompanyInfo.md) | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseDataCompanyInfo.md b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseDataCompanyInfo.md
new file mode 100644
index 0000000..b89337f
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseDataCompanyInfo.md
@@ -0,0 +1,20 @@
+
+
+# GetRwaUnderlyingInfoResponseDataCompanyInfo
+
+Underlying company information; for ETF type, returns fund company info (e.g. Invesco, iShares).
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**ceo** | **String** | CEO name. | [optional] |
+|**website** | **String** | Company official website. | [optional] |
+|**industry** | **String** | Industry (English). | [optional] |
+|**conceptsEn** | **List<String>** | Concept/sector tags (English). | [optional] |
+|**conceptsCn** | **List<String>** | Concept/sector tags (Chinese). | [optional] |
+|**descriptionEn** | **String** | Company description (English). | [optional] |
+|**descriptionZh** | **String** | Company description (Chinese). | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseDataProtectionsValue.md b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseDataProtectionsValue.md
new file mode 100644
index 0000000..8d685b6
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingInfoResponseDataProtectionsValue.md
@@ -0,0 +1,14 @@
+
+
+# GetRwaUnderlyingInfoResponseDataProtectionsValue
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**supported** | **Boolean** | Whether this protection is supported. | [optional] |
+|**url** | **String** | URL to related report or proof. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponse.md b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponse.md
new file mode 100644
index 0000000..2ee0b9e
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetRwaUnderlyingMarketDataResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | Status message. | [optional] |
+|**data** | [**GetRwaUnderlyingMarketDataResponseData**](GetRwaUnderlyingMarketDataResponseData.md) | | [optional] |
+|**timestamp** | **Long** | Server response time, Unix millisecond timestamp. | [optional] |
+|**success** | **Boolean** | Whether the request was successful. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseData.md b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseData.md
new file mode 100644
index 0000000..cd5141f
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseData.md
@@ -0,0 +1,19 @@
+
+
+# GetRwaUnderlyingMarketDataResponseData
+
+Underlying market data for the RWA token.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. | [optional] |
+|**platformId** | **String** | Unique platform identifier. | [optional] |
+|**assetType** | **Integer** | Asset type. 1=Stock, 2=Pre-IPO, 3=ETF. | [optional] |
+|**statusInfo** | [**GetRwaUnderlyingMarketDataResponseDataStatusInfo**](GetRwaUnderlyingMarketDataResponseDataStatusInfo.md) | | [optional] |
+|**marketData** | [**GetRwaUnderlyingMarketDataResponseDataMarketData**](GetRwaUnderlyingMarketDataResponseDataMarketData.md) | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseDataMarketData.md b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseDataMarketData.md
new file mode 100644
index 0000000..8d3d4e5
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseDataMarketData.md
@@ -0,0 +1,26 @@
+
+
+# GetRwaUnderlyingMarketDataResponseDataMarketData
+
+Underlying asset market data. Fields vary by asset type.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**referencePrice** | **String** | Underlying reference price (USD). A per-share converted price derived from the on-chain token price, not an official quote from the traditional stock market. | [optional] |
+|**high52W** | **String** | 52-week high price. Applicable to Stock and ETF only. | [optional] |
+|**low52W** | **String** | 52-week low price. Applicable to Stock and ETF only. | [optional] |
+|**volumeShares24H** | **String** | 24-hour trading volume in shares. | [optional] |
+|**avgDailyVolume1Y** | **String** | 1-year average daily volume. Applicable to Stock and ETF only. | [optional] |
+|**totalShares** | **String** | Total outstanding shares (Stock) or total units (ETF). Applicable to Stock and ETF only. | [optional] |
+|**marketCap** | **String** | Market capitalization (USD) for Stock/ETF, or implied total valuation for Pre-IPO. | [optional] |
+|**turnoverRate** | **String** | Turnover rate. \"23.81\" means 23.81%. Applicable to Stock and ETF only. | [optional] |
+|**amplitude** | **String** | Price amplitude (intraday). \"3.05\" means 3.05%, i.e. (intraday high − low) / previous close. Applicable to Stock and ETF only. | [optional] |
+|**peRatioTTM** | **String** | Price-to-Earnings ratio (TTM = Trailing Twelve Months, based on earnings of the most recent 12 months). Applicable to Stock only. | [optional] |
+|**pbRatio** | **String** | Price-to-Book ratio. Applicable to Stock only. | [optional] |
+|**dividendYield** | **String** | Dividend yield. \"0.85\" means 0.85%. Applicable to Stock and ETF only. | [optional] |
+|**latestDividend** | **String** | Latest dividend amount (USD). Applicable to Stock and ETF only. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseDataStatusInfo.md b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseDataStatusInfo.md
new file mode 100644
index 0000000..be597ff
--- /dev/null
+++ b/clients/web3-wallet/docs/GetRwaUnderlyingMarketDataResponseDataStatusInfo.md
@@ -0,0 +1,19 @@
+
+
+# GetRwaUnderlyingMarketDataResponseDataStatusInfo
+
+Market status information.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**openState** | **Boolean** | Whether the underlying market is currently tradable. | [optional] |
+|**marketStatus** | **String** | Current market status: premarket, regular (normal hours), postmarket, overnight, closed, or pause (trading halt/circuit breaker). | [optional] |
+|**reasonCode** | **String** | Reason code when the market is not tradable (returned when openState=false). Market-level: MARKET_CLOSED (closed), MARKET_PAUSED (whole market paused), MARKET_MAINTENANCE (system maintenance). Asset-level: ASSET_PAUSED (single asset paused, incl. corporate actions — see reasonMsg), ASSET_LIMITED (single asset restricted but not paused, e.g. earnings window). Others: TRADING (normal), UNSUPPORTED (not supported). | [optional] |
+|**reasonMsg** | **String** | Human-readable reason when the market is not tradable. Common case e.g. \"Weekend or Holiday\". For ASSET_PAUSED (corporate actions): cash_dividend, stock_dividend, stock_split, merger, acquisition, spinoff, maintenance, corporate action. For ASSET_LIMITED: earnings. | [optional] |
+|**nextOpenTime** | **Long** | Expected next market open time, Unix millisecond timestamp. | [optional] |
+|**nextCloseTime** | **Long** | Expected next market close time, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTokenDevInfoResponse.md b/clients/web3-wallet/docs/GetTokenDevInfoResponse.md
new file mode 100644
index 0000000..1294e1d
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTokenDevInfoResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetTokenDevInfoResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetTokenDevInfoResponseData**](GetTokenDevInfoResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTokenDevInfoResponseData.md b/clients/web3-wallet/docs/GetTokenDevInfoResponseData.md
new file mode 100644
index 0000000..49d5e7f
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTokenDevInfoResponseData.md
@@ -0,0 +1,15 @@
+
+
+# GetTokenDevInfoResponseData
+
+Token developer information.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**devLaunchedInfo** | [**GetTokenDevInfoResponseDataDevLaunchedInfo**](GetTokenDevInfoResponseDataDevLaunchedInfo.md) | | [optional] |
+|**devHoldingInfo** | [**GetTokenDevInfoResponseDataDevHoldingInfo**](GetTokenDevInfoResponseDataDevHoldingInfo.md) | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTokenDevInfoResponseDataDevHoldingInfo.md b/clients/web3-wallet/docs/GetTokenDevInfoResponseDataDevHoldingInfo.md
new file mode 100644
index 0000000..6f09854
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTokenDevInfoResponseDataDevHoldingInfo.md
@@ -0,0 +1,21 @@
+
+
+# GetTokenDevInfoResponseDataDevHoldingInfo
+
+Developer's current holding information for this token.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**devHoldingPercent** | **String** | Developer's current holding percentage for this token. No percent sign included. Empty string means fully sold. | [optional] |
+|**devAddress** | **String** | Developer (creator) wallet address. | [optional] |
+|**fundingSource** | **String** | Funding source address — the originator of the first inbound native-token transfer. Empty string when no inbound transfer is recorded. | [optional] |
+|**fundingSourceLabel** | **String** | Funding source name (e.g. exchange name). Empty string when unknown. | [optional] |
+|**fundingSourceHash** | **String** | Transaction hash of the first inbound native-token transfer. | [optional] |
+|**fundingSourceTime** | **String** | Timestamp of the first inbound native-token transfer, Unix millisecond timestamp. | [optional] |
+|**fundingSourceAmount** | **String** | Amount of the first inbound native-token transfer (native token units). | [optional] |
+|**devBalance** | **String** | Developer wallet's native token balance (e.g. SOL). Empty string when unavailable. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTokenDevInfoResponseDataDevLaunchedInfo.md b/clients/web3-wallet/docs/GetTokenDevInfoResponseDataDevLaunchedInfo.md
new file mode 100644
index 0000000..5db64bf
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTokenDevInfoResponseDataDevLaunchedInfo.md
@@ -0,0 +1,15 @@
+
+
+# GetTokenDevInfoResponseDataDevLaunchedInfo
+
+Historical token launch summary for this developer.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**totalToken** | **String** | Total number of tokens launched by this developer via launch platforms. | [optional] |
+|**migratedCount** | **String** | Number of tokens successfully migrated to external DEX by this developer. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTrackedTradesResponse.md b/clients/web3-wallet/docs/GetTrackedTradesResponse.md
new file mode 100644
index 0000000..dd5daa2
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTrackedTradesResponse.md
@@ -0,0 +1,17 @@
+
+
+# GetTrackedTradesResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**GetTrackedTradesResponseData**](GetTrackedTradesResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTrackedTradesResponseData.md b/clients/web3-wallet/docs/GetTrackedTradesResponseData.md
new file mode 100644
index 0000000..b7c11ad
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTrackedTradesResponseData.md
@@ -0,0 +1,14 @@
+
+
+# GetTrackedTradesResponseData
+
+Tracker trade results.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**trades** | [**List<GetTrackedTradesResponseDataTradesInner>**](GetTrackedTradesResponseDataTradesInner.md) | List of tracked address trades. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTrackedTradesResponseDataTradesInner.md b/clients/web3-wallet/docs/GetTrackedTradesResponseDataTradesInner.md
new file mode 100644
index 0000000..9152d47
--- /dev/null
+++ b/clients/web3-wallet/docs/GetTrackedTradesResponseDataTradesInner.md
@@ -0,0 +1,21 @@
+
+
+# GetTrackedTradesResponseDataTradesInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**txHash** | **String** | On-chain transaction hash. | [optional] |
+|**walletAddress** | **String** | Wallet address that initiated this trade. EVM addresses are lowercase; Solana addresses are case-sensitive. | [optional] |
+|**tokenSymbol** | **String** | Symbol of the traded token. | [optional] |
+|**tokenContractAddress** | **String** | Contract address of the traded token. EVM addresses are lowercase; Solana addresses are case-sensitive. | [optional] |
+|**binanceChainId** | **String** | Unique chain identifier of the traded token. | [optional] |
+|**tokenPrice** | **String** | Token price at the time of this trade, denominated in USD. | [optional] |
+|**marketCap** | **String** | Token market cap at the time of this trade, denominated in USD. | [optional] |
+|**tradeType** | **String** | Trade type. 1=Buy, 2=Sell, 3=Add position, 4=Reduce position, 5=Open position, 6=Close position, 7=Transfer in, 8=Transfer out. | [optional] |
+|**tradeTime** | **String** | On-chain time of this trade, Unix millisecond timestamp. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/GetTransactionSupportedChainsResponseDataInner.md b/clients/web3-wallet/docs/GetTransactionSupportedChainsResponseDataInner.md
index 4ae6212..b659c20 100644
--- a/clients/web3-wallet/docs/GetTransactionSupportedChainsResponseDataInner.md
+++ b/clients/web3-wallet/docs/GetTransactionSupportedChainsResponseDataInner.md
@@ -7,7 +7,7 @@
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
-|**binanceChainId** | **String** | Unique chain identifier (follows EIP-155 chainId for EVM chains; e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**binanceChainId** | **String** | Unique chain identifier (follows EIP-155 chainId for EVM chains; e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana, \"CT_195\"=Tron). | [optional] |
|**name** | **String** | Full chain name. | [optional] |
|**shortName** | **String** | Short chain name / ticker. | [optional] |
|**logoUrl** | **String** | Chain logo image URL. | [optional] |
diff --git a/clients/web3-wallet/docs/OrderType.md b/clients/web3-wallet/docs/OrderType.md
new file mode 100644
index 0000000..709305c
--- /dev/null
+++ b/clients/web3-wallet/docs/OrderType.md
@@ -0,0 +1,13 @@
+
+
+# OrderType
+
+## Enum
+
+
+* `TYPE_1` (value: `"1"`)
+
+* `TYPE_2` (value: `"2"`)
+
+
+
diff --git a/clients/web3-wallet/docs/PlatformId.md b/clients/web3-wallet/docs/PlatformId.md
new file mode 100644
index 0000000..8f17d71
--- /dev/null
+++ b/clients/web3-wallet/docs/PlatformId.md
@@ -0,0 +1,13 @@
+
+
+# PlatformId
+
+## Enum
+
+
+* `ondo` (value: `"ondo"`)
+
+* `bstock` (value: `"bstock"`)
+
+
+
diff --git a/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponse.md b/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponse.md
new file mode 100644
index 0000000..369b5d9
--- /dev/null
+++ b/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponse.md
@@ -0,0 +1,17 @@
+
+
+# QuoteAndBuildSwapTransactionResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**QuoteAndBuildSwapTransactionResponseData**](QuoteAndBuildSwapTransactionResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponseData.md b/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponseData.md
new file mode 100644
index 0000000..c404403
--- /dev/null
+++ b/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponseData.md
@@ -0,0 +1,16 @@
+
+
+# QuoteAndBuildSwapTransactionResponseData
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**routerResult** | [**BuildSwapTransactionResponseDataRouterResult**](BuildSwapTransactionResponseDataRouterResult.md) | | [optional] |
+|**tx** | [**BuildSwapTransactionResponseDataTx**](BuildSwapTransactionResponseDataTx.md) | | [optional] |
+|**executionMode** | **String** | Always `SWAP` for this endpoint — returns executable calldata / swapTransaction to sign and broadcast on-chain (no `RFQ` mode). | [optional] |
+|**rfq** | [**QuoteAndBuildSwapTransactionResponseDataRfq**](QuoteAndBuildSwapTransactionResponseDataRfq.md) | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponseDataRfq.md b/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponseDataRfq.md
new file mode 100644
index 0000000..05a4247
--- /dev/null
+++ b/clients/web3-wallet/docs/QuoteAndBuildSwapTransactionResponseDataRfq.md
@@ -0,0 +1,18 @@
+
+
+# QuoteAndBuildSwapTransactionResponseDataRfq
+
+Always `null` for this endpoint (only `SWAP` mode is returned).
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**vendor** | **String** | RFQ vendor that will settle this order on-chain. Pass this as the `vendor` field in `POST /order/submit`. | [optional] |
+|**txType** | **String** | Transaction type for this RFQ order. Currently always `EIP712` (all three RFQ vendors use EIP-712 typed-data signing); reserved for future signing schemes. | [optional] |
+|**typedDataToSign** | **String** | EIP-712 typed data payload for `eth_signTypedData_v4`, serialized as a hex string (or JSON-encoded string). Sign with the wallet that matches `userWalletAddress` from `/quote`. Pass the resulting signature as `userSignature` in `POST /order/submit`. | [optional] |
+|**signingScheme** | **String** | Signing scheme required by this vendor. Pass this as `signingScheme` in `POST /order/submit`. | [optional] |
+|**signatureData** | **List<String>** | Approve transaction data, present only when `approveTransaction=true` was passed and the from-token is an EVM ERC-20. Each element is a JSON string containing `approveContract` (the spender address, resolved per vendor: InchFusion→router, PcsXRfq→Permit2, CowSwap→VaultRelayer) and `approveTxCalldata` (the ERC-20 `approve()` calldata). Empty list otherwise. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/RwaDataApi.md b/clients/web3-wallet/docs/RwaDataApi.md
new file mode 100644
index 0000000..d6e834a
--- /dev/null
+++ b/clients/web3-wallet/docs/RwaDataApi.md
@@ -0,0 +1,463 @@
+# RwaDataApi
+
+All URIs are relative to *https://web3.binance.com/build*
+
+| Method | HTTP request | Description |
+|------------- | ------------- | -------------|
+| [**getRwaTokenIssuancePlatforms**](RwaDataApi.md#getRwaTokenIssuancePlatforms) | **GET** /api/v1/dex/market/rwa/platforms | Get RWA Token Issuance Platforms |
+| [**getRwaTokenList**](RwaDataApi.md#getRwaTokenList) | **GET** /api/v1/dex/market/rwa/tokens | Get RWA Token List |
+| [**getRwaTokenPrice**](RwaDataApi.md#getRwaTokenPrice) | **GET** /api/v1/dex/market/rwa/price | Get RWA Token Price |
+| [**getRwaUnderlyingInfo**](RwaDataApi.md#getRwaUnderlyingInfo) | **GET** /api/v1/dex/market/rwa/underlying-profile | Get RWA Underlying Info |
+| [**getRwaUnderlyingMarketData**](RwaDataApi.md#getRwaUnderlyingMarketData) | **GET** /api/v1/dex/market/rwa/underlying-market | Get RWA Underlying Market Data |
+| [**searchRwaToken**](RwaDataApi.md#searchRwaToken) | **GET** /api/v1/dex/market/rwa/search | Search RWA Token |
+
+
+
+# **getRwaTokenIssuancePlatforms**
+> GetRwaTokenIssuancePlatformsResponse getRwaTokenIssuancePlatforms().recvWindow(recvWindow).nonce(nonce).platformId(platformId).execute();
+
+Get RWA Token Issuance Platforms
+
+Return the list of supported RWA token issuance platforms and their basic info.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.RwaDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ RwaDataApi apiInstance = new RwaDataApi(defaultClient);
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds. Default 5000, max 60000.
+ String nonce = "unique-nonce-string"; // String | Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted.
+ PlatformId platformId = PlatformId.fromValue("ondo"); // PlatformId | Platform identifier (ondo=Ondo Finance, bstock=bStocks). Optional. If not specified, returns all platforms; when specified, returns only that platform.
+ try {
+ GetRwaTokenIssuancePlatformsResponse result = apiInstance.getRwaTokenIssuancePlatforms()
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .platformId(platformId)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling RwaDataApi#getRwaTokenIssuancePlatforms");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds. Default 5000, max 60000. | [optional] |
+| **nonce** | **String**| Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted. | [optional] |
+| **platformId** | [**PlatformId**](.md)| Platform identifier (ondo=Ondo Finance, bstock=bStocks). Optional. If not specified, returns all platforms; when specified, returns only that platform. | [optional] [enum: ondo, bstock] |
+
+### Return type
+
+[**GetRwaTokenIssuancePlatformsResponse**](GetRwaTokenIssuancePlatformsResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | RWA token issuance platform list returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getRwaTokenList**
+> GetRwaTokenListResponse getRwaTokenList().recvWindow(recvWindow).nonce(nonce).binanceChainId(binanceChainId).platformId(platformId).tabId(tabId).execute();
+
+Get RWA Token List
+
+Get the list of RWA tokens with underlying asset info. Supports filtering by platform and sector tab.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.RwaDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ RwaDataApi apiInstance = new RwaDataApi(defaultClient);
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds. Default 5000, max 60000.
+ String nonce = "unique-nonce-string"; // String | Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted.
+ String binanceChainId = "56"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). Optional. If not specified, returns data from all chains.
+ PlatformId platformId = PlatformId.fromValue("ondo"); // PlatformId | Platform filter (ondo=Ondo Finance, bstock=bStocks). Optional. If not specified, returns all platforms.
+ Integer tabId = 9; // Integer | Sector tab filter. Optional. If not specified, returns all sectors. Enum: 1=Serenity Call, 2=SpaceX (SpaceX-related and commercial spaceflight concept stocks), 3=Upcoming Earnings, 4=AI Chips, 5=Storage, 6=Energy, 7=Precious Metals, 8=China ADR (Chinese companies listed in the US), 9=Magnificent 7 (the seven largest US tech giants: Apple, Microsoft, Alphabet, Amazon, Nvidia, Meta, Tesla), 10=Crypto, 11=ETF, 12=Tech Leaders, 13=Buffett Portfolio.
+ try {
+ GetRwaTokenListResponse result = apiInstance.getRwaTokenList()
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .binanceChainId(binanceChainId)
+ .platformId(platformId)
+ .tabId(tabId)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling RwaDataApi#getRwaTokenList");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds. Default 5000, max 60000. | [optional] |
+| **nonce** | **String**| Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted. | [optional] |
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). Optional. If not specified, returns data from all chains. | [optional] |
+| **platformId** | [**PlatformId**](.md)| Platform filter (ondo=Ondo Finance, bstock=bStocks). Optional. If not specified, returns all platforms. | [optional] [enum: ondo, bstock] |
+| **tabId** | **Integer**| Sector tab filter. Optional. If not specified, returns all sectors. Enum: 1=Serenity Call, 2=SpaceX (SpaceX-related and commercial spaceflight concept stocks), 3=Upcoming Earnings, 4=AI Chips, 5=Storage, 6=Energy, 7=Precious Metals, 8=China ADR (Chinese companies listed in the US), 9=Magnificent 7 (the seven largest US tech giants: Apple, Microsoft, Alphabet, Amazon, Nvidia, Meta, Tesla), 10=Crypto, 11=ETF, 12=Tech Leaders, 13=Buffett Portfolio. | [optional] |
+
+### Return type
+
+[**GetRwaTokenListResponse**](GetRwaTokenListResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | RWA token list returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getRwaTokenPrice**
+> GetRwaTokenPriceResponse getRwaTokenPrice(binanceChainId, tokenContractAddresses).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get RWA Token Price
+
+Batch query RWA token prices, including on-chain price and underlying reference price.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.RwaDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ RwaDataApi apiInstance = new RwaDataApi(defaultClient);
+ String binanceChainId = "56"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String tokenContractAddresses = "0x8755c5c39b1aa9053a83ac731242a2cf4d04b0fe"; // String | Comma-separated token contract addresses. Maximum 100 per request.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds. Default 5000, max 60000.
+ String nonce = "unique-nonce-string"; // String | Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted.
+ try {
+ GetRwaTokenPriceResponse result = apiInstance.getRwaTokenPrice(binanceChainId, tokenContractAddresses)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling RwaDataApi#getRwaTokenPrice");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **tokenContractAddresses** | **String**| Comma-separated token contract addresses. Maximum 100 per request. | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds. Default 5000, max 60000. | [optional] |
+| **nonce** | **String**| Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted. | [optional] |
+
+### Return type
+
+[**GetRwaTokenPriceResponse**](GetRwaTokenPriceResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Quote data returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getRwaUnderlyingInfo**
+> GetRwaUnderlyingInfoResponse getRwaUnderlyingInfo(binanceChainId, tokenContractAddress).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get RWA Underlying Info
+
+Get the underlying company information for an RWA token.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.RwaDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ RwaDataApi apiInstance = new RwaDataApi(defaultClient);
+ String binanceChainId = "56"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String tokenContractAddress = "0x8755c5c39b1aa9053a83ac731242a2cf4d04b0fe"; // String | Token contract address.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds. Default 5000, max 60000.
+ String nonce = "unique-nonce-string"; // String | Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted.
+ try {
+ GetRwaUnderlyingInfoResponse result = apiInstance.getRwaUnderlyingInfo(binanceChainId, tokenContractAddress)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling RwaDataApi#getRwaUnderlyingInfo");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **tokenContractAddress** | **String**| Token contract address. | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds. Default 5000, max 60000. | [optional] |
+| **nonce** | **String**| Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted. | [optional] |
+
+### Return type
+
+[**GetRwaUnderlyingInfoResponse**](GetRwaUnderlyingInfoResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Token detail returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **getRwaUnderlyingMarketData**
+> GetRwaUnderlyingMarketDataResponse getRwaUnderlyingMarketData(binanceChainId, tokenContractAddress).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get RWA Underlying Market Data
+
+Get market data for the underlying asset of an RWA token.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.RwaDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ RwaDataApi apiInstance = new RwaDataApi(defaultClient);
+ String binanceChainId = "56"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String tokenContractAddress = "0x8755c5c39b1aa9053a83ac731242a2cf4d04b0fe"; // String | Token contract address.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds. Default 5000, max 60000.
+ String nonce = "unique-nonce-string"; // String | Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted.
+ try {
+ GetRwaUnderlyingMarketDataResponse result = apiInstance.getRwaUnderlyingMarketData(binanceChainId, tokenContractAddress)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling RwaDataApi#getRwaUnderlyingMarketData");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **tokenContractAddress** | **String**| Token contract address. | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds. Default 5000, max 60000. | [optional] |
+| **nonce** | **String**| Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted. | [optional] |
+
+### Return type
+
+[**GetRwaUnderlyingMarketDataResponse**](GetRwaUnderlyingMarketDataResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Underlying market data returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **searchRwaToken**
+> SearchRwaTokenResponse searchRwaToken(keyword).recvWindow(recvWindow).nonce(nonce).platformId(platformId).execute();
+
+Search RWA Token
+
+Search RWA tokens by keyword or contract address.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.RwaDataApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ RwaDataApi apiInstance = new RwaDataApi(defaultClient);
+ String keyword = "NVDA"; // String | Search keyword (ticker, company name, or contract address). Case-insensitive.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds. Default 5000, max 60000.
+ String nonce = "unique-nonce-string"; // String | Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted.
+ PlatformId platformId = PlatformId.fromValue("ondo"); // PlatformId | Platform filter (ondo=Ondo Finance, bstock=bStocks). Optional. If not specified, returns results from all platforms.
+ try {
+ SearchRwaTokenResponse result = apiInstance.searchRwaToken(keyword)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .platformId(platformId)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling RwaDataApi#searchRwaToken");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **keyword** | **String**| Search keyword (ticker, company name, or contract address). Case-insensitive. | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds. Default 5000, max 60000. | [optional] |
+| **nonce** | **String**| Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN when omitted. | [optional] |
+| **platformId** | [**PlatformId**](.md)| Platform filter (ondo=Ondo Finance, bstock=bStocks). Optional. If not specified, returns results from all platforms. | [optional] [enum: ondo, bstock] |
+
+### Return type
+
+[**SearchRwaTokenResponse**](SearchRwaTokenResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Ticker lookup results returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
diff --git a/clients/web3-wallet/docs/SearchRwaTokenResponse.md b/clients/web3-wallet/docs/SearchRwaTokenResponse.md
new file mode 100644
index 0000000..4653008
--- /dev/null
+++ b/clients/web3-wallet/docs/SearchRwaTokenResponse.md
@@ -0,0 +1,17 @@
+
+
+# SearchRwaTokenResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | Business status code. 0 indicates success. | [optional] |
+|**msg** | **String** | Status message. | [optional] |
+|**data** | [**List<SearchRwaTokenResponseDataInner>**](SearchRwaTokenResponseDataInner.md) | List of matched tickers and their tokenized assets. | [optional] |
+|**timestamp** | **Long** | Server response time, Unix millisecond timestamp. | [optional] |
+|**success** | **Boolean** | Whether the request was successful. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/SearchRwaTokenResponseDataInner.md b/clients/web3-wallet/docs/SearchRwaTokenResponseDataInner.md
new file mode 100644
index 0000000..b7f5780
--- /dev/null
+++ b/clients/web3-wallet/docs/SearchRwaTokenResponseDataInner.md
@@ -0,0 +1,15 @@
+
+
+# SearchRwaTokenResponseDataInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**ticker** | **String** | Matched stock ticker symbol. | [optional] |
+|**companyName** | **String** | Company English name. | [optional] |
+|**assets** | [**List<SearchRwaTokenResponseDataInnerAssetsInner>**](SearchRwaTokenResponseDataInnerAssetsInner.md) | Tokenized assets for this ticker across platforms and chains. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/SearchRwaTokenResponseDataInnerAssetsInner.md b/clients/web3-wallet/docs/SearchRwaTokenResponseDataInnerAssetsInner.md
new file mode 100644
index 0000000..7145c52
--- /dev/null
+++ b/clients/web3-wallet/docs/SearchRwaTokenResponseDataInnerAssetsInner.md
@@ -0,0 +1,17 @@
+
+
+# SearchRwaTokenResponseDataInnerAssetsInner
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**platformId** | **String** | Unique platform identifier. | [optional] |
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | [optional] |
+|**tokenContractAddress** | **String** | Token contract address. | [optional] |
+|**tokenSymbol** | **String** | Token symbol. | [optional] |
+|**assetType** | **Integer** | Asset type. 1=Stock, 2=Pre-IPO, 3=ETF. | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/SimulateTransactionsRequest.md b/clients/web3-wallet/docs/SimulateTransactionsRequest.md
index 396e0ce..d958516 100644
--- a/clients/web3-wallet/docs/SimulateTransactionsRequest.md
+++ b/clients/web3-wallet/docs/SimulateTransactionsRequest.md
@@ -7,9 +7,10 @@
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
-|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
-|**evmTx** | [**SimulateTransactionsRequestEvmTx**](SimulateTransactionsRequestEvmTx.md) | | [optional] |
-|**solTx** | [**SimulateTransactionsRequestSolTx**](SimulateTransactionsRequestSolTx.md) | | [optional] |
+|**binanceChainId** | **String** | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana, \"CT_195\"=Tron). Provide `evmTx` for EVM chains, `solTx` for Solana, or `tronTx` for Tron — exactly one must be present. Note: `evmTx`, `solTx`, and `tronTx` are marked required in this schema for rendering purposes only; in practice supply exactly one matching `binanceChainId`. | |
+|**evmTx** | [**SimulateTransactionsRequestEvmTx**](SimulateTransactionsRequestEvmTx.md) | | |
+|**solTx** | [**SimulateTransactionsRequestSolTx**](SimulateTransactionsRequestSolTx.md) | | |
+|**tronTx** | [**SimulateTransactionsRequestTronTx**](SimulateTransactionsRequestTronTx.md) | | |
diff --git a/clients/web3-wallet/docs/SimulateTransactionsRequestEvmTx.md b/clients/web3-wallet/docs/SimulateTransactionsRequestEvmTx.md
index 087f062..b80ee0e 100644
--- a/clients/web3-wallet/docs/SimulateTransactionsRequestEvmTx.md
+++ b/clients/web3-wallet/docs/SimulateTransactionsRequestEvmTx.md
@@ -11,7 +11,7 @@ EVM transaction payload. Required when `binanceChainId` belongs to an EVM chain.
|**from** | **String** | Sender address. | |
|**to** | **String** | Destination address (contract or EOA). | |
|**value** | **String** | Native token amount in wei (integer string). | |
-|**data** | **String** | ABI-encoded calldata (hex). Optional. | [optional] |
+|**data** | **String** | ABI-encoded calldata (hex). Optional. | |
diff --git a/clients/web3-wallet/docs/SimulateTransactionsRequestSolTx.md b/clients/web3-wallet/docs/SimulateTransactionsRequestSolTx.md
index 45e6641..4e4ac60 100644
--- a/clients/web3-wallet/docs/SimulateTransactionsRequestSolTx.md
+++ b/clients/web3-wallet/docs/SimulateTransactionsRequestSolTx.md
@@ -9,7 +9,7 @@ Solana transaction payload. Required when `binanceChainId=CT_501`.
| Name | Type | Description | Notes |
|------------ | ------------- | ------------- | -------------|
|**base64Tx** | **String** | Base64-encoded unsigned Solana transaction. | |
-|**address** | **String** | Owner / fee-payer Solana address used to attribute balance changes. | |
+|**address** | **String** | Owner / fee-payer Solana address used to attribute balance changes. | [optional] |
diff --git a/clients/web3-wallet/docs/SimulateTransactionsRequestTronTx.md b/clients/web3-wallet/docs/SimulateTransactionsRequestTronTx.md
new file mode 100644
index 0000000..6760328
--- /dev/null
+++ b/clients/web3-wallet/docs/SimulateTransactionsRequestTronTx.md
@@ -0,0 +1,26 @@
+
+
+# SimulateTransactionsRequestTronTx
+
+Tron transaction payload. Required when `binanceChainId=CT_195`.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**from** | **String** | Sender address (base58check), also used to attribute balance changes. | |
+|**txType** | [**TxTypeEnum**](#TxTypeEnum) | Tron contract type. `TRIGGER_SMART_CONTRACT` requires `triggerSmartContractParams`; `TRANSFER_CONTRACT` requires `transferContractParams`. | |
+|**triggerSmartContractParams** | [**GetGasLimitRequestTronTxTriggerSmartContractParams**](GetGasLimitRequestTronTxTriggerSmartContractParams.md) | | [optional] |
+|**transferContractParams** | [**GetGasLimitRequestTronTxTransferContractParams**](GetGasLimitRequestTronTxTransferContractParams.md) | | [optional] |
+
+
+
+## Enum: TxTypeEnum
+
+| Name | Value |
+|---- | -----|
+| TRIGGER_SMART_CONTRACT | "TRIGGER_SMART_CONTRACT" |
+| TRANSFER_CONTRACT | "TRANSFER_CONTRACT" |
+
+
+
diff --git a/clients/web3-wallet/docs/SortBy.md b/clients/web3-wallet/docs/SortBy.md
new file mode 100644
index 0000000..23f7666
--- /dev/null
+++ b/clients/web3-wallet/docs/SortBy.md
@@ -0,0 +1,19 @@
+
+
+# SortBy
+
+## Enum
+
+
+* `SORT_BY_1` (value: `"1"`)
+
+* `SORT_BY_2` (value: `"2"`)
+
+* `SORT_BY_3` (value: `"3"`)
+
+* `SORT_BY_4` (value: `"4"`)
+
+* `SORT_BY_5` (value: `"5"`)
+
+
+
diff --git a/clients/web3-wallet/docs/SubmitRfqOrderRequest.md b/clients/web3-wallet/docs/SubmitRfqOrderRequest.md
new file mode 100644
index 0000000..f452a7d
--- /dev/null
+++ b/clients/web3-wallet/docs/SubmitRfqOrderRequest.md
@@ -0,0 +1,27 @@
+
+
+# SubmitRfqOrderRequest
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**requestId** | **String** | Idempotency key (UUID v4). Within 30 minutes, re-submitting with the same `requestId` returns the original result without re-calling the vendor. Generate a new UUID for each new order; reuse the same UUID when retrying the same attempt. | |
+|**userSignature** | **String** | EIP-712 signature of `rfq.typedDataToSign` from the `/swap` response. Must be a hex string with `0x` prefix (132 chars = `0x` + 65 bytes). The signing wallet must match `userWalletAddress` used in `/quote`. The backend automatically corrects Ethereum `v` values `00`/`01` to `1b`/`1c`. | |
+|**vendor** | [**VendorEnum**](#VendorEnum) | RFQ vendor name — must match `rfq.vendor` from the `/swap` response. The backend validates this against `quoteId` to prevent misrouted submissions. | |
+|**quoteId** | **String** | `rfq.orderId` from the `/swap` response. The backend uses this to look up the vendor and chain context required to forward the signed order. | |
+|**signingScheme** | **String** | Signing scheme from `rfq.signingScheme` in the `/swap` response. Optional — when omitted the backend infers the default per vendor. | [optional] |
+
+
+
+## Enum: VendorEnum
+
+| Name | Value |
+|---- | -----|
+| InchFusion | "InchFusion" |
+| CowSwap | "CowSwap" |
+| PcsXRfq | "PcsXRfq" |
+
+
+
diff --git a/clients/web3-wallet/docs/SubmitRfqOrderResponse.md b/clients/web3-wallet/docs/SubmitRfqOrderResponse.md
new file mode 100644
index 0000000..14957a5
--- /dev/null
+++ b/clients/web3-wallet/docs/SubmitRfqOrderResponse.md
@@ -0,0 +1,17 @@
+
+
+# SubmitRfqOrderResponse
+
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**code** | **Integer** | | [optional] |
+|**msg** | **String** | | [optional] |
+|**data** | [**SubmitRfqOrderResponseData**](SubmitRfqOrderResponseData.md) | | [optional] |
+|**timestamp** | **Long** | | [optional] |
+|**success** | **Boolean** | | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/SubmitRfqOrderResponseData.md b/clients/web3-wallet/docs/SubmitRfqOrderResponseData.md
new file mode 100644
index 0000000..f69db47
--- /dev/null
+++ b/clients/web3-wallet/docs/SubmitRfqOrderResponseData.md
@@ -0,0 +1,16 @@
+
+
+# SubmitRfqOrderResponseData
+
+Submitted order details.
+
+## Properties
+
+| Name | Type | Description | Notes |
+|------------ | ------------- | ------------- | -------------|
+|**orderId** | **String** | Platform-generated order ID. Use this to poll `GET /order/{orderId}` for the final settlement status. | [optional] |
+|**status** | **String** | Initial order status after submission. Typical value: `PENDING_VENDOR` (forwarded to vendor, awaiting settlement). | [optional] |
+|**createdAt** | **Long** | Order creation timestamp (Unix epoch milliseconds). | [optional] |
+
+
+
diff --git a/clients/web3-wallet/docs/TimeFrame.md b/clients/web3-wallet/docs/TimeFrame.md
new file mode 100644
index 0000000..aea19fc
--- /dev/null
+++ b/clients/web3-wallet/docs/TimeFrame.md
@@ -0,0 +1,15 @@
+
+
+# TimeFrame
+
+## Enum
+
+
+* `TIME_FRAME_1` (value: `"1"`)
+
+* `TIME_FRAME_2` (value: `"2"`)
+
+* `TIME_FRAME_3` (value: `"3"`)
+
+
+
diff --git a/clients/web3-wallet/docs/TrackerType.md b/clients/web3-wallet/docs/TrackerType.md
new file mode 100644
index 0000000..e951666
--- /dev/null
+++ b/clients/web3-wallet/docs/TrackerType.md
@@ -0,0 +1,15 @@
+
+
+# TrackerType
+
+## Enum
+
+
+* `TRACKER_TYPE_1` (value: `"1"`)
+
+* `TRACKER_TYPE_2` (value: `"2"`)
+
+* `TRACKER_TYPE_3` (value: `"3"`)
+
+
+
diff --git a/clients/web3-wallet/docs/TradingApi.md b/clients/web3-wallet/docs/TradingApi.md
index 698ec1b..2d9f40d 100644
--- a/clients/web3-wallet/docs/TradingApi.md
+++ b/clients/web3-wallet/docs/TradingApi.md
@@ -4,16 +4,125 @@ All URIs are relative to *https://web3.binance.com/build*
| Method | HTTP request | Description |
|------------- | ------------- | -------------|
+| [**buildSolanaSwapInstructions**](TradingApi.md#buildSolanaSwapInstructions) | **GET** /api/v1/dex/aggregator/swap-instruction | Build Solana Swap Instructions |
| [**buildSwapTransaction**](TradingApi.md#buildSwapTransaction) | **GET** /api/v1/dex/aggregator/swap | Build Swap Transaction |
| [**getAggregatedQuote**](TradingApi.md#getAggregatedQuote) | **GET** /api/v1/dex/aggregator/quote | Get Aggregated Quote |
| [**getAggregatorSupportedChains**](TradingApi.md#getAggregatorSupportedChains) | **GET** /api/v1/dex/aggregator/supported/chain | Get Aggregator Supported Chains |
| [**getErc20ApproveTransaction**](TradingApi.md#getErc20ApproveTransaction) | **GET** /api/v1/dex/aggregator/approve-transaction | Get ERC-20 Approve Transaction |
+| [**getRfqOrderStatus**](TradingApi.md#getRfqOrderStatus) | **GET** /api/v1/dex/aggregator/order/{orderId} | Get RFQ Order Status |
| [**getTransactionStatus**](TradingApi.md#getTransactionStatus) | **GET** /api/v1/dex/aggregator/history | Get Transaction Status |
+| [**quoteAndBuildSwapTransaction**](TradingApi.md#quoteAndBuildSwapTransaction) | **GET** /api/v1/dex/aggregator/quote-and-swap | Quote and Build Swap Transaction (Flash API) |
+| [**submitRfqOrder**](TradingApi.md#submitRfqOrder) | **POST** /api/v1/dex/aggregator/order/submit | Submit RFQ Order |
+
+# **buildSolanaSwapInstructions**
+> BuildSolanaSwapInstructionsResponse buildSolanaSwapInstructions(binanceChainId, amount, fromTokenAddress, toTokenAddress, slippagePercent, userWalletAddress, quoteId).recvWindow(recvWindow).nonce(nonce).priceImpactProtectionPercent(priceImpactProtectionPercent).autoSlippage(autoSlippage).maxAutoSlippagePercent(maxAutoSlippagePercent).computeUnitLimit(computeUnitLimit).computeUnitPrice(computeUnitPrice).gasLevel(gasLevel).tips(tips).execute();
+
+Build Solana Swap Instructions
+
+Solana-only counterpart to `/swap`. Shares the full quote → route → vendor `buildSwapTx` → priceImpact → minReceive → instruction-assembly pipeline; the only difference is the response: instead of returning a signed-and-serialized base64 transaction, this endpoint returns the **uncompiled** instruction list plus the address-lookup-table (ALT) address list, leaving v0-transaction compilation, signing, and submission to the caller. Use this when the caller needs to: - prepend / append their own instructions (e.g. fee splitting, custom logging) before signing; - reuse the platform-curated route, slippage, PS-variant rewriting, ALT injection, ComputeBudget overwrite, and ATA batching while still controlling the final wire format. Only supports `binanceChainId=CT_501` (Solana). Other chains return `CHAIN_NOT_SUPPORTED` (40411). Parameters mirror the Solana subset of `/swap` (no EVM-only `approveTransaction` / `approveAmount` / `gasLimit`).
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.TradingApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ TradingApi apiInstance = new TradingApi(defaultClient);
+ BinanceChainId binanceChainId = BinanceChainId.fromValue("CT_501"); // BinanceChainId | Chain identifier. Only `CT_501` (Solana) is accepted; other values return `CHAIN_NOT_SUPPORTED` (40411).
+ String amount = "12000000"; // String | Sell-token amount in the token's smallest unit (positive integer string, no decimals).
+ String fromTokenAddress = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; // String | Sell-token mint address (Solana Base58, case-sensitive).
+ String toTokenAddress = "So11111111111111111111111111111111111111112"; // String | Buy-token mint address (Solana Base58, case-sensitive).
+ String slippagePercent = "0.5"; // String | Maximum slippage as a percentage. Solana range 0 to less than 100. \"0.5\" means 0.5%.
+ String userWalletAddress = "J5CBzXpcYn6WR2JBah8zU4Yxct985CAFGwXRcFaX2pbS"; // String | User wallet address (Solana Base58); becomes the v0 transaction's `feePayer`.
+ String quoteId = "a1b2c3d4e5f64a8b9c0d1e2f3a4b5c6d"; // String | quoteId returned from `/quote` for the route to execute. TTL ~30s; expired entries return `QUOTE_EXPIRED` (40401).
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String priceImpactProtectionPercent = "90"; // String | Maximum allowed price impact percentage (0–100). Defaults to 90; set to 100 to disable.
+ AutoSlippage autoSlippage = AutoSlippage.fromValue("true"); // AutoSlippage | When \"true\", slippage is auto-derived from market data and overrides `slippagePercent`. Defaults to false.
+ String maxAutoSlippagePercent = "3"; // String | Cap on auto-derived slippage (only applies when `autoSlippage=true`).
+ String computeUnitLimit = "1400000"; // String | Maximum compute units the transaction may consume (analogous to EVM gasLimit). Defaults to the platform value when omitted.
+ String computeUnitPrice = "1000"; // String | Priority fee per compute unit (micro-lamports). When omitted, the platform computes a value either from the `gasLevel` tier or from chain-side defaults.
+ GasLevel gasLevel = GasLevel.fromValue("slow"); // GasLevel | Priority-fee tier; consulted only when `computeUnitPrice` is omitted. Defaults to \"average\".
+ String tips = "0.001"; // String | Jito tips in SOL for MEV protection. Valid range [0.000000001, 2] (minimum 1 lamport). When specified, it is recommended to set `computeUnitPrice=0`. The platform picks one of Jito's tip accounts at random per request.
+ try {
+ BuildSolanaSwapInstructionsResponse result = apiInstance.buildSolanaSwapInstructions(binanceChainId, amount, fromTokenAddress, toTokenAddress, slippagePercent, userWalletAddress, quoteId)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .priceImpactProtectionPercent(priceImpactProtectionPercent)
+ .autoSlippage(autoSlippage)
+ .maxAutoSlippagePercent(maxAutoSlippagePercent)
+ .computeUnitLimit(computeUnitLimit)
+ .computeUnitPrice(computeUnitPrice)
+ .gasLevel(gasLevel)
+ .tips(tips)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradingApi#buildSolanaSwapInstructions");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | [**BinanceChainId**](.md)| Chain identifier. Only `CT_501` (Solana) is accepted; other values return `CHAIN_NOT_SUPPORTED` (40411). | [enum: CT_501] |
+| **amount** | **String**| Sell-token amount in the token's smallest unit (positive integer string, no decimals). | |
+| **fromTokenAddress** | **String**| Sell-token mint address (Solana Base58, case-sensitive). | |
+| **toTokenAddress** | **String**| Buy-token mint address (Solana Base58, case-sensitive). | |
+| **slippagePercent** | **String**| Maximum slippage as a percentage. Solana range 0 to less than 100. \"0.5\" means 0.5%. | |
+| **userWalletAddress** | **String**| User wallet address (Solana Base58); becomes the v0 transaction's `feePayer`. | |
+| **quoteId** | **String**| quoteId returned from `/quote` for the route to execute. TTL ~30s; expired entries return `QUOTE_EXPIRED` (40401). | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **priceImpactProtectionPercent** | **String**| Maximum allowed price impact percentage (0–100). Defaults to 90; set to 100 to disable. | [optional] |
+| **autoSlippage** | [**AutoSlippage**](.md)| When \"true\", slippage is auto-derived from market data and overrides `slippagePercent`. Defaults to false. | [optional] [enum: true, false] |
+| **maxAutoSlippagePercent** | **String**| Cap on auto-derived slippage (only applies when `autoSlippage=true`). | [optional] |
+| **computeUnitLimit** | **String**| Maximum compute units the transaction may consume (analogous to EVM gasLimit). Defaults to the platform value when omitted. | [optional] |
+| **computeUnitPrice** | **String**| Priority fee per compute unit (micro-lamports). When omitted, the platform computes a value either from the `gasLevel` tier or from chain-side defaults. | [optional] |
+| **gasLevel** | [**GasLevel**](.md)| Priority-fee tier; consulted only when `computeUnitPrice` is omitted. Defaults to \"average\". | [optional] [enum: slow, average, fast] |
+| **tips** | **String**| Jito tips in SOL for MEV protection. Valid range [0.000000001, 2] (minimum 1 lamport). When specified, it is recommended to set `computeUnitPrice=0`. The platform picks one of Jito's tip accounts at random per request. | [optional] |
+
+### Return type
+
+[**BuildSolanaSwapInstructionsResponse**](BuildSolanaSwapInstructionsResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Uncompiled Solana instruction list and ALT addresses returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
# **buildSwapTransaction**
-> BuildSwapTransactionResponse buildSwapTransaction(binanceChainId, amount, fromTokenAddress, toTokenAddress, slippagePercent, userWalletAddress, quoteId).recvWindow(recvWindow).nonce(nonce).approveTransaction(approveTransaction).approveAmount(approveAmount).gasLimit(gasLimit).gasLevel(gasLevel).priceImpactProtectionPercent(priceImpactProtectionPercent).autoSlippage(autoSlippage).maxAutoSlippagePercent(maxAutoSlippagePercent).computeUnitLimit(computeUnitLimit).computeUnitPrice(computeUnitPrice).tips(tips).execute();
+> BuildSwapTransactionResponse buildSwapTransaction(binanceChainId, amount, fromTokenAddress, toTokenAddress, userWalletAddress, quoteId).recvWindow(recvWindow).nonce(nonce).slippagePercent(slippagePercent).approveTransaction(approveTransaction).approveAmount(approveAmount).gasLimit(gasLimit).gasLevel(gasLevel).priceImpactProtectionPercent(priceImpactProtectionPercent).autoSlippage(autoSlippage).maxAutoSlippagePercent(maxAutoSlippagePercent).computeUnitLimit(computeUnitLimit).computeUnitPrice(computeUnitPrice).tips(tips).execute();
Build Swap Transaction
@@ -38,25 +147,26 @@ public class Example {
String amount = "1000000"; // String | Sell-token amount in the token's smallest unit (positive integer string, no decimals).
String fromTokenAddress = "0x55d398326f99059fF775485246999027B3197955"; // String | Sell-token contract address.
String toTokenAddress = "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"; // String | Buy-token contract address.
- String slippagePercent = "0.5"; // String | Maximum slippage as a percentage. EVM range 0–100; Solana range 0 to less than 100. \"0.5\" means 0.5%.
String userWalletAddress = "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"; // String | User wallet address (transaction sender).
String quoteId = "a1b2c3d4e5f64a8b9c0d1e2f3a4b5c6d"; // String | quoteId returned from `/quote` for the route to execute. TTL ~30s; expired entries return `QUOTE_EXPIRED` (40401).
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String slippagePercent = "0.5"; // String | Maximum slippage tolerance as a percentage string. Required unless `autoSlippage=true`. **Range by chain:** - EVM chains (BSC, Ethereum, Base, etc.): `0` to `100` (inclusive) - Solana (`CT_501`): `0` to less than `100` (i.e. `< 100`) **Range by vendor:** - 1inch, PancakeSwap: `0` to `50` (values above 50 are rejected) - LiFi, LiquidMesh: `0` to `100` (EVM) or `0` to `< 100` (Solana) - Jupiter (Solana): `0` to less than `100`; the value is converted to basis points (`slippageBps = ceil(slippagePercent × 100)`) and applied to the on-chain swap `\"0.5\"` means 0.5% maximum slippage. When `autoSlippage=true` this field is overridden by the auto-computed value.
ApproveTransaction approveTransaction = ApproveTransaction.fromValue("true"); // ApproveTransaction | When \"true\", `signatureData` includes the spender address and approve calldata so the client can submit it before the swap. Defaults to false.
String approveAmount = "1000000"; // String | Override approve amount (smallest unit, positive integer string). Defaults to the swap amount.
String gasLimit = "200000"; // String | Gas limit override (positive integer string). EVM only.
GasLevel gasLevel = GasLevel.fromValue("slow"); // GasLevel | Gas price tier. Defaults to \"average\".
String priceImpactProtectionPercent = "90"; // String | Maximum allowed price impact percentage (0–100). Defaults to 90; set to 100 to disable.
- AutoSlippage autoSlippage = AutoSlippage.fromValue("true"); // AutoSlippage | When \"true\", slippage is auto-derived from market data and overrides `slippagePercent`. Defaults to false.
+ AutoSlippage autoSlippage = AutoSlippage.fromValue("true"); // AutoSlippage | When `\"true\"`, slippage is auto-derived from market data and overrides `slippagePercent`. Either `slippagePercent` or `autoSlippage=true` must be provided — omitting both returns a parameter error. Defaults to `\"false\"`.
String maxAutoSlippagePercent = "3"; // String | Cap on auto-derived slippage (only applies when `autoSlippage=true`).
String computeUnitLimit = "1400000"; // String | Solana only — maximum compute units the transaction may consume (analogous to EVM gasLimit). Applies only when `binanceChainId=CT_501`.
String computeUnitPrice = "1000"; // String | Solana only — priority fee per compute unit (micro-lamports), analogous to EVM gasPrice. When omitted, the platform computes a value dynamically. Applies only when `binanceChainId=CT_501`.
String tips = "0.001"; // String | Solana only — Jito tips in SOL for MEV protection. Valid range [0.000000001, 2] (minimum 1 lamport). When specified, it is recommended to set `computeUnitPrice=0`. Applies only when `binanceChainId=CT_501`.
try {
- BuildSwapTransactionResponse result = apiInstance.buildSwapTransaction(binanceChainId, amount, fromTokenAddress, toTokenAddress, slippagePercent, userWalletAddress, quoteId)
+ BuildSwapTransactionResponse result = apiInstance.buildSwapTransaction(binanceChainId, amount, fromTokenAddress, toTokenAddress, userWalletAddress, quoteId)
.recvWindow(recvWindow)
.nonce(nonce)
+ .slippagePercent(slippagePercent)
.approveTransaction(approveTransaction)
.approveAmount(approveAmount)
.gasLimit(gasLimit)
@@ -88,17 +198,17 @@ public class Example {
| **amount** | **String**| Sell-token amount in the token's smallest unit (positive integer string, no decimals). | |
| **fromTokenAddress** | **String**| Sell-token contract address. | |
| **toTokenAddress** | **String**| Buy-token contract address. | |
-| **slippagePercent** | **String**| Maximum slippage as a percentage. EVM range 0–100; Solana range 0 to less than 100. \"0.5\" means 0.5%. | |
| **userWalletAddress** | **String**| User wallet address (transaction sender). | |
| **quoteId** | **String**| quoteId returned from `/quote` for the route to execute. TTL ~30s; expired entries return `QUOTE_EXPIRED` (40401). | |
| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **slippagePercent** | **String**| Maximum slippage tolerance as a percentage string. Required unless `autoSlippage=true`. **Range by chain:** - EVM chains (BSC, Ethereum, Base, etc.): `0` to `100` (inclusive) - Solana (`CT_501`): `0` to less than `100` (i.e. `< 100`) **Range by vendor:** - 1inch, PancakeSwap: `0` to `50` (values above 50 are rejected) - LiFi, LiquidMesh: `0` to `100` (EVM) or `0` to `< 100` (Solana) - Jupiter (Solana): `0` to less than `100`; the value is converted to basis points (`slippageBps = ceil(slippagePercent × 100)`) and applied to the on-chain swap `\"0.5\"` means 0.5% maximum slippage. When `autoSlippage=true` this field is overridden by the auto-computed value. | [optional] |
| **approveTransaction** | [**ApproveTransaction**](.md)| When \"true\", `signatureData` includes the spender address and approve calldata so the client can submit it before the swap. Defaults to false. | [optional] [enum: true, false] |
| **approveAmount** | **String**| Override approve amount (smallest unit, positive integer string). Defaults to the swap amount. | [optional] |
| **gasLimit** | **String**| Gas limit override (positive integer string). EVM only. | [optional] |
| **gasLevel** | [**GasLevel**](.md)| Gas price tier. Defaults to \"average\". | [optional] [enum: slow, average, fast] |
| **priceImpactProtectionPercent** | **String**| Maximum allowed price impact percentage (0–100). Defaults to 90; set to 100 to disable. | [optional] |
-| **autoSlippage** | [**AutoSlippage**](.md)| When \"true\", slippage is auto-derived from market data and overrides `slippagePercent`. Defaults to false. | [optional] [enum: true, false] |
+| **autoSlippage** | [**AutoSlippage**](.md)| When `\"true\"`, slippage is auto-derived from market data and overrides `slippagePercent`. Either `slippagePercent` or `autoSlippage=true` must be provided — omitting both returns a parameter error. Defaults to `\"false\"`. | [optional] [enum: true, false] |
| **maxAutoSlippagePercent** | **String**| Cap on auto-derived slippage (only applies when `autoSlippage=true`). | [optional] |
| **computeUnitLimit** | **String**| Solana only — maximum compute units the transaction may consume (analogous to EVM gasLimit). Applies only when `binanceChainId=CT_501`. | [optional] |
| **computeUnitPrice** | **String**| Solana only — priority fee per compute unit (micro-lamports), analogous to EVM gasPrice. When omitted, the platform computes a value dynamically. Applies only when `binanceChainId=CT_501`. | [optional] |
@@ -127,7 +237,7 @@ No authorization required
# **getAggregatedQuote**
-> GetAggregatedQuoteResponse getAggregatedQuote(binanceChainId, amount, fromTokenAddress, toTokenAddress).recvWindow(recvWindow).nonce(nonce).execute();
+> GetAggregatedQuoteResponse getAggregatedQuote(binanceChainId, amount, fromTokenAddress, toTokenAddress).recvWindow(recvWindow).nonce(nonce).userWalletAddress(userWalletAddress).execute();
Get Aggregated Quote
@@ -154,10 +264,12 @@ public class Example {
String toTokenAddress = "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"; // String | Buy-token contract address. Must differ from `fromTokenAddress`.
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String userWalletAddress = "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"; // String | User wallet address. Required when quoting RFQ routes (equity / RWA tokens such as Ondo and BStock). This address is used as the receiver in the RFQ order and must match the wallet that signs `rfq.typedDataToSign` in the subsequent `/swap` call.
try {
GetAggregatedQuoteResponse result = apiInstance.getAggregatedQuote(binanceChainId, amount, fromTokenAddress, toTokenAddress)
.recvWindow(recvWindow)
.nonce(nonce)
+ .userWalletAddress(userWalletAddress)
.execute();
System.out.println(result);
} catch (ApiException e) {
@@ -181,6 +293,7 @@ public class Example {
| **toTokenAddress** | **String**| Buy-token contract address. Must differ from `fromTokenAddress`. | |
| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **userWalletAddress** | **String**| User wallet address. Required when quoting RFQ routes (equity / RWA tokens such as Ondo and BStock). This address is used as the receiver in the RFQ order and must match the wallet that signs `rfq.typedDataToSign` in the subsequent `/swap` call. | [optional] |
### Return type
@@ -278,7 +391,7 @@ No authorization required
# **getErc20ApproveTransaction**
-> GetErc20ApproveTransactionResponse getErc20ApproveTransaction(binanceChainId, tokenContractAddress, approveAmount).recvWindow(recvWindow).nonce(nonce).execute();
+> GetErc20ApproveTransactionResponse getErc20ApproveTransaction(binanceChainId, tokenContractAddress, approveAmount).recvWindow(recvWindow).nonce(nonce).vendor(vendor).execute();
Get ERC-20 Approve Transaction
@@ -304,10 +417,12 @@ public class Example {
String approveAmount = "1000000"; // String | Approval amount in the token's smallest unit (positive integer string). Example \"1000000\" = 1 USDT (decimals=6).
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String vendor = "PcsXRfq"; // String | RFQ vendor name. **Required for equity / RWA tokens (Ondo, BStock)**; pass the `vendorName` from the `/quote` response (e.g. `InchFusion`, `CowSwap`, `PcsXRfq`). When provided, the backend returns approve calldata targeting the vendor-specific spender contract (e.g. 1inch Router, PcsX Permit2, CowSwap VaultRelayer) instead of the default DEX router. For regular (non-RWA) tokens, this parameter is optional. If omitted, the backend uses the standard DEX router. If a valid RFQ vendor is passed, the backend resolves that vendor's spender — used when buying Ondo/BStock with a stablecoin, where the from-token (e.g. USDT) itself is not an RFQ token but must be approved to the RFQ vendor's router.
try {
GetErc20ApproveTransactionResponse result = apiInstance.getErc20ApproveTransaction(binanceChainId, tokenContractAddress, approveAmount)
.recvWindow(recvWindow)
.nonce(nonce)
+ .vendor(vendor)
.execute();
System.out.println(result);
} catch (ApiException e) {
@@ -330,6 +445,7 @@ public class Example {
| **approveAmount** | **String**| Approval amount in the token's smallest unit (positive integer string). Example \"1000000\" = 1 USDT (decimals=6). | |
| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **vendor** | **String**| RFQ vendor name. **Required for equity / RWA tokens (Ondo, BStock)**; pass the `vendorName` from the `/quote` response (e.g. `InchFusion`, `CowSwap`, `PcsXRfq`). When provided, the backend returns approve calldata targeting the vendor-specific spender contract (e.g. 1inch Router, PcsX Permit2, CowSwap VaultRelayer) instead of the default DEX router. For regular (non-RWA) tokens, this parameter is optional. If omitted, the backend uses the standard DEX router. If a valid RFQ vendor is passed, the backend resolves that vendor's spender — used when buying Ondo/BStock with a stablecoin, where the from-token (e.g. USDT) itself is not an RFQ token but must be approved to the RFQ vendor's router. | [optional] |
### Return type
@@ -352,6 +468,78 @@ No authorization required
| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+# **getRfqOrderStatus**
+> GetRfqOrderStatusResponse getRfqOrderStatus(orderId).recvWindow(recvWindow).nonce(nonce).execute();
+
+Get RFQ Order Status
+
+Query the settlement status of an RFQ order by its platform `orderId` (returned by `POST /order/submit`). Poll this endpoint until `status` reaches a terminal state: `FILLED` (settled on-chain) or `FAILED` (settlement failed).
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.TradingApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ TradingApi apiInstance = new TradingApi(defaultClient);
+ String orderId = "oc-o-abc123def456"; // String | Platform order ID returned by `POST /order/submit`.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ try {
+ GetRfqOrderStatusResponse result = apiInstance.getRfqOrderStatus(orderId)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradingApi#getRfqOrderStatus");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **orderId** | **String**| Platform order ID returned by `POST /order/submit`. | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+
+### Return type
+
+[**GetRfqOrderStatusResponse**](GetRfqOrderStatusResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Order status returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
# **getTransactionStatus**
> GetTransactionStatusResponse getTransactionStatus(binanceChainId, txHash).recvWindow(recvWindow).nonce(nonce).execute();
@@ -426,3 +614,190 @@ No authorization required
| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+# **quoteAndBuildSwapTransaction**
+> QuoteAndBuildSwapTransactionResponse quoteAndBuildSwapTransaction(binanceChainId, amount, fromTokenAddress, toTokenAddress, userWalletAddress, vendor).recvWindow(recvWindow).nonce(nonce).slippagePercent(slippagePercent).approveTransaction(approveTransaction).approveAmount(approveAmount).gasLimit(gasLimit).gasLevel(gasLevel).priceImpactProtectionPercent(priceImpactProtectionPercent).autoSlippage(autoSlippage).maxAutoSlippagePercent(maxAutoSlippagePercent).computeUnitLimit(computeUnitLimit).computeUnitPrice(computeUnitPrice).tips(tips).execute();
+
+Quote and Build Swap Transaction (Flash API)
+
+Combines quoting and swap-transaction construction into a single call. Unlike the two-step `/quote` + `/swap` flow, this endpoint does not require a prior `/quote` call or a `quoteId` — it returns the executable calldata / swapTransaction directly, eliminating one HTTP round-trip. Use this endpoint for latency-sensitive trading when the vendor is known upfront. The response shape is identical to `/swap`, so clients can reuse the same response parsing logic for both endpoints.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.TradingApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ TradingApi apiInstance = new TradingApi(defaultClient);
+ String binanceChainId = "56"; // String | Unique chain identifier (e.g. \"56\"=BSC, \"1\"=Ethereum, \"CT_501\"=Solana).
+ String amount = "1000000"; // String | Sell-token amount in the token's smallest unit (positive integer string, no decimals).
+ String fromTokenAddress = "0x55d398326f99059fF775485246999027B3197955"; // String | Sell-token contract address.
+ String toTokenAddress = "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"; // String | Buy-token contract address.
+ String userWalletAddress = "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"; // String | User wallet address (transaction sender). For Solana, a Base58 system-account address with sufficient SOL for gas.
+ Vendor vendor = Vendor.fromValue("LiquidMesh"); // Vendor | Swap vendor to use for this request. **Required** — case-sensitive; must match one of the enum values. Any other value returns `PARAM_ERROR` (40001). For multi-vendor aggregation, use `/swap` with a `quoteId` instead.
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ String slippagePercent = "0.5"; // String | Maximum slippage tolerance as a percentage string. Required unless `autoSlippage=true`. **Range by chain:** - EVM chains (BSC, Ethereum, Base, etc.): `0` to `100` (inclusive) - Solana (`CT_501`): `0` to less than `100` (i.e. `< 100`) `\"0.5\"` means 0.5% maximum slippage. When `autoSlippage=true` this field is overridden by the auto-computed value.
+ ApproveTransaction approveTransaction = ApproveTransaction.fromValue("true"); // ApproveTransaction | When \"true\", `signatureData` includes the spender address and approve calldata so the client can submit it before the swap. Defaults to false.
+ String approveAmount = "1000000"; // String | Override approve amount (smallest unit, positive integer string). Defaults to the swap amount.
+ String gasLimit = "200000"; // String | Gas limit override (positive integer string). EVM only.
+ GasLevel gasLevel = GasLevel.fromValue("slow"); // GasLevel | Gas price tier. Defaults to \"average\".
+ String priceImpactProtectionPercent = "90"; // String | Maximum allowed price impact percentage (0–100). Defaults to 90; set to 100 to disable.
+ AutoSlippage autoSlippage = AutoSlippage.fromValue("true"); // AutoSlippage | When `\"true\"`, slippage is auto-derived from market data and overrides `slippagePercent`. Either `slippagePercent` or `autoSlippage=true` must be provided — omitting both returns a parameter error. Defaults to `\"false\"`.
+ String maxAutoSlippagePercent = "3"; // String | Cap on auto-derived slippage (only applies when `autoSlippage=true`).
+ String computeUnitLimit = "1400000"; // String | Solana only — maximum compute units the transaction may consume (analogous to EVM gasLimit). Applies only when `binanceChainId=CT_501`.
+ String computeUnitPrice = "1000"; // String | Solana only — priority fee per compute unit (micro-lamports), analogous to EVM gasPrice. When omitted, the platform computes a value dynamically. Applies only when `binanceChainId=CT_501`.
+ String tips = "0.001"; // String | Solana only — Jito tips in SOL for MEV protection. Valid range [0.000000001, 2] (minimum 1 lamport). When specified, it is recommended to set `computeUnitPrice=0`. Applies only when `binanceChainId=CT_501`.
+ try {
+ QuoteAndBuildSwapTransactionResponse result = apiInstance.quoteAndBuildSwapTransaction(binanceChainId, amount, fromTokenAddress, toTokenAddress, userWalletAddress, vendor)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .slippagePercent(slippagePercent)
+ .approveTransaction(approveTransaction)
+ .approveAmount(approveAmount)
+ .gasLimit(gasLimit)
+ .gasLevel(gasLevel)
+ .priceImpactProtectionPercent(priceImpactProtectionPercent)
+ .autoSlippage(autoSlippage)
+ .maxAutoSlippagePercent(maxAutoSlippagePercent)
+ .computeUnitLimit(computeUnitLimit)
+ .computeUnitPrice(computeUnitPrice)
+ .tips(tips)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradingApi#quoteAndBuildSwapTransaction");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"56\"=BSC, \"1\"=Ethereum, \"CT_501\"=Solana). | |
+| **amount** | **String**| Sell-token amount in the token's smallest unit (positive integer string, no decimals). | |
+| **fromTokenAddress** | **String**| Sell-token contract address. | |
+| **toTokenAddress** | **String**| Buy-token contract address. | |
+| **userWalletAddress** | **String**| User wallet address (transaction sender). For Solana, a Base58 system-account address with sufficient SOL for gas. | |
+| **vendor** | [**Vendor**](.md)| Swap vendor to use for this request. **Required** — case-sensitive; must match one of the enum values. Any other value returns `PARAM_ERROR` (40001). For multi-vendor aggregation, use `/swap` with a `quoteId` instead. | [enum: LiquidMesh] |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+| **slippagePercent** | **String**| Maximum slippage tolerance as a percentage string. Required unless `autoSlippage=true`. **Range by chain:** - EVM chains (BSC, Ethereum, Base, etc.): `0` to `100` (inclusive) - Solana (`CT_501`): `0` to less than `100` (i.e. `< 100`) `\"0.5\"` means 0.5% maximum slippage. When `autoSlippage=true` this field is overridden by the auto-computed value. | [optional] |
+| **approveTransaction** | [**ApproveTransaction**](.md)| When \"true\", `signatureData` includes the spender address and approve calldata so the client can submit it before the swap. Defaults to false. | [optional] [enum: true, false] |
+| **approveAmount** | **String**| Override approve amount (smallest unit, positive integer string). Defaults to the swap amount. | [optional] |
+| **gasLimit** | **String**| Gas limit override (positive integer string). EVM only. | [optional] |
+| **gasLevel** | [**GasLevel**](.md)| Gas price tier. Defaults to \"average\". | [optional] [enum: slow, average, fast] |
+| **priceImpactProtectionPercent** | **String**| Maximum allowed price impact percentage (0–100). Defaults to 90; set to 100 to disable. | [optional] |
+| **autoSlippage** | [**AutoSlippage**](.md)| When `\"true\"`, slippage is auto-derived from market data and overrides `slippagePercent`. Either `slippagePercent` or `autoSlippage=true` must be provided — omitting both returns a parameter error. Defaults to `\"false\"`. | [optional] [enum: true, false] |
+| **maxAutoSlippagePercent** | **String**| Cap on auto-derived slippage (only applies when `autoSlippage=true`). | [optional] |
+| **computeUnitLimit** | **String**| Solana only — maximum compute units the transaction may consume (analogous to EVM gasLimit). Applies only when `binanceChainId=CT_501`. | [optional] |
+| **computeUnitPrice** | **String**| Solana only — priority fee per compute unit (micro-lamports), analogous to EVM gasPrice. When omitted, the platform computes a value dynamically. Applies only when `binanceChainId=CT_501`. | [optional] |
+| **tips** | **String**| Solana only — Jito tips in SOL for MEV protection. Valid range [0.000000001, 2] (minimum 1 lamport). When specified, it is recommended to set `computeUnitPrice=0`. Applies only when `binanceChainId=CT_501`. | [optional] |
+
+### Return type
+
+[**QuoteAndBuildSwapTransactionResponse**](QuoteAndBuildSwapTransactionResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | Swap transaction data returned successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
+
+# **submitRfqOrder**
+> SubmitRfqOrderResponse submitRfqOrder(submitRfqOrderRequest).recvWindow(recvWindow).nonce(nonce).execute();
+
+Submit RFQ Order
+
+Submit a signed RFQ order to the backend for on-chain settlement via the corresponding vendor relayer. Only used when `executionMode=RFQ` (equity / RWA tokens such as Ondo and BStock). **Flow**: `GET /quote` → pick an RFQ route → `GET /swap` → sign `rfq.typedDataToSign` with EIP-712 (`eth_signTypedData_v4`) → call this endpoint → poll `GET /order/{orderId}` until `FILLED` or `FAILED`. **Idempotency**: Submitting with the same `requestId` within 30 minutes returns the original result without re-calling the vendor. Use a new UUID for each distinct order; reuse the same UUID when retrying.
+
+### Example
+```java
+// Import classes:
+import com.binance.connector.client.web3_wallet.ApiClient;
+import com.binance.connector.client.web3_wallet.ApiException;
+import com.binance.connector.client.web3_wallet.Configuration;
+import com.binance.connector.client.web3_wallet.models.*;
+import com.binance.connector.client.web3_wallet.rest.api.TradingApi;
+
+public class Example {
+ public static void main(String[] args) {
+ ApiClient defaultClient = Configuration.getDefaultApiClient();
+ defaultClient.setBasePath("https://web3.binance.com/build");
+
+ TradingApi apiInstance = new TradingApi(defaultClient);
+ SubmitRfqOrderRequest submitRfqOrderRequest = new SubmitRfqOrderRequest(); // SubmitRfqOrderRequest |
+ Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
+ try {
+ SubmitRfqOrderResponse result = apiInstance.submitRfqOrder(submitRfqOrderRequest)
+ .recvWindow(recvWindow)
+ .nonce(nonce)
+ .execute();
+ System.out.println(result);
+ } catch (ApiException e) {
+ System.err.println("Exception when calling TradingApi#submitRfqOrder");
+ System.err.println("Status code: " + e.getCode());
+ System.err.println("Reason: " + e.getResponseBody());
+ System.err.println("Response headers: " + e.getResponseHeaders());
+ e.printStackTrace();
+ }
+ }
+}
+```
+
+### Parameters
+
+| Name | Type | Description | Notes |
+|------------- | ------------- | ------------- | -------------|
+| **submitRfqOrderRequest** | [**SubmitRfqOrderRequest**](SubmitRfqOrderRequest.md)| | |
+| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
+| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
+
+### Return type
+
+[**SubmitRfqOrderResponse**](SubmitRfqOrderResponse.md)
+
+### Authorization
+
+No authorization required
+
+### HTTP request headers
+
+ - **Content-Type**: application/x-www-form-urlencoded
+ - **Accept**: application/json
+
+### HTTP response details
+| Status code | Description | Response headers |
+|-------------|-------------|------------------|
+| **200** | RFQ order submitted successfully. | - |
+| **401** | Unauthorized. The request is missing or contains an invalid API key. | - |
+| **403** | Forbidden. The API key does not have permission to access this endpoint. | - |
+| **404** | Not Found. The requested resource or endpoint does not exist. | - |
+
diff --git a/clients/web3-wallet/docs/TransactionApi.md b/clients/web3-wallet/docs/TransactionApi.md
index af1bffd..8e9e4b3 100644
--- a/clients/web3-wallet/docs/TransactionApi.md
+++ b/clients/web3-wallet/docs/TransactionApi.md
@@ -18,7 +18,7 @@ All URIs are relative to *https://web3.binance.com/build*
Broadcast Transactions
-Broadcast a client-signed transaction to the chain via the Binance Web3 API relay. Returns the transaction hash and an internal `orderId` you can use to track on-chain status via the post-transaction service. Optional MEV protection (EVM chains only) routes the transaction through a private mempool to mitigate front-running and sandwich attacks.
+Broadcast a client-signed transaction to the chain via the Binance Web3 API relay. Returns the transaction hash and an internal `orderId` you can use to track on-chain status via the post-transaction service. Optional MEV protection (EVM chains only) routes the transaction through a private mempool to mitigate front-running and sandwich attacks. Tron and Solana do not support MEV protection; the flag is ignored on these chains.
### Example
```java
@@ -176,7 +176,7 @@ No authorization required
Get Gas Limit
-Estimate the gas limit (or compute-unit ceiling on Solana) for an unsigned transaction. Provide either `evmTx` for EVM chains or `solTx` for Solana, matching the value of `binanceChainId`.
+Estimate the gas limit (or compute-unit ceiling on Solana) for an unsigned transaction. Provide either `evmTx` for EVM chains, `solTx` for Solana, or `tronTx` for Tron (\"CT_195\"), matching the value of `binanceChainId`. On Tron the response carries energy/bandwidth fields instead of a single gas limit; `gasLimit` is the fee limit (in sun) and the energy/bandwidth fields describe resource consumption and pricing.
### Example
```java
@@ -248,7 +248,7 @@ No authorization required
Get Gas Price
-Query the current network gas price for the specified chain. The response shape varies by chain family: - EVM chains return both `evmLegacyGasPrice` (legacy gasPrice) and `eip1559GasPrice` (baseFee + priority/max fees) when EIP-1559 is supported. - Solana returns `solanaGasPrice` (compute-unit prices and Jito tips). Fields not applicable to the chain family are returned as `null`.
+Query the current network gas price for the specified chain. The response shape varies by chain family: - EVM chains return both `evmLegacyGasPrice` (legacy gasPrice) and `eip1559GasPrice` (baseFee + priority/max fees) when EIP-1559 is supported. - Solana returns `solanaGasPrice` (compute-unit prices and Jito tips). - Tron (\"CT_195\") returns an empty `data` object because Tron has no on-chain gas-price concept; use the gas-limit endpoint instead. Fields not applicable to the chain family are returned as `null`.
### Example
```java
@@ -265,7 +265,7 @@ public class Example {
defaultClient.setBasePath("https://web3.binance.com/build");
TransactionApi apiInstance = new TransactionApi(defaultClient);
- String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana).
+ String binanceChainId = "1"; // String | Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana, \"CT_195\"=Tron).
Long recvWindow = 5000L; // Long | Allowed time deviation in milliseconds (default: 5000, max: 60000).
String nonce = "unique-nonce-string"; // String | Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted.
try {
@@ -289,7 +289,7 @@ public class Example {
| Name | Type | Description | Notes |
|------------- | ------------- | ------------- | -------------|
-| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana). | |
+| **binanceChainId** | **String**| Unique chain identifier (e.g. \"1\"=Ethereum, \"56\"=BSC, \"CT_501\"=Solana, \"CT_195\"=Tron). | |
| **recvWindow** | **Long**| Allowed time deviation in milliseconds (default: 5000, max: 60000). | [optional] |
| **nonce** | **String**| Unique request identifier for anti-replay; falls back to X-OC-SIGN if omitted. | [optional] |
@@ -390,7 +390,7 @@ No authorization required
Simulate Transactions
-Simulate transaction execution off-chain to predict its outcome before broadcasting. The response includes the predicted execution status, balance changes per affected account/token, and ERC-20 allowance changes (EVM chains). Provide either `evmTx` (EVM chains) or `solTx` (Solana) matching `binanceChainId`.
+Simulate transaction execution off-chain to predict its outcome before broadcasting. The response includes the predicted execution status, balance changes per affected account/token, and ERC-20 allowance changes (EVM chains). Provide either `evmTx` (EVM chains), `solTx` (Solana), or `tronTx` (Tron \"CT_195\") matching `binanceChainId`. On Tron, `allowanceChanges` is returned as an empty array. Note: Metis (chainId 1088) is not supported by this endpoint.
### Example
```java
diff --git a/clients/web3-wallet/docs/Vendor.md b/clients/web3-wallet/docs/Vendor.md
new file mode 100644
index 0000000..54898d3
--- /dev/null
+++ b/clients/web3-wallet/docs/Vendor.md
@@ -0,0 +1,11 @@
+
+
+# Vendor
+
+## Enum
+
+
+* `LiquidMesh` (value: `"LiquidMesh"`)
+
+
+
diff --git a/clients/web3-wallet/docs/WalletType.md b/clients/web3-wallet/docs/WalletType.md
new file mode 100644
index 0000000..d703c1f
--- /dev/null
+++ b/clients/web3-wallet/docs/WalletType.md
@@ -0,0 +1,15 @@
+
+
+# WalletType
+
+## Enum
+
+
+* `WALLET_TYPE_1` (value: `"1"`)
+
+* `WALLET_TYPE_2` (value: `"2"`)
+
+* `WALLET_TYPE_3` (value: `"3"`)
+
+
+
diff --git a/clients/web3-wallet/example_rest.md b/clients/web3-wallet/example_rest.md
index 31d1861..1766171 100644
--- a/clients/web3-wallet/example_rest.md
+++ b/clients/web3-wallet/example_rest.md
@@ -1,31 +1,65 @@
-## Market
+## AddressPortfolio
-[GET /api/v1/dex/market/candles](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-candles) - getCandles - [GetCandlesExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetCandlesExample.java#L37)
+[GET /api/v1/dex/market/portfolio/token/latest-pnl](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-address-pn-lfor-specific-token) - getAddressPnLForSpecificToken - [GetAddressPnLForSpecificTokenExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetAddressPnLForSpecificTokenExample.java#L37)
-[GET /api/v1/dex/market/token/holder](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-holders-ranking) - getHoldersRanking - [GetHoldersRankingExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetHoldersRankingExample.java#L39)
+[GET /api/v1/dex/market/portfolio/overview](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-address-portfolio-overview) - getAddressPortfolioOverview - [GetAddressPortfolioOverviewExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetAddressPortfolioOverviewExample.java#L38)
-[GET /api/v1/dex/market/token/hot-token](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-hot-token-list) - getHotTokenList - [GetHotTokenListExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetHotTokenListExample.java#L39)
+[GET /api/v1/dex/market/portfolio/recent-pnl](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-address-recent-pn-l) - getAddressRecentPnL - [GetAddressRecentPnLExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetAddressRecentPnLExample.java#L36)
-[GET /api/v1/dex/market/supported/chain](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-supported-chains) - getSupportedChains - [GetSupportedChainsExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetSupportedChainsExample.java#L36)
+[GET /api/v1/dex/market/portfolio/dex-history](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-dex-trade-history) - getDexTradeHistory - [GetDexTradeHistoryExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetDexTradeHistoryExample.java#L38)
-[GET /api/v1/dex/market/token/advanced-info](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-token-advanced-info) - getTokenAdvancedInfo - [GetTokenAdvancedInfoExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTokenAdvancedInfoExample.java#L38)
+[GET /api/v1/dex/market/leaderboard/list](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-leaderboard) - getLeaderboard - [GetLeaderboardExample.java:40](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetLeaderboardExample.java#L40)
-[POST /api/v1/dex/market/token/basic-info](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-token-basic-info) - getTokenBasicInfo - [GetTokenBasicInfoExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTokenBasicInfoExample.java#L37)
+[GET /api/v1/dex/market/portfolio/supported/chain](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-portfolio-supported-chains) - getPortfolioSupportedChains - [GetPortfolioSupportedChainsExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetPortfolioSupportedChainsExample.java#L36)
-[POST /api/v1/dex/market/price](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-token-price) - getTokenPrice - [GetTokenPriceExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTokenPriceExample.java#L36)
+[GET /api/v1/dex/market/address-tracker/trades](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/address-portfolio#get-tracked-trades) - getTrackedTrades - [GetTrackedTradesExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/addressportfolio/GetTrackedTradesExample.java#L38)
-[GET /api/v1/dex/market/trades](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-token-trades) - getTokenTrades - [GetTokenTradesExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTokenTradesExample.java#L38)
+## GeneralData
-[POST /api/v1/dex/market/price-info](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-token-trading-info) - getTokenTradingInfo - [GetTokenTradingInfoExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTokenTradingInfoExample.java#L37)
+[GET /api/v1/dex/market/candles](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-candles) - getCandles - [GetCandlesExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetCandlesExample.java#L37)
-[GET /api/v1/dex/market/token/top-liquidity](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-top-liquidity-pools) - getTopLiquidityPools - [GetTopLiquidityPoolsExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTopLiquidityPoolsExample.java#L37)
+[GET /api/v1/dex/market/token/holder](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-holders-ranking) - getHoldersRanking - [GetHoldersRankingExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetHoldersRankingExample.java#L39)
-[GET /api/v1/dex/market/token/top-trader](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#get-top-traders) - getTopTraders - [GetTopTradersExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/GetTopTradersExample.java#L39)
+[GET /api/v1/dex/market/token/hot-token](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-hot-token-list) - getHotTokenList - [GetHotTokenListExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetHotTokenListExample.java#L39)
-[GET /api/v1/dex/market/token/search](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/market-api#search-token) - searchToken - [SearchTokenExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/market/SearchTokenExample.java#L36)
+[GET /api/v1/dex/market/supported/chain](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-supported-chains) - getSupportedChains - [GetSupportedChainsExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetSupportedChainsExample.java#L36)
+
+[GET /api/v1/dex/market/token/advanced-info](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-token-advanced-info) - getTokenAdvancedInfo - [GetTokenAdvancedInfoExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTokenAdvancedInfoExample.java#L38)
+
+[POST /api/v1/dex/market/token/basic-info](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-token-basic-info) - getTokenBasicInfo - [GetTokenBasicInfoExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTokenBasicInfoExample.java#L37)
+
+[GET /api/v1/dex/market/memepump/tokenDevInfo](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-token-dev-info) - getTokenDevInfo - [GetTokenDevInfoExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTokenDevInfoExample.java#L37)
+
+[POST /api/v1/dex/market/price](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-token-price) - getTokenPrice - [GetTokenPriceExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTokenPriceExample.java#L36)
+
+[GET /api/v1/dex/market/trades](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-token-trades) - getTokenTrades - [GetTokenTradesExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTokenTradesExample.java#L38)
+
+[POST /api/v1/dex/market/price-info](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-token-trading-info) - getTokenTradingInfo - [GetTokenTradingInfoExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTokenTradingInfoExample.java#L37)
+
+[GET /api/v1/dex/market/token/top-liquidity](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-top-liquidity-pools) - getTopLiquidityPools - [GetTopLiquidityPoolsExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTopLiquidityPoolsExample.java#L37)
+
+[GET /api/v1/dex/market/token/top-trader](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#get-top-traders) - getTopTraders - [GetTopTradersExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/GetTopTradersExample.java#L39)
+
+[GET /api/v1/dex/market/token/search](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/general-data#search-token) - searchToken - [SearchTokenExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/generaldata/SearchTokenExample.java#L36)
+
+## RwaData
+
+[GET /api/v1/dex/market/rwa/platforms](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/rwa-data#get-rwa-token-issuance-platforms) - getRwaTokenIssuancePlatforms - [GetRwaTokenIssuancePlatformsExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/rwadata/GetRwaTokenIssuancePlatformsExample.java#L37)
+
+[GET /api/v1/dex/market/rwa/tokens](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/rwa-data#get-rwa-token-list) - getRwaTokenList - [GetRwaTokenListExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/rwadata/GetRwaTokenListExample.java#L38)
+
+[GET /api/v1/dex/market/rwa/price](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/rwa-data#get-rwa-token-price) - getRwaTokenPrice - [GetRwaTokenPriceExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/rwadata/GetRwaTokenPriceExample.java#L36)
+
+[GET /api/v1/dex/market/rwa/underlying-profile](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/rwa-data#get-rwa-underlying-info) - getRwaUnderlyingInfo - [GetRwaUnderlyingInfoExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/rwadata/GetRwaUnderlyingInfoExample.java#L36)
+
+[GET /api/v1/dex/market/rwa/underlying-market](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/rwa-data#get-rwa-underlying-market-data) - getRwaUnderlyingMarketData - [GetRwaUnderlyingMarketDataExample.java:36](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/rwadata/GetRwaUnderlyingMarketDataExample.java#L36)
+
+[GET /api/v1/dex/market/rwa/search](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/rwa-data#search-rwa-token) - searchRwaToken - [SearchRwaTokenExample.java:37](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/rwadata/SearchRwaTokenExample.java#L37)
## Trading
+[GET /api/v1/dex/aggregator/swap-instruction](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#build-solana-swap-instructions) - buildSolanaSwapInstructions - [BuildSolanaSwapInstructionsExample.java:50](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/BuildSolanaSwapInstructionsExample.java#L50)
+
[GET /api/v1/dex/aggregator/swap](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#build-swap-transaction) - buildSwapTransaction - [BuildSwapTransactionExample.java:42](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/BuildSwapTransactionExample.java#L42)
[GET /api/v1/dex/aggregator/quote](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#get-aggregated-quote) - getAggregatedQuote - [GetAggregatedQuoteExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/GetAggregatedQuoteExample.java#L38)
@@ -34,31 +68,37 @@
[GET /api/v1/dex/aggregator/approve-transaction](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#get-erc20-approve-transaction) - getErc20ApproveTransaction - [GetErc20ApproveTransactionExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/GetErc20ApproveTransactionExample.java#L38)
+[GET /api/v1/dex/aggregator/order/{orderId}](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#get-rfq-order-status) - getRfqOrderStatus - [GetRfqOrderStatusExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/GetRfqOrderStatusExample.java#L39)
+
[GET /api/v1/dex/aggregator/history](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#get-transaction-status) - getTransactionStatus - [GetTransactionStatusExample.java:42](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/GetTransactionStatusExample.java#L42)
+[GET /api/v1/dex/aggregator/quote-and-swap](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#quote-and-build-swap-transaction) - quoteAndBuildSwapTransaction - [QuoteAndBuildSwapTransactionExample.java:46](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/QuoteAndBuildSwapTransactionExample.java#L46)
+
+[POST /api/v1/dex/aggregator/order/submit](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/trading-api#submit-rfq-order) - submitRfqOrder - [SubmitRfqOrderExample.java:44](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/trading/SubmitRfqOrderExample.java#L44)
+
## Transaction
-[POST /api/v1/dex/pre-transaction/broadcast-transaction](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#broadcast-transactions) - broadcastTransactions - [BroadcastTransactionsExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/BroadcastTransactionsExample.java#L39)
+[POST /api/v1/dex/pre-transaction/broadcast-transaction](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#broadcast-transactions) - broadcastTransactions - [BroadcastTransactionsExample.java:40](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/BroadcastTransactionsExample.java#L40)
[GET /api/v1/dex/post-transaction/orders](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#get-broadcast-orders) - getBroadcastOrders - [GetBroadcastOrdersExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/GetBroadcastOrdersExample.java#L38)
-[POST /api/v1/dex/pre-transaction/gas-limit](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#get-gas-limit) - getGasLimit - [GetGasLimitExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/GetGasLimitExample.java#L38)
+[POST /api/v1/dex/pre-transaction/gas-limit](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#get-gas-limit) - getGasLimit - [GetGasLimitExample.java:41](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/GetGasLimitExample.java#L41)
-[GET /api/v1/dex/pre-transaction/gas-price](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#get-gas-price) - getGasPrice - [GetGasPriceExample.java:40](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/GetGasPriceExample.java#L40)
+[GET /api/v1/dex/pre-transaction/gas-price](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#get-gas-price) - getGasPrice - [GetGasPriceExample.java:42](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/GetGasPriceExample.java#L42)
[GET /api/v1/dex/pre-transaction/supported/chain](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#get-transaction-supported-chains) - getTransactionSupportedChains - [GetTransactionSupportedChainsExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/GetTransactionSupportedChainsExample.java#L38)
-[POST /api/v1/dex/pre-transaction/simulate](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#simulate-transactions) - simulateTransactions - [SimulateTransactionsExample.java:39](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/SimulateTransactionsExample.java#L39)
+[POST /api/v1/dex/pre-transaction/simulate](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/transaction-api#simulate-transactions) - simulateTransactions - [SimulateTransactionsExample.java:41](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/transaction/SimulateTransactionsExample.java#L41)
## Wallet
-[GET /api/v1/dex/balance/all-token-balances-by-address](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-all-token-balances-by-address) - getAllTokenBalancesByAddress - [GetAllTokenBalancesByAddressExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/wallet/GetAllTokenBalancesByAddressExample.java#L38)
+[GET /api/v1/dex/balance/all-token-balances-by-address](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-all-token-balances-by-address) - getAllTokenBalancesByAddress - []()
-[POST /api/v1/dex/balance/token-balances-by-address](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-token-balances-by-address) - getTokenBalancesByAddress - [GetTokenBalancesByAddressExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/wallet/GetTokenBalancesByAddressExample.java#L38)
+[POST /api/v1/dex/balance/token-balances-by-address](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-token-balances-by-address) - getTokenBalancesByAddress - []()
-[GET /api/v1/dex/post-transaction/transaction-detail-by-txhash](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-transaction-detail-by-hash) - getTransactionDetailByHash - [GetTransactionDetailByHashExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/wallet/GetTransactionDetailByHashExample.java#L38)
+[GET /api/v1/dex/post-transaction/transaction-detail-by-txhash](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-transaction-detail-by-hash) - getTransactionDetailByHash - []()
-[GET /api/v1/dex/post-transaction/transactions-by-address](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-transactions-by-address) - getTransactionsByAddress - [GetTransactionsByAddressExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/wallet/GetTransactionsByAddressExample.java#L38)
+[GET /api/v1/dex/post-transaction/transactions-by-address](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-transactions-by-address) - getTransactionsByAddress - []()
-[GET /api/v1/dex/balance/supported/chain](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-wallet-supported-chains) - getWalletSupportedChains - [GetWalletSupportedChainsExample.java:38](/examples/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/wallet/GetWalletSupportedChainsExample.java#L38)
+[GET /api/v1/dex/balance/supported/chain](https://web3.binance.com/en/dev-docs/catalog/web3-wallet/api/rest-api/wallet-api#get-wallet-supported-chains) - getWalletSupportedChains - []()
diff --git a/clients/web3-wallet/pom.xml b/clients/web3-wallet/pom.xml
index e05a53b..898bdd1 100644
--- a/clients/web3-wallet/pom.xml
+++ b/clients/web3-wallet/pom.xml
@@ -5,7 +5,7 @@
4.0.0
binance-web3-wallet
web3-wallet
- 2.0.0
+ 3.0.0
jar
diff --git a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/JSON.java b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/JSON.java
index 99ac24e..bac1c44 100644
--- a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/JSON.java
+++ b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/JSON.java
@@ -117,12 +117,60 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.BroadcastTransactionsResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataInstructionListsInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataInstructionListsInnerAccountsInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResult
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerDexProtocol
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerFromToken
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResultDexRouterListInnerToToken
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResultFromToken
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataRouterResultToToken
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSolanaSwapInstructionsResponseDataTx.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.BuildSwapTransactionResponse
.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.BuildSwapTransactionResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .BuildSwapTransactionResponseDataRfq.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.BuildSwapTransactionResponseDataRouterResult.CustomTypeAdapterFactory());
@@ -153,6 +201,43 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.BuildSwapTransactionResponseDataTx.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPnLForSpecificTokenResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPnLForSpecificTokenResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPortfolioOverviewResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPortfolioOverviewResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPortfolioOverviewResponseDataDailyPnlInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPortfolioOverviewResponseDataTokenCountByPnlPercent
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressPortfolioOverviewResponseDataTopPnlTokenListInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetAddressRecentPnLResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressRecentPnLResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressRecentPnLResponseDataPnlListInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetAddressRecentPnLResponseDataPnlListInnerTokenPositionDuration
+ .CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetAggregatedQuoteResponse
.CustomTypeAdapterFactory());
@@ -209,6 +294,16 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetCandlesResponse
.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetDexTradeHistoryResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetDexTradeHistoryResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetDexTradeHistoryResponseDataTransactionListInner
+ .CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.GetErc20ApproveTransactionResponse.CustomTypeAdapterFactory());
@@ -224,6 +319,16 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetGasLimitRequestSolTx
.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetGasLimitRequestTronTx
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetGasLimitRequestTronTxTransferContractParams.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetGasLimitRequestTronTxTriggerSmartContractParams
+ .CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetGasLimitResponse
.CustomTypeAdapterFactory());
@@ -264,6 +369,91 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.GetHotTokenListResponseDataItemsInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetLeaderboardResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetLeaderboardResponseData
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetLeaderboardResponseDataItemsInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetLeaderboardResponseDataItemsInnerDailyPnlInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetLeaderboardResponseDataItemsInnerTokenCountByPnlPercent
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetLeaderboardResponseDataItemsInnerTopPnlTokenListInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetPortfolioSupportedChainsResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetPortfolioSupportedChainsResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetRfqOrderStatusResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRfqOrderStatusResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaTokenIssuancePlatformsResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaTokenIssuancePlatformsResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaTokenIssuancePlatformsResponseDataInnerChainDistributionInner
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetRwaTokenListResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaTokenListResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaTokenListResponseDataInnerStatusInfo.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetRwaTokenPriceResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaTokenPriceResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetRwaUnderlyingInfoResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingInfoResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingInfoResponseDataCompanyInfo.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingInfoResponseDataProtectionsValue
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingMarketDataResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingMarketDataResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingMarketDataResponseDataMarketData
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetRwaUnderlyingMarketDataResponseDataStatusInfo
+ .CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetSupportedChainsResponse
.CustomTypeAdapterFactory());
@@ -296,6 +486,18 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetTokenBasicInfoResponse
.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetTokenDevInfoResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetTokenDevInfoResponseData
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetTokenDevInfoResponseDataDevHoldingInfo.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetTokenDevInfoResponseDataDevLaunchedInfo.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.GetTokenPriceResponse
.CustomTypeAdapterFactory());
@@ -337,6 +539,15 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.GetTopTradersResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetTrackedTradesResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.GetTrackedTradesResponseData
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .GetTrackedTradesResponseDataTradesInner.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.GetTransactionDetailByHashResponse.CustomTypeAdapterFactory());
@@ -403,6 +614,24 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.GetWalletSupportedChainsResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .QuoteAndBuildSwapTransactionResponse.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .QuoteAndBuildSwapTransactionResponseData.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .QuoteAndBuildSwapTransactionResponseDataRfq.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.SearchRwaTokenResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .SearchRwaTokenResponseDataInner.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .SearchRwaTokenResponseDataInnerAssetsInner.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.SearchTokenResponse
.CustomTypeAdapterFactory());
@@ -418,6 +647,9 @@ private static Class getClassByDiscriminator(
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model
.SimulateTransactionsRequestSolTx.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model
+ .SimulateTransactionsRequestTronTx.CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.SimulateTransactionsResponse
.CustomTypeAdapterFactory());
@@ -432,6 +664,15 @@ private static Class getClassByDiscriminator(
new com.binance.connector.client.web3_wallet.rest.model
.SimulateTransactionsResponseDataBalanceChangesInner
.CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.SubmitRfqOrderRequest
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.SubmitRfqOrderResponse
+ .CustomTypeAdapterFactory());
+ gsonBuilder.registerTypeAdapterFactory(
+ new com.binance.connector.client.web3_wallet.rest.model.SubmitRfqOrderResponseData
+ .CustomTypeAdapterFactory());
gsonBuilder.registerTypeAdapterFactory(
new com.binance.connector.client.web3_wallet.rest.model.TagInfo
.CustomTypeAdapterFactory());
diff --git a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/AddressPortfolioApi.java b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/AddressPortfolioApi.java
new file mode 100644
index 0000000..ce77a4a
--- /dev/null
+++ b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/AddressPortfolioApi.java
@@ -0,0 +1,2303 @@
+/*
+ * Binance Web3 API
+ * Cross-chain wallet, market, trading, and transaction APIs for the Binance Web3 API platform.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+package com.binance.connector.client.web3_wallet.rest.api;
+
+import com.binance.connector.client.common.ApiException;
+import com.binance.connector.client.common.ApiResponse;
+import com.binance.connector.client.common.Pair;
+import com.binance.connector.client.common.SystemUtil;
+import com.binance.connector.client.common.configuration.ClientConfiguration;
+import com.binance.connector.client.common.exception.ConstraintViolationException;
+import com.binance.connector.client.web3.common.ApiClient;
+import com.binance.connector.client.web3_wallet.rest.model.GetAddressPnLForSpecificTokenResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetAddressPortfolioOverviewResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetAddressRecentPnLResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetDexTradeHistoryResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetLeaderboardResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetPortfolioSupportedChainsResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetTrackedTradesResponse;
+import com.binance.connector.client.web3_wallet.rest.model.OrderType;
+import com.binance.connector.client.web3_wallet.rest.model.SortBy;
+import com.binance.connector.client.web3_wallet.rest.model.TimeFrame;
+import com.binance.connector.client.web3_wallet.rest.model.TrackerType;
+import com.binance.connector.client.web3_wallet.rest.model.WalletType;
+import com.google.gson.reflect.TypeToken;
+import jakarta.validation.ConstraintViolation;
+import jakarta.validation.Validation;
+import jakarta.validation.Validator;
+import jakarta.validation.constraints.*;
+import jakarta.validation.executable.ExecutableValidator;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import org.hibernate.validator.messageinterpolation.ParameterMessageInterpolator;
+
+public class AddressPortfolioApi {
+ private ApiClient localVarApiClient;
+ private int localHostIndex;
+ private String localCustomBaseUrl;
+
+ private static final String USER_AGENT =
+ String.format(
+ "binance-web3-wallet/3.0.0 (Java/%s; %s; %s)",
+ SystemUtil.getJavaVersion(), SystemUtil.getOs(), SystemUtil.getArch());
+ private static final boolean HAS_TIME_UNIT = false;
+
+ public AddressPortfolioApi(ClientConfiguration clientConfiguration) {
+ this(new ApiClient(clientConfiguration));
+ }
+
+ public AddressPortfolioApi(ApiClient apiClient) {
+ apiClient.setUserAgent(USER_AGENT);
+ this.localVarApiClient = apiClient;
+ }
+
+ public ApiClient getApiClient() {
+ return localVarApiClient;
+ }
+
+ public void setApiClient(ApiClient apiClient) {
+ this.localVarApiClient = apiClient;
+ }
+
+ public int getHostIndex() {
+ return localHostIndex;
+ }
+
+ public void setHostIndex(int hostIndex) {
+ this.localHostIndex = hostIndex;
+ }
+
+ public String getCustomBaseUrl() {
+ return localCustomBaseUrl;
+ }
+
+ public void setCustomBaseUrl(String customBaseUrl) {
+ this.localCustomBaseUrl = customBaseUrl;
+ }
+
+ private okhttp3.Call getAddressPnLForSpecificTokenCall(
+ String binanceChainId,
+ String walletAddress,
+ String tokenContractAddress,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/portfolio/token/latest-pnl";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (walletAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("walletAddress", walletAddress));
+ }
+
+ if (tokenContractAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair(
+ "tokenContractAddress", tokenContractAddress));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getAddressPnLForSpecificTokenValidateBeforeCall(
+ String binanceChainId,
+ String walletAddress,
+ String tokenContractAddress,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {
+ binanceChainId, walletAddress, tokenContractAddress, recvWindow, nonce
+ };
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getAddressPnLForSpecificToken",
+ String.class,
+ String.class,
+ String.class,
+ Long.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getAddressPnLForSpecificTokenCall(
+ binanceChainId, walletAddress, tokenContractAddress, recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getAddressPnLForSpecificToken(
+ @NotNull String binanceChainId,
+ @NotNull String walletAddress,
+ @NotNull String tokenContractAddress,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getAddressPnLForSpecificTokenValidateBeforeCall(
+ binanceChainId, walletAddress, tokenContractAddress, recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getAddressPnLForSpecificToken(
+ GetAddressPnLForSpecificTokenRequest request) {
+ return getAddressPnLForSpecificToken(
+ request.getBinanceChainId(),
+ request.getWalletAddress(),
+ request.getTokenContractAddress(),
+ request.getRecvWindow(),
+ request.getNonce());
+ }
+
+ public static class GetAddressPnLForSpecificTokenRequest {
+ private final String binanceChainId;
+ private final String walletAddress;
+ private final String tokenContractAddress;
+ private Long recvWindow;
+ private String nonce;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getWalletAddress() {
+ return walletAddress;
+ }
+
+ public String getTokenContractAddress() {
+ return tokenContractAddress;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetAddressPnLForSpecificTokenRequest(
+ String binanceChainId, String walletAddress, String tokenContractAddress) {
+ this.binanceChainId = binanceChainId;
+ this.walletAddress = walletAddress;
+ this.tokenContractAddress = tokenContractAddress;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetAddressPnLForSpecificTokenRequest
+ */
+ public GetAddressPnLForSpecificTokenRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetAddressPnLForSpecificTokenRequest
+ */
+ public GetAddressPnLForSpecificTokenRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getAddressPortfolioOverviewCall(
+ String binanceChainId,
+ String walletAddress,
+ TimeFrame timeFrame,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/portfolio/overview";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (walletAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("walletAddress", walletAddress));
+ }
+
+ if (timeFrame != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("timeFrame", timeFrame));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getAddressPortfolioOverviewValidateBeforeCall(
+ String binanceChainId,
+ String walletAddress,
+ TimeFrame timeFrame,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {
+ binanceChainId, walletAddress, timeFrame, recvWindow, nonce
+ };
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getAddressPortfolioOverview",
+ String.class,
+ String.class,
+ TimeFrame.class,
+ Long.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getAddressPortfolioOverviewCall(
+ binanceChainId, walletAddress, timeFrame, recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getAddressPortfolioOverview(
+ @NotNull String binanceChainId,
+ @NotNull String walletAddress,
+ @NotNull TimeFrame timeFrame,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getAddressPortfolioOverviewValidateBeforeCall(
+ binanceChainId, walletAddress, timeFrame, recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getAddressPortfolioOverview(
+ GetAddressPortfolioOverviewRequest request) {
+ return getAddressPortfolioOverview(
+ request.getBinanceChainId(),
+ request.getWalletAddress(),
+ request.getTimeFrame(),
+ request.getRecvWindow(),
+ request.getNonce());
+ }
+
+ public static class GetAddressPortfolioOverviewRequest {
+ private final String binanceChainId;
+ private final String walletAddress;
+ private final TimeFrame timeFrame;
+ private Long recvWindow;
+ private String nonce;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getWalletAddress() {
+ return walletAddress;
+ }
+
+ public TimeFrame getTimeFrame() {
+ return timeFrame;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetAddressPortfolioOverviewRequest(
+ String binanceChainId, String walletAddress, TimeFrame timeFrame) {
+ this.binanceChainId = binanceChainId;
+ this.walletAddress = walletAddress;
+ this.timeFrame = timeFrame;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetAddressPortfolioOverviewRequest
+ */
+ public GetAddressPortfolioOverviewRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetAddressPortfolioOverviewRequest
+ */
+ public GetAddressPortfolioOverviewRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getAddressRecentPnLCall(
+ String binanceChainId,
+ String walletAddress,
+ Long recvWindow,
+ String nonce,
+ String cursor,
+ String limit)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/portfolio/recent-pnl";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (walletAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("walletAddress", walletAddress));
+ }
+
+ if (cursor != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("cursor", cursor));
+ }
+
+ if (limit != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getAddressRecentPnLValidateBeforeCall(
+ String binanceChainId,
+ String walletAddress,
+ Long recvWindow,
+ String nonce,
+ String cursor,
+ String limit)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {
+ binanceChainId, walletAddress, recvWindow, nonce, cursor, limit
+ };
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getAddressRecentPnL",
+ String.class,
+ String.class,
+ Long.class,
+ String.class,
+ String.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getAddressRecentPnLCall(
+ binanceChainId, walletAddress, recvWindow, nonce, cursor, limit);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getAddressRecentPnL(
+ @NotNull String binanceChainId,
+ @NotNull String walletAddress,
+ Long recvWindow,
+ String nonce,
+ String cursor,
+ String limit)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getAddressRecentPnLValidateBeforeCall(
+ binanceChainId, walletAddress, recvWindow, nonce, cursor, limit);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getAddressRecentPnL(
+ GetAddressRecentPnLRequest request) {
+ return getAddressRecentPnL(
+ request.getBinanceChainId(),
+ request.getWalletAddress(),
+ request.getRecvWindow(),
+ request.getNonce(),
+ request.getCursor(),
+ request.getLimit());
+ }
+
+ public static class GetAddressRecentPnLRequest {
+ private final String binanceChainId;
+ private final String walletAddress;
+ private Long recvWindow;
+ private String nonce;
+ private String cursor;
+ private String limit;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getWalletAddress() {
+ return walletAddress;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public String getCursor() {
+ return cursor;
+ }
+
+ public String getLimit() {
+ return limit;
+ }
+
+ public GetAddressRecentPnLRequest(String binanceChainId, String walletAddress) {
+ this.binanceChainId = binanceChainId;
+ this.walletAddress = walletAddress;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetAddressRecentPnLRequest
+ */
+ public GetAddressRecentPnLRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetAddressRecentPnLRequest
+ */
+ public GetAddressRecentPnLRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set cursor
+ *
+ * @param cursor Pagination cursor. Omit or pass empty string for the first page; pass the
+ * cursor from the previous response to get the next page. (optional)
+ * @return GetAddressRecentPnLRequest
+ */
+ public GetAddressRecentPnLRequest cursor(String cursor) {
+ this.cursor = cursor;
+ return this;
+ }
+
+ /**
+ * Set limit
+ *
+ * @param limit Number of records per page. Default 20, max 100. (optional)
+ * @return GetAddressRecentPnLRequest
+ */
+ public GetAddressRecentPnLRequest limit(String limit) {
+ this.limit = limit;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getDexTradeHistoryCall(
+ String binanceChainId,
+ String walletAddress,
+ Long recvWindow,
+ String nonce,
+ String begin,
+ String end,
+ String tokenContractAddress,
+ OrderType type,
+ String cursor,
+ String limit)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/portfolio/dex-history";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (walletAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("walletAddress", walletAddress));
+ }
+
+ if (begin != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("begin", begin));
+ }
+
+ if (end != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("end", end));
+ }
+
+ if (tokenContractAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair(
+ "tokenContractAddress", tokenContractAddress));
+ }
+
+ if (type != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("type", type));
+ }
+
+ if (cursor != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("cursor", cursor));
+ }
+
+ if (limit != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getDexTradeHistoryValidateBeforeCall(
+ String binanceChainId,
+ String walletAddress,
+ Long recvWindow,
+ String nonce,
+ String begin,
+ String end,
+ String tokenContractAddress,
+ OrderType type,
+ String cursor,
+ String limit)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {
+ binanceChainId,
+ walletAddress,
+ recvWindow,
+ nonce,
+ begin,
+ end,
+ tokenContractAddress,
+ type,
+ cursor,
+ limit
+ };
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getDexTradeHistory",
+ String.class,
+ String.class,
+ Long.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ OrderType.class,
+ String.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getDexTradeHistoryCall(
+ binanceChainId,
+ walletAddress,
+ recvWindow,
+ nonce,
+ begin,
+ end,
+ tokenContractAddress,
+ type,
+ cursor,
+ limit);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getDexTradeHistory(
+ @NotNull String binanceChainId,
+ @NotNull String walletAddress,
+ Long recvWindow,
+ String nonce,
+ String begin,
+ String end,
+ String tokenContractAddress,
+ OrderType type,
+ String cursor,
+ String limit)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getDexTradeHistoryValidateBeforeCall(
+ binanceChainId,
+ walletAddress,
+ recvWindow,
+ nonce,
+ begin,
+ end,
+ tokenContractAddress,
+ type,
+ cursor,
+ limit);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getDexTradeHistory(
+ GetDexTradeHistoryRequest request) {
+ return getDexTradeHistory(
+ request.getBinanceChainId(),
+ request.getWalletAddress(),
+ request.getRecvWindow(),
+ request.getNonce(),
+ request.getBegin(),
+ request.getEnd(),
+ request.getTokenContractAddress(),
+ request.getType(),
+ request.getCursor(),
+ request.getLimit());
+ }
+
+ public static class GetDexTradeHistoryRequest {
+ private final String binanceChainId;
+ private final String walletAddress;
+ private Long recvWindow;
+ private String nonce;
+ private String begin;
+ private String end;
+ private String tokenContractAddress;
+ private OrderType type;
+ private String cursor;
+ private String limit;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getWalletAddress() {
+ return walletAddress;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public String getBegin() {
+ return begin;
+ }
+
+ public String getEnd() {
+ return end;
+ }
+
+ public String getTokenContractAddress() {
+ return tokenContractAddress;
+ }
+
+ public OrderType getType() {
+ return type;
+ }
+
+ public String getCursor() {
+ return cursor;
+ }
+
+ public String getLimit() {
+ return limit;
+ }
+
+ public GetDexTradeHistoryRequest(String binanceChainId, String walletAddress) {
+ this.binanceChainId = binanceChainId;
+ this.walletAddress = walletAddress;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set begin
+ *
+ * @param begin Start timestamp (Unix milliseconds, inclusive). If both begin and end are
+ * omitted, no time filter is applied. (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest begin(String begin) {
+ this.begin = begin;
+ return this;
+ }
+
+ /**
+ * Set end
+ *
+ * @param end End timestamp (Unix milliseconds, inclusive). If both begin and end are
+ * omitted, no time filter is applied. (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest end(String end) {
+ this.end = end;
+ return this;
+ }
+
+ /**
+ * Set tokenContractAddress
+ *
+ * @param tokenContractAddress Filter by token contract address. Returns all tokens when
+ * omitted. (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest tokenContractAddress(String tokenContractAddress) {
+ this.tokenContractAddress = tokenContractAddress;
+ return this;
+ }
+
+ /**
+ * Set type
+ *
+ * @param type Trade type filter. 1=Buy, 2=Sell. Omit to return all types.
+ * (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest type(OrderType type) {
+ this.type = type;
+ return this;
+ }
+
+ /**
+ * Set cursor
+ *
+ * @param cursor Pagination cursor. Omit or pass empty string for the first page. (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest cursor(String cursor) {
+ this.cursor = cursor;
+ return this;
+ }
+
+ /**
+ * Set limit
+ *
+ * @param limit Number of records per page. Default 20, max 100. (optional)
+ * @return GetDexTradeHistoryRequest
+ */
+ public GetDexTradeHistoryRequest limit(String limit) {
+ this.limit = limit;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getLeaderboardCall(
+ String binanceChainId,
+ TimeFrame timeFrame,
+ SortBy sortBy,
+ Long recvWindow,
+ String nonce,
+ WalletType walletType,
+ String minRealizedPnlUsd,
+ String maxRealizedPnlUsd,
+ String minWinRatePercent,
+ String maxWinRatePercent,
+ String minTxs,
+ String maxTxs,
+ String minTxVolume,
+ String maxTxVolume,
+ String cursor,
+ String limit)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/leaderboard/list";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (timeFrame != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("timeFrame", timeFrame));
+ }
+
+ if (sortBy != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("sortBy", sortBy));
+ }
+
+ if (walletType != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("walletType", walletType));
+ }
+
+ if (minRealizedPnlUsd != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("minRealizedPnlUsd", minRealizedPnlUsd));
+ }
+
+ if (maxRealizedPnlUsd != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("maxRealizedPnlUsd", maxRealizedPnlUsd));
+ }
+
+ if (minWinRatePercent != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("minWinRatePercent", minWinRatePercent));
+ }
+
+ if (maxWinRatePercent != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("maxWinRatePercent", maxWinRatePercent));
+ }
+
+ if (minTxs != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("minTxs", minTxs));
+ }
+
+ if (maxTxs != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("maxTxs", maxTxs));
+ }
+
+ if (minTxVolume != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("minTxVolume", minTxVolume));
+ }
+
+ if (maxTxVolume != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("maxTxVolume", maxTxVolume));
+ }
+
+ if (cursor != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("cursor", cursor));
+ }
+
+ if (limit != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getLeaderboardValidateBeforeCall(
+ String binanceChainId,
+ TimeFrame timeFrame,
+ SortBy sortBy,
+ Long recvWindow,
+ String nonce,
+ WalletType walletType,
+ String minRealizedPnlUsd,
+ String maxRealizedPnlUsd,
+ String minWinRatePercent,
+ String maxWinRatePercent,
+ String minTxs,
+ String maxTxs,
+ String minTxVolume,
+ String maxTxVolume,
+ String cursor,
+ String limit)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {
+ binanceChainId,
+ timeFrame,
+ sortBy,
+ recvWindow,
+ nonce,
+ walletType,
+ minRealizedPnlUsd,
+ maxRealizedPnlUsd,
+ minWinRatePercent,
+ maxWinRatePercent,
+ minTxs,
+ maxTxs,
+ minTxVolume,
+ maxTxVolume,
+ cursor,
+ limit
+ };
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getLeaderboard",
+ String.class,
+ TimeFrame.class,
+ SortBy.class,
+ Long.class,
+ String.class,
+ WalletType.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getLeaderboardCall(
+ binanceChainId,
+ timeFrame,
+ sortBy,
+ recvWindow,
+ nonce,
+ walletType,
+ minRealizedPnlUsd,
+ maxRealizedPnlUsd,
+ minWinRatePercent,
+ maxWinRatePercent,
+ minTxs,
+ maxTxs,
+ minTxVolume,
+ maxTxVolume,
+ cursor,
+ limit);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getLeaderboard(
+ @NotNull String binanceChainId,
+ @NotNull TimeFrame timeFrame,
+ @NotNull SortBy sortBy,
+ Long recvWindow,
+ String nonce,
+ WalletType walletType,
+ String minRealizedPnlUsd,
+ String maxRealizedPnlUsd,
+ String minWinRatePercent,
+ String maxWinRatePercent,
+ String minTxs,
+ String maxTxs,
+ String minTxVolume,
+ String maxTxVolume,
+ String cursor,
+ String limit)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getLeaderboardValidateBeforeCall(
+ binanceChainId,
+ timeFrame,
+ sortBy,
+ recvWindow,
+ nonce,
+ walletType,
+ minRealizedPnlUsd,
+ maxRealizedPnlUsd,
+ minWinRatePercent,
+ maxWinRatePercent,
+ minTxs,
+ maxTxs,
+ minTxVolume,
+ maxTxVolume,
+ cursor,
+ limit);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getLeaderboard(GetLeaderboardRequest request) {
+ return getLeaderboard(
+ request.getBinanceChainId(),
+ request.getTimeFrame(),
+ request.getSortBy(),
+ request.getRecvWindow(),
+ request.getNonce(),
+ request.getWalletType(),
+ request.getMinRealizedPnlUsd(),
+ request.getMaxRealizedPnlUsd(),
+ request.getMinWinRatePercent(),
+ request.getMaxWinRatePercent(),
+ request.getMinTxs(),
+ request.getMaxTxs(),
+ request.getMinTxVolume(),
+ request.getMaxTxVolume(),
+ request.getCursor(),
+ request.getLimit());
+ }
+
+ public static class GetLeaderboardRequest {
+ private final String binanceChainId;
+ private final TimeFrame timeFrame;
+ private final SortBy sortBy;
+ private Long recvWindow;
+ private String nonce;
+ private WalletType walletType;
+ private String minRealizedPnlUsd;
+ private String maxRealizedPnlUsd;
+ private String minWinRatePercent;
+ private String maxWinRatePercent;
+ private String minTxs;
+ private String maxTxs;
+ private String minTxVolume;
+ private String maxTxVolume;
+ private String cursor;
+ private String limit;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public TimeFrame getTimeFrame() {
+ return timeFrame;
+ }
+
+ public SortBy getSortBy() {
+ return sortBy;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public WalletType getWalletType() {
+ return walletType;
+ }
+
+ public String getMinRealizedPnlUsd() {
+ return minRealizedPnlUsd;
+ }
+
+ public String getMaxRealizedPnlUsd() {
+ return maxRealizedPnlUsd;
+ }
+
+ public String getMinWinRatePercent() {
+ return minWinRatePercent;
+ }
+
+ public String getMaxWinRatePercent() {
+ return maxWinRatePercent;
+ }
+
+ public String getMinTxs() {
+ return minTxs;
+ }
+
+ public String getMaxTxs() {
+ return maxTxs;
+ }
+
+ public String getMinTxVolume() {
+ return minTxVolume;
+ }
+
+ public String getMaxTxVolume() {
+ return maxTxVolume;
+ }
+
+ public String getCursor() {
+ return cursor;
+ }
+
+ public String getLimit() {
+ return limit;
+ }
+
+ public GetLeaderboardRequest(String binanceChainId, TimeFrame timeFrame, SortBy sortBy) {
+ this.binanceChainId = binanceChainId;
+ this.timeFrame = timeFrame;
+ this.sortBy = sortBy;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set walletType
+ *
+ * @param walletType Wallet type filter, single selection only. 1=Smart Money,
+ * 2=KOL, 3=Hot List. Returns all types when omitted. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest walletType(WalletType walletType) {
+ this.walletType = walletType;
+ return this;
+ }
+
+ /**
+ * Set minRealizedPnlUsd
+ *
+ * @param minRealizedPnlUsd Minimum realized PnL filter, denominated in USD. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest minRealizedPnlUsd(String minRealizedPnlUsd) {
+ this.minRealizedPnlUsd = minRealizedPnlUsd;
+ return this;
+ }
+
+ /**
+ * Set maxRealizedPnlUsd
+ *
+ * @param maxRealizedPnlUsd Maximum realized PnL filter, denominated in USD. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest maxRealizedPnlUsd(String maxRealizedPnlUsd) {
+ this.maxRealizedPnlUsd = maxRealizedPnlUsd;
+ return this;
+ }
+
+ /**
+ * Set minWinRatePercent
+ *
+ * @param minWinRatePercent Minimum win rate filter, without percent sign. \"50\"
+ * means ≥50%. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest minWinRatePercent(String minWinRatePercent) {
+ this.minWinRatePercent = minWinRatePercent;
+ return this;
+ }
+
+ /**
+ * Set maxWinRatePercent
+ *
+ * @param maxWinRatePercent Maximum win rate filter, without percent sign. \"90\"
+ * means ≤90%. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest maxWinRatePercent(String maxWinRatePercent) {
+ this.maxWinRatePercent = maxWinRatePercent;
+ return this;
+ }
+
+ /**
+ * Set minTxs
+ *
+ * @param minTxs Minimum transaction count filter. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest minTxs(String minTxs) {
+ this.minTxs = minTxs;
+ return this;
+ }
+
+ /**
+ * Set maxTxs
+ *
+ * @param maxTxs Maximum transaction count filter. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest maxTxs(String maxTxs) {
+ this.maxTxs = maxTxs;
+ return this;
+ }
+
+ /**
+ * Set minTxVolume
+ *
+ * @param minTxVolume Minimum total transaction volume filter, denominated in USD.
+ * (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest minTxVolume(String minTxVolume) {
+ this.minTxVolume = minTxVolume;
+ return this;
+ }
+
+ /**
+ * Set maxTxVolume
+ *
+ * @param maxTxVolume Maximum total transaction volume filter, denominated in USD.
+ * (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest maxTxVolume(String maxTxVolume) {
+ this.maxTxVolume = maxTxVolume;
+ return this;
+ }
+
+ /**
+ * Set cursor
+ *
+ * @param cursor Pagination cursor. Omit or pass empty string for the first page. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest cursor(String cursor) {
+ this.cursor = cursor;
+ return this;
+ }
+
+ /**
+ * Set limit
+ *
+ * @param limit Number of records per page. Default 50, max 50. (optional)
+ * @return GetLeaderboardRequest
+ */
+ public GetLeaderboardRequest limit(String limit) {
+ this.limit = limit;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getPortfolioSupportedChainsCall(Long recvWindow, String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/portfolio/supported/chain";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getPortfolioSupportedChainsValidateBeforeCall(
+ Long recvWindow, String nonce) throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {recvWindow, nonce};
+ Method method =
+ this.getClass()
+ .getMethod("getPortfolioSupportedChains", Long.class, String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getPortfolioSupportedChainsCall(recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getPortfolioSupportedChains(
+ Long recvWindow, String nonce) throws ApiException {
+ okhttp3.Call localVarCall =
+ getPortfolioSupportedChainsValidateBeforeCall(recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getPortfolioSupportedChains(
+ GetPortfolioSupportedChainsRequest request) {
+ return getPortfolioSupportedChains(request.getRecvWindow(), request.getNonce());
+ }
+
+ public static class GetPortfolioSupportedChainsRequest {
+ private Long recvWindow;
+ private String nonce;
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetPortfolioSupportedChainsRequest() {}
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetPortfolioSupportedChainsRequest
+ */
+ public GetPortfolioSupportedChainsRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetPortfolioSupportedChainsRequest
+ */
+ public GetPortfolioSupportedChainsRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getTrackedTradesCall(
+ TrackerType trackerType,
+ Long recvWindow,
+ String nonce,
+ String walletAddress,
+ String tradeType,
+ String binanceChainId,
+ String minVolume,
+ String maxVolume,
+ String minMarketCap,
+ String maxMarketCap,
+ Boolean isHideRiskToken,
+ Integer limit)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/address-tracker/trades";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (trackerType != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("trackerType", trackerType));
+ }
+
+ if (walletAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("walletAddress", walletAddress));
+ }
+
+ if (tradeType != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("tradeType", tradeType));
+ }
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (minVolume != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("minVolume", minVolume));
+ }
+
+ if (maxVolume != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("maxVolume", maxVolume));
+ }
+
+ if (minMarketCap != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("minMarketCap", minMarketCap));
+ }
+
+ if (maxMarketCap != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("maxMarketCap", maxMarketCap));
+ }
+
+ if (isHideRiskToken != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("isHideRiskToken", isHideRiskToken));
+ }
+
+ if (limit != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("limit", limit));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getTrackedTradesValidateBeforeCall(
+ TrackerType trackerType,
+ Long recvWindow,
+ String nonce,
+ String walletAddress,
+ String tradeType,
+ String binanceChainId,
+ String minVolume,
+ String maxVolume,
+ String minMarketCap,
+ String maxMarketCap,
+ Boolean isHideRiskToken,
+ Integer limit)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {
+ trackerType,
+ recvWindow,
+ nonce,
+ walletAddress,
+ tradeType,
+ binanceChainId,
+ minVolume,
+ maxVolume,
+ minMarketCap,
+ maxMarketCap,
+ isHideRiskToken,
+ limit
+ };
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getTrackedTrades",
+ TrackerType.class,
+ Long.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ String.class,
+ Boolean.class,
+ Integer.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getTrackedTradesCall(
+ trackerType,
+ recvWindow,
+ nonce,
+ walletAddress,
+ tradeType,
+ binanceChainId,
+ minVolume,
+ maxVolume,
+ minMarketCap,
+ maxMarketCap,
+ isHideRiskToken,
+ limit);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getTrackedTrades(
+ @NotNull TrackerType trackerType,
+ Long recvWindow,
+ String nonce,
+ String walletAddress,
+ String tradeType,
+ String binanceChainId,
+ String minVolume,
+ String maxVolume,
+ String minMarketCap,
+ String maxMarketCap,
+ Boolean isHideRiskToken,
+ Integer limit)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getTrackedTradesValidateBeforeCall(
+ trackerType,
+ recvWindow,
+ nonce,
+ walletAddress,
+ tradeType,
+ binanceChainId,
+ minVolume,
+ maxVolume,
+ minMarketCap,
+ maxMarketCap,
+ isHideRiskToken,
+ limit);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getTrackedTrades(GetTrackedTradesRequest request) {
+ return getTrackedTrades(
+ request.getTrackerType(),
+ request.getRecvWindow(),
+ request.getNonce(),
+ request.getWalletAddress(),
+ request.getTradeType(),
+ request.getBinanceChainId(),
+ request.getMinVolume(),
+ request.getMaxVolume(),
+ request.getMinMarketCap(),
+ request.getMaxMarketCap(),
+ request.getIsHideRiskToken(),
+ request.getLimit());
+ }
+
+ public static class GetTrackedTradesRequest {
+ private final TrackerType trackerType;
+ private Long recvWindow;
+ private String nonce;
+ private String walletAddress;
+ private String tradeType;
+ private String binanceChainId;
+ private String minVolume;
+ private String maxVolume;
+ private String minMarketCap;
+ private String maxMarketCap;
+ private Boolean isHideRiskToken;
+ private Integer limit;
+
+ public TrackerType getTrackerType() {
+ return trackerType;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public String getWalletAddress() {
+ return walletAddress;
+ }
+
+ public String getTradeType() {
+ return tradeType;
+ }
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getMinVolume() {
+ return minVolume;
+ }
+
+ public String getMaxVolume() {
+ return maxVolume;
+ }
+
+ public String getMinMarketCap() {
+ return minMarketCap;
+ }
+
+ public String getMaxMarketCap() {
+ return maxMarketCap;
+ }
+
+ public Boolean getIsHideRiskToken() {
+ return isHideRiskToken;
+ }
+
+ public Integer getLimit() {
+ return limit;
+ }
+
+ public GetTrackedTradesRequest(TrackerType trackerType) {
+ this.trackerType = trackerType;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set walletAddress
+ *
+ * @param walletAddress Required when trackerType=3. One or more wallet addresses,
+ * comma-separated, up to 20. EVM chains accept lowercase 42-character hex addresses;
+ * Solana accepts base58 addresses (case-sensitive). (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest walletAddress(String walletAddress) {
+ this.walletAddress = walletAddress;
+ return this;
+ }
+
+ /**
+ * Set tradeType
+ *
+ * @param tradeType Trade type filter. 0=All (default), 1=Buy, 2=Sell,
+ * 3=Add position, 4=Reduce position, 5=Open position, 6=Close
+ * position, 7=Transfer in, 8=Transfer out. Multiple values comma-separated.
+ * (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest tradeType(String tradeType) {
+ this.tradeType = tradeType;
+ return this;
+ }
+
+ /**
+ * Set binanceChainId
+ *
+ * @param binanceChainId Filter by chain. Returns all chains when omitted. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest binanceChainId(String binanceChainId) {
+ this.binanceChainId = binanceChainId;
+ return this;
+ }
+
+ /**
+ * Set minVolume
+ *
+ * @param minVolume Minimum trade volume filter, denominated in USD. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest minVolume(String minVolume) {
+ this.minVolume = minVolume;
+ return this;
+ }
+
+ /**
+ * Set maxVolume
+ *
+ * @param maxVolume Maximum trade volume filter, denominated in USD. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest maxVolume(String maxVolume) {
+ this.maxVolume = maxVolume;
+ return this;
+ }
+
+ /**
+ * Set minMarketCap
+ *
+ * @param minMarketCap Minimum market cap filter, denominated in USD. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest minMarketCap(String minMarketCap) {
+ this.minMarketCap = minMarketCap;
+ return this;
+ }
+
+ /**
+ * Set maxMarketCap
+ *
+ * @param maxMarketCap Maximum market cap filter, denominated in USD. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest maxMarketCap(String maxMarketCap) {
+ this.maxMarketCap = maxMarketCap;
+ return this;
+ }
+
+ /**
+ * Set isHideRiskToken
+ *
+ * @param isHideRiskToken Whether to hide risk tokens. true=hide risk tokens (default),
+ * false=show all tokens including risk tokens. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest isHideRiskToken(Boolean isHideRiskToken) {
+ this.isHideRiskToken = isHideRiskToken;
+ return this;
+ }
+
+ /**
+ * Set limit
+ *
+ * @param limit Maximum number of trades to return. Effective only for trackerType=3
+ * (custom address list); trackerType=1/2 ignore this and use the downstream public
+ * query fixed cap. Omit to use the downstream default. (optional)
+ * @return GetTrackedTradesRequest
+ */
+ public GetTrackedTradesRequest limit(Integer limit) {
+ this.limit = limit;
+ return this;
+ }
+ }
+}
diff --git a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/MarketApi.java b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/GeneralDataApi.java
similarity index 94%
rename from clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/MarketApi.java
rename to clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/GeneralDataApi.java
index c9509ab..2376b3c 100644
--- a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/MarketApi.java
+++ b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/GeneralDataApi.java
@@ -26,6 +26,7 @@
import com.binance.connector.client.web3_wallet.rest.model.GetSupportedChainsResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetTokenAdvancedInfoResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetTokenBasicInfoResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetTokenDevInfoResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetTokenPriceResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetTokenTradesResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetTokenTradingInfoResponse;
@@ -50,22 +51,22 @@
import java.util.Set;
import org.hibernate.validator.messageinterpolation.ParameterMessageInterpolator;
-public class MarketApi {
+public class GeneralDataApi {
private ApiClient localVarApiClient;
private int localHostIndex;
private String localCustomBaseUrl;
private static final String USER_AGENT =
String.format(
- "binance-web3-wallet/2.0.0 (Java/%s; %s; %s)",
+ "binance-web3-wallet/3.0.0 (Java/%s; %s; %s)",
SystemUtil.getJavaVersion(), SystemUtil.getOs(), SystemUtil.getArch());
private static final boolean HAS_TIME_UNIT = false;
- public MarketApi(ClientConfiguration clientConfiguration) {
+ public GeneralDataApi(ClientConfiguration clientConfiguration) {
this(new ApiClient(clientConfiguration));
}
- public MarketApi(ApiClient apiClient) {
+ public GeneralDataApi(ApiClient apiClient) {
apiClient.setUserAgent(USER_AGENT);
this.localVarApiClient = apiClient;
}
@@ -229,7 +230,7 @@ private okhttp3.Call getCandlesValidateBeforeCall(
Long.class,
Long.class,
Integer.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -527,7 +528,7 @@ private okhttp3.Call getHoldersRankingValidateBeforeCall(
Long.class,
String.class,
TagFilter.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -642,9 +643,9 @@ public GetHoldersRankingRequest tagFilter(TagFilter tagFilter) {
}
private okhttp3.Call getHotTokenListCall(
+ String binanceChainId,
Long recvWindow,
String nonce,
- String binanceChainId,
RankBy rankBy,
RankingTimeFrame rankingTimeFrame,
String priceChangePercentMin,
@@ -1040,9 +1041,9 @@ private okhttp3.Call getHotTokenListCall(
@SuppressWarnings("rawtypes")
private okhttp3.Call getHotTokenListValidateBeforeCall(
+ String binanceChainId,
Long recvWindow,
String nonce,
- String binanceChainId,
RankBy rankBy,
RankingTimeFrame rankingTimeFrame,
String priceChangePercentMin,
@@ -1105,9 +1106,9 @@ private okhttp3.Call getHotTokenListValidateBeforeCall(
ExecutableValidator executableValidator = validator.forExecutables();
Object[] parameterValues = {
+ binanceChainId,
recvWindow,
nonce,
- binanceChainId,
rankBy,
rankingTimeFrame,
priceChangePercentMin,
@@ -1164,8 +1165,8 @@ private okhttp3.Call getHotTokenListValidateBeforeCall(
this.getClass()
.getMethod(
"getHotTokenList",
- Long.class,
String.class,
+ Long.class,
String.class,
RankBy.class,
RankingTimeFrame.class,
@@ -1218,14 +1219,14 @@ private okhttp3.Call getHotTokenListValidateBeforeCall(
Boolean.class,
Integer.class,
Integer.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
return getHotTokenListCall(
+ binanceChainId,
recvWindow,
nonce,
- binanceChainId,
rankBy,
rankingTimeFrame,
priceChangePercentMin,
@@ -1290,9 +1291,9 @@ private okhttp3.Call getHotTokenListValidateBeforeCall(
}
public ApiResponse getHotTokenList(
+ @NotNull String binanceChainId,
Long recvWindow,
String nonce,
- String binanceChainId,
RankBy rankBy,
RankingTimeFrame rankingTimeFrame,
String priceChangePercentMin,
@@ -1347,9 +1348,9 @@ public ApiResponse getHotTokenList(
throws ApiException {
okhttp3.Call localVarCall =
getHotTokenListValidateBeforeCall(
+ binanceChainId,
recvWindow,
nonce,
- binanceChainId,
rankBy,
rankingTimeFrame,
priceChangePercentMin,
@@ -1408,9 +1409,9 @@ public ApiResponse getHotTokenList(
public ApiResponse getHotTokenList(GetHotTokenListRequest request) {
return getHotTokenList(
+ request.getBinanceChainId(),
request.getRecvWindow(),
request.getNonce(),
- request.getBinanceChainId(),
request.getRankBy(),
request.getRankingTimeFrame(),
request.getPriceChangePercentMin(),
@@ -1465,9 +1466,9 @@ public ApiResponse getHotTokenList(GetHotTokenListReque
}
public static class GetHotTokenListRequest {
+ private final String binanceChainId;
private Long recvWindow;
private String nonce;
- private String binanceChainId;
private RankBy rankBy;
private RankingTimeFrame rankingTimeFrame;
private String priceChangePercentMin;
@@ -1520,6 +1521,10 @@ public static class GetHotTokenListRequest {
private Integer pageId;
private Integer size;
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
public Long getRecvWindow() {
return recvWindow;
}
@@ -1528,10 +1533,6 @@ public String getNonce() {
return nonce;
}
- public String getBinanceChainId() {
- return binanceChainId;
- }
-
public RankBy getRankBy() {
return rankBy;
}
@@ -1736,7 +1737,9 @@ public Integer getSize() {
return size;
}
- public GetHotTokenListRequest() {}
+ public GetHotTokenListRequest(String binanceChainId) {
+ this.binanceChainId = binanceChainId;
+ }
/**
* Set recvWindow
@@ -1762,18 +1765,6 @@ public GetHotTokenListRequest nonce(String nonce) {
return this;
}
- /**
- * Set binanceChainId
- *
- * @param binanceChainId Chain identifier. Single value only. Omit to return mixed results
- * across all chains. (optional)
- * @return GetHotTokenListRequest
- */
- public GetHotTokenListRequest binanceChainId(String binanceChainId) {
- this.binanceChainId = binanceChainId;
- return this;
- }
-
/**
* Set rankBy
*
@@ -2456,7 +2447,7 @@ private okhttp3.Call getSupportedChainsValidateBeforeCall(Long recvWindow, Strin
Object[] parameterValues = {recvWindow, nonce};
Method method =
this.getClass().getMethod("getSupportedChains", Long.class, String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -2624,7 +2615,7 @@ private okhttp3.Call getTokenAdvancedInfoValidateBeforeCall(
String.class,
Long.class,
String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -2816,7 +2807,7 @@ private okhttp3.Call getTokenBasicInfoValidateBeforeCall(
String.class,
Long.class,
String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -2909,6 +2900,196 @@ public GetTokenBasicInfoRequest nonce(String nonce) {
}
}
+ private okhttp3.Call getTokenDevInfoCall(
+ String binanceChainId, String tokenContractAddress, Long recvWindow, String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/memepump/tokenDevInfo";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (tokenContractAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair(
+ "tokenContractAddress", tokenContractAddress));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getTokenDevInfoValidateBeforeCall(
+ String binanceChainId, String tokenContractAddress, Long recvWindow, String nonce)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {binanceChainId, tokenContractAddress, recvWindow, nonce};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getTokenDevInfo",
+ String.class,
+ String.class,
+ Long.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getTokenDevInfoCall(binanceChainId, tokenContractAddress, recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getTokenDevInfo(
+ @NotNull String binanceChainId,
+ @NotNull String tokenContractAddress,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getTokenDevInfoValidateBeforeCall(
+ binanceChainId, tokenContractAddress, recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getTokenDevInfo(GetTokenDevInfoRequest request) {
+ return getTokenDevInfo(
+ request.getBinanceChainId(),
+ request.getTokenContractAddress(),
+ request.getRecvWindow(),
+ request.getNonce());
+ }
+
+ public static class GetTokenDevInfoRequest {
+ private final String binanceChainId;
+ private final String tokenContractAddress;
+ private Long recvWindow;
+ private String nonce;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getTokenContractAddress() {
+ return tokenContractAddress;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetTokenDevInfoRequest(String binanceChainId, String tokenContractAddress) {
+ this.binanceChainId = binanceChainId;
+ this.tokenContractAddress = tokenContractAddress;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
+ * (optional)
+ * @return GetTokenDevInfoRequest
+ */
+ public GetTokenDevInfoRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
+ * omitted. (optional)
+ * @return GetTokenDevInfoRequest
+ */
+ public GetTokenDevInfoRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
private okhttp3.Call getTokenPriceCall(Long recvWindow, String nonce) throws ApiException {
String basePath = null;
// Operation Servers
@@ -2987,7 +3168,7 @@ private okhttp3.Call getTokenPriceValidateBeforeCall(Long recvWindow, String non
Object[] parameterValues = {recvWindow, nonce};
Method method = this.getClass().getMethod("getTokenPrice", Long.class, String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -3198,7 +3379,7 @@ private okhttp3.Call getTokenTradesValidateBeforeCall(
Integer.class,
TagFilter.class,
String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -3462,7 +3643,7 @@ private okhttp3.Call getTokenTradingInfoValidateBeforeCall(Long recvWindow, Stri
Object[] parameterValues = {recvWindow, nonce};
Method method =
this.getClass().getMethod("getTokenTradingInfo", Long.class, String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -3630,7 +3811,7 @@ private okhttp3.Call getTopLiquidityPoolsValidateBeforeCall(
String.class,
Long.class,
String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -3837,7 +4018,7 @@ private okhttp3.Call getTopTradersValidateBeforeCall(
Long.class,
String.class,
TagFilter.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
@@ -4044,7 +4225,7 @@ private okhttp3.Call searchTokenValidateBeforeCall(
String.class,
Long.class,
String.class);
- Set> violations =
+ Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
diff --git a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/RwaDataApi.java b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/RwaDataApi.java
new file mode 100644
index 0000000..dd9271e
--- /dev/null
+++ b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/RwaDataApi.java
@@ -0,0 +1,1282 @@
+/*
+ * Binance Web3 API
+ * Cross-chain wallet, market, trading, and transaction APIs for the Binance Web3 API platform.
+ *
+ * The version of the OpenAPI document: 1.0.0
+ *
+ *
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
+ * https://openapi-generator.tech
+ * Do not edit the class manually.
+ */
+
+package com.binance.connector.client.web3_wallet.rest.api;
+
+import com.binance.connector.client.common.ApiException;
+import com.binance.connector.client.common.ApiResponse;
+import com.binance.connector.client.common.Pair;
+import com.binance.connector.client.common.SystemUtil;
+import com.binance.connector.client.common.configuration.ClientConfiguration;
+import com.binance.connector.client.common.exception.ConstraintViolationException;
+import com.binance.connector.client.web3.common.ApiClient;
+import com.binance.connector.client.web3_wallet.rest.model.GetRwaTokenIssuancePlatformsResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetRwaTokenListResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetRwaTokenPriceResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetRwaUnderlyingInfoResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetRwaUnderlyingMarketDataResponse;
+import com.binance.connector.client.web3_wallet.rest.model.PlatformId;
+import com.binance.connector.client.web3_wallet.rest.model.SearchRwaTokenResponse;
+import com.google.gson.reflect.TypeToken;
+import jakarta.validation.ConstraintViolation;
+import jakarta.validation.Validation;
+import jakarta.validation.Validator;
+import jakarta.validation.constraints.*;
+import jakarta.validation.executable.ExecutableValidator;
+import java.lang.reflect.Method;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import org.hibernate.validator.messageinterpolation.ParameterMessageInterpolator;
+
+public class RwaDataApi {
+ private ApiClient localVarApiClient;
+ private int localHostIndex;
+ private String localCustomBaseUrl;
+
+ private static final String USER_AGENT =
+ String.format(
+ "binance-web3-wallet/3.0.0 (Java/%s; %s; %s)",
+ SystemUtil.getJavaVersion(), SystemUtil.getOs(), SystemUtil.getArch());
+ private static final boolean HAS_TIME_UNIT = false;
+
+ public RwaDataApi(ClientConfiguration clientConfiguration) {
+ this(new ApiClient(clientConfiguration));
+ }
+
+ public RwaDataApi(ApiClient apiClient) {
+ apiClient.setUserAgent(USER_AGENT);
+ this.localVarApiClient = apiClient;
+ }
+
+ public ApiClient getApiClient() {
+ return localVarApiClient;
+ }
+
+ public void setApiClient(ApiClient apiClient) {
+ this.localVarApiClient = apiClient;
+ }
+
+ public int getHostIndex() {
+ return localHostIndex;
+ }
+
+ public void setHostIndex(int hostIndex) {
+ this.localHostIndex = hostIndex;
+ }
+
+ public String getCustomBaseUrl() {
+ return localCustomBaseUrl;
+ }
+
+ public void setCustomBaseUrl(String customBaseUrl) {
+ this.localCustomBaseUrl = customBaseUrl;
+ }
+
+ private okhttp3.Call getRwaTokenIssuancePlatformsCall(
+ Long recvWindow, String nonce, PlatformId platformId) throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/rwa/platforms";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (platformId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("platformId", platformId));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getRwaTokenIssuancePlatformsValidateBeforeCall(
+ Long recvWindow, String nonce, PlatformId platformId) throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {recvWindow, nonce, platformId};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getRwaTokenIssuancePlatforms",
+ Long.class,
+ String.class,
+ PlatformId.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getRwaTokenIssuancePlatformsCall(recvWindow, nonce, platformId);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getRwaTokenIssuancePlatforms(
+ Long recvWindow, String nonce, PlatformId platformId) throws ApiException {
+ okhttp3.Call localVarCall =
+ getRwaTokenIssuancePlatformsValidateBeforeCall(recvWindow, nonce, platformId);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getRwaTokenIssuancePlatforms(
+ GetRwaTokenIssuancePlatformsRequest request) {
+ return getRwaTokenIssuancePlatforms(
+ request.getRecvWindow(), request.getNonce(), request.getPlatformId());
+ }
+
+ public static class GetRwaTokenIssuancePlatformsRequest {
+ private Long recvWindow;
+ private String nonce;
+ private PlatformId platformId;
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public PlatformId getPlatformId() {
+ return platformId;
+ }
+
+ public GetRwaTokenIssuancePlatformsRequest() {}
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds. Default 5000, max 60000.
+ * (optional)
+ * @return GetRwaTokenIssuancePlatformsRequest
+ */
+ public GetRwaTokenIssuancePlatformsRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN
+ * when omitted. (optional)
+ * @return GetRwaTokenIssuancePlatformsRequest
+ */
+ public GetRwaTokenIssuancePlatformsRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set platformId
+ *
+ * @param platformId Platform identifier (ondo=Ondo Finance, bstock=bStocks).
+ * Optional. If not specified, returns all platforms; when specified, returns only that
+ * platform. (optional)
+ * @return GetRwaTokenIssuancePlatformsRequest
+ */
+ public GetRwaTokenIssuancePlatformsRequest platformId(PlatformId platformId) {
+ this.platformId = platformId;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getRwaTokenListCall(
+ Long recvWindow,
+ String nonce,
+ String binanceChainId,
+ PlatformId platformId,
+ Integer tabId)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/rwa/tokens";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (platformId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("platformId", platformId));
+ }
+
+ if (tabId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("tabId", tabId));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getRwaTokenListValidateBeforeCall(
+ Long recvWindow,
+ String nonce,
+ String binanceChainId,
+ PlatformId platformId,
+ Integer tabId)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {recvWindow, nonce, binanceChainId, platformId, tabId};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getRwaTokenList",
+ Long.class,
+ String.class,
+ String.class,
+ PlatformId.class,
+ Integer.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getRwaTokenListCall(recvWindow, nonce, binanceChainId, platformId, tabId);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getRwaTokenList(
+ Long recvWindow,
+ String nonce,
+ String binanceChainId,
+ PlatformId platformId,
+ Integer tabId)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getRwaTokenListValidateBeforeCall(
+ recvWindow, nonce, binanceChainId, platformId, tabId);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getRwaTokenList(GetRwaTokenListRequest request) {
+ return getRwaTokenList(
+ request.getRecvWindow(),
+ request.getNonce(),
+ request.getBinanceChainId(),
+ request.getPlatformId(),
+ request.getTabId());
+ }
+
+ public static class GetRwaTokenListRequest {
+ private Long recvWindow;
+ private String nonce;
+ private String binanceChainId;
+ private PlatformId platformId;
+ private Integer tabId;
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public PlatformId getPlatformId() {
+ return platformId;
+ }
+
+ public Integer getTabId() {
+ return tabId;
+ }
+
+ public GetRwaTokenListRequest() {}
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds. Default 5000, max 60000.
+ * (optional)
+ * @return GetRwaTokenListRequest
+ */
+ public GetRwaTokenListRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN
+ * when omitted. (optional)
+ * @return GetRwaTokenListRequest
+ */
+ public GetRwaTokenListRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set binanceChainId
+ *
+ * @param binanceChainId Unique chain identifier (e.g. \"1\"=Ethereum,
+ * \"56\"=BSC, \"CT_501\"=Solana). Optional. If not
+ * specified, returns data from all chains. (optional)
+ * @return GetRwaTokenListRequest
+ */
+ public GetRwaTokenListRequest binanceChainId(String binanceChainId) {
+ this.binanceChainId = binanceChainId;
+ return this;
+ }
+
+ /**
+ * Set platformId
+ *
+ * @param platformId Platform filter (ondo=Ondo Finance, bstock=bStocks).
+ * Optional. If not specified, returns all platforms. (optional)
+ * @return GetRwaTokenListRequest
+ */
+ public GetRwaTokenListRequest platformId(PlatformId platformId) {
+ this.platformId = platformId;
+ return this;
+ }
+
+ /**
+ * Set tabId
+ *
+ * @param tabId Sector tab filter. Optional. If not specified, returns all sectors. Enum:
+ * 1=Serenity Call, 2=SpaceX (SpaceX-related and commercial spaceflight
+ * concept stocks), 3=Upcoming Earnings, 4=AI Chips, 5=Storage,
+ * 6=Energy, 7=Precious Metals, 8=China ADR (Chinese companies listed in
+ * the US), 9=Magnificent 7 (the seven largest US tech giants: Apple, Microsoft,
+ * Alphabet, Amazon, Nvidia, Meta, Tesla), 10=Crypto, 11=ETF, 12=Tech
+ * Leaders, 13=Buffett Portfolio. (optional)
+ * @return GetRwaTokenListRequest
+ */
+ public GetRwaTokenListRequest tabId(Integer tabId) {
+ this.tabId = tabId;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getRwaTokenPriceCall(
+ String binanceChainId, String tokenContractAddresses, Long recvWindow, String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/rwa/price";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (tokenContractAddresses != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair(
+ "tokenContractAddresses", tokenContractAddresses));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getRwaTokenPriceValidateBeforeCall(
+ String binanceChainId, String tokenContractAddresses, Long recvWindow, String nonce)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {binanceChainId, tokenContractAddresses, recvWindow, nonce};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getRwaTokenPrice",
+ String.class,
+ String.class,
+ Long.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getRwaTokenPriceCall(
+ binanceChainId, tokenContractAddresses, recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getRwaTokenPrice(
+ @NotNull String binanceChainId,
+ @NotNull String tokenContractAddresses,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getRwaTokenPriceValidateBeforeCall(
+ binanceChainId, tokenContractAddresses, recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getRwaTokenPrice(GetRwaTokenPriceRequest request) {
+ return getRwaTokenPrice(
+ request.getBinanceChainId(),
+ request.getTokenContractAddresses(),
+ request.getRecvWindow(),
+ request.getNonce());
+ }
+
+ public static class GetRwaTokenPriceRequest {
+ private final String binanceChainId;
+ private final String tokenContractAddresses;
+ private Long recvWindow;
+ private String nonce;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getTokenContractAddresses() {
+ return tokenContractAddresses;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetRwaTokenPriceRequest(String binanceChainId, String tokenContractAddresses) {
+ this.binanceChainId = binanceChainId;
+ this.tokenContractAddresses = tokenContractAddresses;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds. Default 5000, max 60000.
+ * (optional)
+ * @return GetRwaTokenPriceRequest
+ */
+ public GetRwaTokenPriceRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN
+ * when omitted. (optional)
+ * @return GetRwaTokenPriceRequest
+ */
+ public GetRwaTokenPriceRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getRwaUnderlyingInfoCall(
+ String binanceChainId, String tokenContractAddress, Long recvWindow, String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/rwa/underlying-profile";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (tokenContractAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair(
+ "tokenContractAddress", tokenContractAddress));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getRwaUnderlyingInfoValidateBeforeCall(
+ String binanceChainId, String tokenContractAddress, Long recvWindow, String nonce)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {binanceChainId, tokenContractAddress, recvWindow, nonce};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getRwaUnderlyingInfo",
+ String.class,
+ String.class,
+ Long.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getRwaUnderlyingInfoCall(
+ binanceChainId, tokenContractAddress, recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getRwaUnderlyingInfo(
+ @NotNull String binanceChainId,
+ @NotNull String tokenContractAddress,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getRwaUnderlyingInfoValidateBeforeCall(
+ binanceChainId, tokenContractAddress, recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getRwaUnderlyingInfo(
+ GetRwaUnderlyingInfoRequest request) {
+ return getRwaUnderlyingInfo(
+ request.getBinanceChainId(),
+ request.getTokenContractAddress(),
+ request.getRecvWindow(),
+ request.getNonce());
+ }
+
+ public static class GetRwaUnderlyingInfoRequest {
+ private final String binanceChainId;
+ private final String tokenContractAddress;
+ private Long recvWindow;
+ private String nonce;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getTokenContractAddress() {
+ return tokenContractAddress;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetRwaUnderlyingInfoRequest(String binanceChainId, String tokenContractAddress) {
+ this.binanceChainId = binanceChainId;
+ this.tokenContractAddress = tokenContractAddress;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds. Default 5000, max 60000.
+ * (optional)
+ * @return GetRwaUnderlyingInfoRequest
+ */
+ public GetRwaUnderlyingInfoRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN
+ * when omitted. (optional)
+ * @return GetRwaUnderlyingInfoRequest
+ */
+ public GetRwaUnderlyingInfoRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
+ private okhttp3.Call getRwaUnderlyingMarketDataCall(
+ String binanceChainId, String tokenContractAddress, Long recvWindow, String nonce)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/rwa/underlying-market";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (binanceChainId != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair("binanceChainId", binanceChainId));
+ }
+
+ if (tokenContractAddress != null) {
+ localVarQueryParams.addAll(
+ localVarApiClient.parameterToPair(
+ "tokenContractAddress", tokenContractAddress));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call getRwaUnderlyingMarketDataValidateBeforeCall(
+ String binanceChainId, String tokenContractAddress, Long recvWindow, String nonce)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {binanceChainId, tokenContractAddress, recvWindow, nonce};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "getRwaUnderlyingMarketData",
+ String.class,
+ String.class,
+ Long.class,
+ String.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return getRwaUnderlyingMarketDataCall(
+ binanceChainId, tokenContractAddress, recvWindow, nonce);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse getRwaUnderlyingMarketData(
+ @NotNull String binanceChainId,
+ @NotNull String tokenContractAddress,
+ Long recvWindow,
+ String nonce)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ getRwaUnderlyingMarketDataValidateBeforeCall(
+ binanceChainId, tokenContractAddress, recvWindow, nonce);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse getRwaUnderlyingMarketData(
+ GetRwaUnderlyingMarketDataRequest request) {
+ return getRwaUnderlyingMarketData(
+ request.getBinanceChainId(),
+ request.getTokenContractAddress(),
+ request.getRecvWindow(),
+ request.getNonce());
+ }
+
+ public static class GetRwaUnderlyingMarketDataRequest {
+ private final String binanceChainId;
+ private final String tokenContractAddress;
+ private Long recvWindow;
+ private String nonce;
+
+ public String getBinanceChainId() {
+ return binanceChainId;
+ }
+
+ public String getTokenContractAddress() {
+ return tokenContractAddress;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public GetRwaUnderlyingMarketDataRequest(
+ String binanceChainId, String tokenContractAddress) {
+ this.binanceChainId = binanceChainId;
+ this.tokenContractAddress = tokenContractAddress;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds. Default 5000, max 60000.
+ * (optional)
+ * @return GetRwaUnderlyingMarketDataRequest
+ */
+ public GetRwaUnderlyingMarketDataRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN
+ * when omitted. (optional)
+ * @return GetRwaUnderlyingMarketDataRequest
+ */
+ public GetRwaUnderlyingMarketDataRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+ }
+
+ private okhttp3.Call searchRwaTokenCall(
+ String keyword, Long recvWindow, String nonce, PlatformId platformId)
+ throws ApiException {
+ String basePath = null;
+ // Operation Servers
+ String[] localBasePaths = new String[] {};
+
+ // Determine Base Path to Use
+ if (localCustomBaseUrl != null) {
+ basePath = localCustomBaseUrl;
+ } else if (localBasePaths.length > 0) {
+ basePath = localBasePaths[localHostIndex];
+ } else {
+ basePath = null;
+ }
+
+ Object localVarPostBody = null;
+
+ // create path and map variables
+ String localVarPath = "/api/v1/dex/market/rwa/search";
+
+ List localVarQueryParams = new ArrayList();
+ List localVarCollectionQueryParams = new ArrayList();
+ Map localVarHeaderParams = new HashMap();
+ Map localVarCookieParams = new HashMap();
+ Map localVarFormParams = new HashMap();
+
+ if (keyword != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("keyword", keyword));
+ }
+
+ if (platformId != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("platformId", platformId));
+ }
+
+ final String[] localVarAccepts = {"application/json"};
+ final String localVarAccept = localVarApiClient.selectHeaderAccept(localVarAccepts);
+ if (localVarAccept != null) {
+ localVarHeaderParams.put("Accept", localVarAccept);
+ }
+
+ final String[] localVarContentTypes = {"application/x-www-form-urlencoded"};
+ final String localVarContentType =
+ localVarApiClient.selectHeaderContentType(localVarContentTypes);
+ if (!localVarFormParams.isEmpty() && localVarContentType != null) {
+ localVarHeaderParams.put("Content-Type", localVarContentType);
+ }
+
+ if (recvWindow != null) {
+ localVarHeaderParams.put("recvWindow", localVarApiClient.parameterToString(recvWindow));
+ }
+
+ if (nonce != null) {
+ localVarHeaderParams.put("nonce", localVarApiClient.parameterToString(nonce));
+ }
+
+ Set localVarAuthNames = new HashSet<>();
+ localVarAuthNames.add("binanceWeb3Signature");
+ if (HAS_TIME_UNIT) {
+ localVarAuthNames.add("timeUnit");
+ }
+ return localVarApiClient.buildCall(
+ basePath,
+ localVarPath,
+ "GET",
+ localVarQueryParams,
+ localVarCollectionQueryParams,
+ localVarPostBody,
+ localVarHeaderParams,
+ localVarCookieParams,
+ localVarFormParams,
+ localVarAuthNames);
+ }
+
+ @SuppressWarnings("rawtypes")
+ private okhttp3.Call searchRwaTokenValidateBeforeCall(
+ String keyword, Long recvWindow, String nonce, PlatformId platformId)
+ throws ApiException {
+ try {
+ Validator validator =
+ Validation.byDefaultProvider()
+ .configure()
+ .messageInterpolator(new ParameterMessageInterpolator())
+ .buildValidatorFactory()
+ .getValidator();
+ ExecutableValidator executableValidator = validator.forExecutables();
+
+ Object[] parameterValues = {keyword, recvWindow, nonce, platformId};
+ Method method =
+ this.getClass()
+ .getMethod(
+ "searchRwaToken",
+ String.class,
+ Long.class,
+ String.class,
+ PlatformId.class);
+ Set> violations =
+ executableValidator.validateParameters(this, method, parameterValues);
+
+ if (violations.size() == 0) {
+ return searchRwaTokenCall(keyword, recvWindow, nonce, platformId);
+ } else {
+ throw new ConstraintViolationException((Set) violations);
+ }
+ } catch (NoSuchMethodException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ } catch (SecurityException e) {
+ e.printStackTrace();
+ throw new ApiException(e.getMessage());
+ }
+ }
+
+ public ApiResponse searchRwaToken(
+ @NotNull String keyword, Long recvWindow, String nonce, PlatformId platformId)
+ throws ApiException {
+ okhttp3.Call localVarCall =
+ searchRwaTokenValidateBeforeCall(keyword, recvWindow, nonce, platformId);
+ java.lang.reflect.Type localVarReturnType =
+ new TypeToken() {}.getType();
+ return localVarApiClient.execute(localVarCall, localVarReturnType);
+ }
+
+ public ApiResponse searchRwaToken(SearchRwaTokenRequest request) {
+ return searchRwaToken(
+ request.getKeyword(),
+ request.getRecvWindow(),
+ request.getNonce(),
+ request.getPlatformId());
+ }
+
+ public static class SearchRwaTokenRequest {
+ private final String keyword;
+ private Long recvWindow;
+ private String nonce;
+ private PlatformId platformId;
+
+ public String getKeyword() {
+ return keyword;
+ }
+
+ public Long getRecvWindow() {
+ return recvWindow;
+ }
+
+ public String getNonce() {
+ return nonce;
+ }
+
+ public PlatformId getPlatformId() {
+ return platformId;
+ }
+
+ public SearchRwaTokenRequest(String keyword) {
+ this.keyword = keyword;
+ }
+
+ /**
+ * Set recvWindow
+ *
+ * @param recvWindow Allowed time deviation in milliseconds. Default 5000, max 60000.
+ * (optional)
+ * @return SearchRwaTokenRequest
+ */
+ public SearchRwaTokenRequest recvWindow(Long recvWindow) {
+ this.recvWindow = recvWindow;
+ return this;
+ }
+
+ /**
+ * Set nonce
+ *
+ * @param nonce Unique request identifier to prevent replay attacks. Falls back to X-OC-SIGN
+ * when omitted. (optional)
+ * @return SearchRwaTokenRequest
+ */
+ public SearchRwaTokenRequest nonce(String nonce) {
+ this.nonce = nonce;
+ return this;
+ }
+
+ /**
+ * Set platformId
+ *
+ * @param platformId Platform filter (ondo=Ondo Finance, bstock=bStocks).
+ * Optional. If not specified, returns results from all platforms. (optional)
+ * @return SearchRwaTokenRequest
+ */
+ public SearchRwaTokenRequest platformId(PlatformId platformId) {
+ this.platformId = platformId;
+ return this;
+ }
+ }
+}
diff --git a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/TradingApi.java b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/TradingApi.java
index 51d83c3..92ca0e6 100644
--- a/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/TradingApi.java
+++ b/clients/web3-wallet/src/main/java/com/binance/connector/client/web3_wallet/rest/api/TradingApi.java
@@ -21,14 +21,22 @@
import com.binance.connector.client.web3.common.ApiClient;
import com.binance.connector.client.web3_wallet.rest.model.ApproveTransaction;
import com.binance.connector.client.web3_wallet.rest.model.AutoSlippage;
+import com.binance.connector.client.web3_wallet.rest.model.BinanceChainId;
+import com.binance.connector.client.web3_wallet.rest.model.BuildSolanaSwapInstructionsResponse;
import com.binance.connector.client.web3_wallet.rest.model.BuildSwapTransactionResponse;
import com.binance.connector.client.web3_wallet.rest.model.GasLevel;
import com.binance.connector.client.web3_wallet.rest.model.GetAggregatedQuoteResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetAggregatorSupportedChainsResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetErc20ApproveTransactionResponse;
+import com.binance.connector.client.web3_wallet.rest.model.GetRfqOrderStatusResponse;
import com.binance.connector.client.web3_wallet.rest.model.GetTransactionStatusResponse;
+import com.binance.connector.client.web3_wallet.rest.model.QuoteAndBuildSwapTransactionResponse;
+import com.binance.connector.client.web3_wallet.rest.model.SubmitRfqOrderRequest;
+import com.binance.connector.client.web3_wallet.rest.model.SubmitRfqOrderResponse;
+import com.binance.connector.client.web3_wallet.rest.model.Vendor;
import com.google.gson.reflect.TypeToken;
import jakarta.validation.ConstraintViolation;
+import jakarta.validation.Valid;
import jakarta.validation.Validation;
import jakarta.validation.Validator;
import jakarta.validation.constraints.*;
@@ -49,7 +57,7 @@ public class TradingApi {
private static final String USER_AGENT =
String.format(
- "binance-web3-wallet/2.0.0 (Java/%s; %s; %s)",
+ "binance-web3-wallet/3.0.0 (Java/%s; %s; %s)",
SystemUtil.getJavaVersion(), SystemUtil.getOs(), SystemUtil.getArch());
private static final boolean HAS_TIME_UNIT = false;
@@ -86,8 +94,8 @@ public void setCustomBaseUrl(String customBaseUrl) {
this.localCustomBaseUrl = customBaseUrl;
}
- private okhttp3.Call buildSwapTransactionCall(
- String binanceChainId,
+ private okhttp3.Call buildSolanaSwapInstructionsCall(
+ BinanceChainId binanceChainId,
String amount,
String fromTokenAddress,
String toTokenAddress,
@@ -96,15 +104,12 @@ private okhttp3.Call buildSwapTransactionCall(
String quoteId,
Long recvWindow,
String nonce,
- ApproveTransaction approveTransaction,
- String approveAmount,
- String gasLimit,
- GasLevel gasLevel,
String priceImpactProtectionPercent,
AutoSlippage autoSlippage,
String maxAutoSlippagePercent,
String computeUnitLimit,
String computeUnitPrice,
+ GasLevel gasLevel,
String tips)
throws ApiException {
String basePath = null;
@@ -123,7 +128,7 @@ private okhttp3.Call buildSwapTransactionCall(
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v1/dex/aggregator/swap";
+ String localVarPath = "/api/v1/dex/aggregator/swap-instruction";
List localVarQueryParams = new ArrayList();
List localVarCollectionQueryParams = new ArrayList();
@@ -164,24 +169,6 @@ private okhttp3.Call buildSwapTransactionCall(
localVarQueryParams.addAll(localVarApiClient.parameterToPair("quoteId", quoteId));
}
- if (approveTransaction != null) {
- localVarQueryParams.addAll(
- localVarApiClient.parameterToPair("approveTransaction", approveTransaction));
- }
-
- if (approveAmount != null) {
- localVarQueryParams.addAll(
- localVarApiClient.parameterToPair("approveAmount", approveAmount));
- }
-
- if (gasLimit != null) {
- localVarQueryParams.addAll(localVarApiClient.parameterToPair("gasLimit", gasLimit));
- }
-
- if (gasLevel != null) {
- localVarQueryParams.addAll(localVarApiClient.parameterToPair("gasLevel", gasLevel));
- }
-
if (priceImpactProtectionPercent != null) {
localVarQueryParams.addAll(
localVarApiClient.parameterToPair(
@@ -209,6 +196,10 @@ private okhttp3.Call buildSwapTransactionCall(
localVarApiClient.parameterToPair("computeUnitPrice", computeUnitPrice));
}
+ if (gasLevel != null) {
+ localVarQueryParams.addAll(localVarApiClient.parameterToPair("gasLevel", gasLevel));
+ }
+
if (tips != null) {
localVarQueryParams.addAll(localVarApiClient.parameterToPair("tips", tips));
}
@@ -253,8 +244,8 @@ private okhttp3.Call buildSwapTransactionCall(
}
@SuppressWarnings("rawtypes")
- private okhttp3.Call buildSwapTransactionValidateBeforeCall(
- String binanceChainId,
+ private okhttp3.Call buildSolanaSwapInstructionsValidateBeforeCall(
+ BinanceChainId binanceChainId,
String amount,
String fromTokenAddress,
String toTokenAddress,
@@ -263,15 +254,12 @@ private okhttp3.Call buildSwapTransactionValidateBeforeCall(
String quoteId,
Long recvWindow,
String nonce,
- ApproveTransaction approveTransaction,
- String approveAmount,
- String gasLimit,
- GasLevel gasLevel,
String priceImpactProtectionPercent,
AutoSlippage autoSlippage,
String maxAutoSlippagePercent,
String computeUnitLimit,
String computeUnitPrice,
+ GasLevel gasLevel,
String tips)
throws ApiException {
try {
@@ -293,22 +281,19 @@ private okhttp3.Call buildSwapTransactionValidateBeforeCall(
quoteId,
recvWindow,
nonce,
- approveTransaction,
- approveAmount,
- gasLimit,
- gasLevel,
priceImpactProtectionPercent,
autoSlippage,
maxAutoSlippagePercent,
computeUnitLimit,
computeUnitPrice,
+ gasLevel,
tips
};
Method method =
this.getClass()
.getMethod(
- "buildSwapTransaction",
- String.class,
+ "buildSolanaSwapInstructions",
+ BinanceChainId.class,
String.class,
String.class,
String.class,
@@ -317,21 +302,18 @@ private okhttp3.Call buildSwapTransactionValidateBeforeCall(
String.class,
Long.class,
String.class,
- ApproveTransaction.class,
- String.class,
- String.class,
- GasLevel.class,
String.class,
AutoSlippage.class,
String.class,
String.class,
String.class,
+ GasLevel.class,
String.class);
Set> violations =
executableValidator.validateParameters(this, method, parameterValues);
if (violations.size() == 0) {
- return buildSwapTransactionCall(
+ return buildSolanaSwapInstructionsCall(
binanceChainId,
amount,
fromTokenAddress,
@@ -341,15 +323,12 @@ private okhttp3.Call buildSwapTransactionValidateBeforeCall(
quoteId,
recvWindow,
nonce,
- approveTransaction,
- approveAmount,
- gasLimit,
- gasLevel,
priceImpactProtectionPercent,
autoSlippage,
maxAutoSlippagePercent,
computeUnitLimit,
computeUnitPrice,
+ gasLevel,
tips);
} else {
throw new ConstraintViolationException((Set) violations);
@@ -363,8 +342,8 @@ private okhttp3.Call buildSwapTransactionValidateBeforeCall(
}
}
- public ApiResponse buildSwapTransaction(
- @NotNull String binanceChainId,
+ public ApiResponse buildSolanaSwapInstructions(
+ @NotNull BinanceChainId binanceChainId,
@NotNull String amount,
@NotNull String fromTokenAddress,
@NotNull String toTokenAddress,
@@ -373,19 +352,16 @@ public ApiResponse buildSwapTransaction(
@NotNull String quoteId,
Long recvWindow,
String nonce,
- ApproveTransaction approveTransaction,
- String approveAmount,
- String gasLimit,
- GasLevel gasLevel,
String priceImpactProtectionPercent,
AutoSlippage autoSlippage,
String maxAutoSlippagePercent,
String computeUnitLimit,
String computeUnitPrice,
+ GasLevel gasLevel,
String tips)
throws ApiException {
okhttp3.Call localVarCall =
- buildSwapTransactionValidateBeforeCall(
+ buildSolanaSwapInstructionsValidateBeforeCall(
binanceChainId,
amount,
fromTokenAddress,
@@ -395,24 +371,21 @@ public ApiResponse buildSwapTransaction(
quoteId,
recvWindow,
nonce,
- approveTransaction,
- approveAmount,
- gasLimit,
- gasLevel,
priceImpactProtectionPercent,
autoSlippage,
maxAutoSlippagePercent,
computeUnitLimit,
computeUnitPrice,
+ gasLevel,
tips);
java.lang.reflect.Type localVarReturnType =
- new TypeToken() {}.getType();
+ new TypeToken() {}.getType();
return localVarApiClient.execute(localVarCall, localVarReturnType);
}
- public ApiResponse buildSwapTransaction(
- BuildSwapTransactionRequest request) {
- return buildSwapTransaction(
+ public ApiResponse buildSolanaSwapInstructions(
+ BuildSolanaSwapInstructionsRequest request) {
+ return buildSolanaSwapInstructions(
request.getBinanceChainId(),
request.getAmount(),
request.getFromTokenAddress(),
@@ -422,20 +395,17 @@ public ApiResponse buildSwapTransaction(
request.getQuoteId(),
request.getRecvWindow(),
request.getNonce(),
- request.getApproveTransaction(),
- request.getApproveAmount(),
- request.getGasLimit(),
- request.getGasLevel(),
request.getPriceImpactProtectionPercent(),
request.getAutoSlippage(),
request.getMaxAutoSlippagePercent(),
request.getComputeUnitLimit(),
request.getComputeUnitPrice(),
+ request.getGasLevel(),
request.getTips());
}
- public static class BuildSwapTransactionRequest {
- private final String binanceChainId;
+ public static class BuildSolanaSwapInstructionsRequest {
+ private final BinanceChainId binanceChainId;
private final String amount;
private final String fromTokenAddress;
private final String toTokenAddress;
@@ -444,18 +414,15 @@ public static class BuildSwapTransactionRequest {
private final String quoteId;
private Long recvWindow;
private String nonce;
- private ApproveTransaction approveTransaction;
- private String approveAmount;
- private String gasLimit;
- private GasLevel gasLevel;
private String priceImpactProtectionPercent;
private AutoSlippage autoSlippage;
private String maxAutoSlippagePercent;
private String computeUnitLimit;
private String computeUnitPrice;
+ private GasLevel gasLevel;
private String tips;
- public String getBinanceChainId() {
+ public BinanceChainId getBinanceChainId() {
return binanceChainId;
}
@@ -491,22 +458,6 @@ public String getNonce() {
return nonce;
}
- public ApproveTransaction getApproveTransaction() {
- return approveTransaction;
- }
-
- public String getApproveAmount() {
- return approveAmount;
- }
-
- public String getGasLimit() {
- return gasLimit;
- }
-
- public GasLevel getGasLevel() {
- return gasLevel;
- }
-
public String getPriceImpactProtectionPercent() {
return priceImpactProtectionPercent;
}
@@ -527,12 +478,16 @@ public String getComputeUnitPrice() {
return computeUnitPrice;
}
+ public GasLevel getGasLevel() {
+ return gasLevel;
+ }
+
public String getTips() {
return tips;
}
- public BuildSwapTransactionRequest(
- String binanceChainId,
+ public BuildSolanaSwapInstructionsRequest(
+ BinanceChainId binanceChainId,
String amount,
String fromTokenAddress,
String toTokenAddress,
@@ -553,9 +508,9 @@ public BuildSwapTransactionRequest(
*
* @param recvWindow Allowed time deviation in milliseconds (default: 5000, max: 60000).
* (optional)
- * @return BuildSwapTransactionRequest
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest recvWindow(Long recvWindow) {
+ public BuildSolanaSwapInstructionsRequest recvWindow(Long recvWindow) {
this.recvWindow = recvWindow;
return this;
}
@@ -565,69 +520,21 @@ public BuildSwapTransactionRequest recvWindow(Long recvWindow) {
*
* @param nonce Unique request identifier for anti-replay; falls back to X-OC-SIGN if
* omitted. (optional)
- * @return BuildSwapTransactionRequest
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest nonce(String nonce) {
+ public BuildSolanaSwapInstructionsRequest nonce(String nonce) {
this.nonce = nonce;
return this;
}
- /**
- * Set approveTransaction
- *
- * @param approveTransaction When \"true\", `signatureData` includes the
- * spender address and approve calldata so the client can submit it before the swap.
- * Defaults to false. (optional)
- * @return BuildSwapTransactionRequest
- */
- public BuildSwapTransactionRequest approveTransaction(
- ApproveTransaction approveTransaction) {
- this.approveTransaction = approveTransaction;
- return this;
- }
-
- /**
- * Set approveAmount
- *
- * @param approveAmount Override approve amount (smallest unit, positive integer string).
- * Defaults to the swap amount. (optional)
- * @return BuildSwapTransactionRequest
- */
- public BuildSwapTransactionRequest approveAmount(String approveAmount) {
- this.approveAmount = approveAmount;
- return this;
- }
-
- /**
- * Set gasLimit
- *
- * @param gasLimit Gas limit override (positive integer string). EVM only. (optional)
- * @return BuildSwapTransactionRequest
- */
- public BuildSwapTransactionRequest gasLimit(String gasLimit) {
- this.gasLimit = gasLimit;
- return this;
- }
-
- /**
- * Set gasLevel
- *
- * @param gasLevel Gas price tier. Defaults to \"average\". (optional)
- * @return BuildSwapTransactionRequest
- */
- public BuildSwapTransactionRequest gasLevel(GasLevel gasLevel) {
- this.gasLevel = gasLevel;
- return this;
- }
-
/**
* Set priceImpactProtectionPercent
*
* @param priceImpactProtectionPercent Maximum allowed price impact percentage (0–100).
* Defaults to 90; set to 100 to disable. (optional)
- * @return BuildSwapTransactionRequest
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest priceImpactProtectionPercent(
+ public BuildSolanaSwapInstructionsRequest priceImpactProtectionPercent(
String priceImpactProtectionPercent) {
this.priceImpactProtectionPercent = priceImpactProtectionPercent;
return this;
@@ -638,9 +545,9 @@ public BuildSwapTransactionRequest priceImpactProtectionPercent(
*
* @param autoSlippage When \"true\", slippage is auto-derived from market data
* and overrides `slippagePercent`. Defaults to false. (optional)
- * @return BuildSwapTransactionRequest
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest autoSlippage(AutoSlippage autoSlippage) {
+ public BuildSolanaSwapInstructionsRequest autoSlippage(AutoSlippage autoSlippage) {
this.autoSlippage = autoSlippage;
return this;
}
@@ -650,9 +557,10 @@ public BuildSwapTransactionRequest autoSlippage(AutoSlippage autoSlippage) {
*
* @param maxAutoSlippagePercent Cap on auto-derived slippage (only applies when
* `autoSlippage=true`). (optional)
- * @return BuildSwapTransactionRequest
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest maxAutoSlippagePercent(String maxAutoSlippagePercent) {
+ public BuildSolanaSwapInstructionsRequest maxAutoSlippagePercent(
+ String maxAutoSlippagePercent) {
this.maxAutoSlippagePercent = maxAutoSlippagePercent;
return this;
}
@@ -660,12 +568,11 @@ public BuildSwapTransactionRequest maxAutoSlippagePercent(String maxAutoSlippage
/**
* Set computeUnitLimit
*
- * @param computeUnitLimit Solana only — maximum compute units the transaction may consume
- * (analogous to EVM gasLimit). Applies only when
- * `binanceChainId=CT_501`. (optional)
- * @return BuildSwapTransactionRequest
+ * @param computeUnitLimit Maximum compute units the transaction may consume (analogous to
+ * EVM gasLimit). Defaults to the platform value when omitted. (optional)
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest computeUnitLimit(String computeUnitLimit) {
+ public BuildSolanaSwapInstructionsRequest computeUnitLimit(String computeUnitLimit) {
this.computeUnitLimit = computeUnitLimit;
return this;
}
@@ -673,38 +580,63 @@ public BuildSwapTransactionRequest computeUnitLimit(String computeUnitLimit) {
/**
* Set computeUnitPrice
*
- * @param computeUnitPrice Solana only — priority fee per compute unit (micro-lamports),
- * analogous to EVM gasPrice. When omitted, the platform computes a value dynamically.
- * Applies only when `binanceChainId=CT_501`. (optional)
- * @return BuildSwapTransactionRequest
+ * @param computeUnitPrice Priority fee per compute unit (micro-lamports). When omitted, the
+ * platform computes a value either from the `gasLevel` tier or from
+ * chain-side defaults. (optional)
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest computeUnitPrice(String computeUnitPrice) {
+ public BuildSolanaSwapInstructionsRequest computeUnitPrice(String computeUnitPrice) {
this.computeUnitPrice = computeUnitPrice;
return this;
}
+ /**
+ * Set gasLevel
+ *
+ * @param gasLevel Priority-fee tier; consulted only when `computeUnitPrice` is
+ * omitted. Defaults to \"average\". (optional)
+ * @return BuildSolanaSwapInstructionsRequest
+ */
+ public BuildSolanaSwapInstructionsRequest gasLevel(GasLevel gasLevel) {
+ this.gasLevel = gasLevel;
+ return this;
+ }
+
/**
* Set tips
*
- * @param tips Solana only — Jito tips in SOL for MEV protection. Valid range [0.000000001,
- * 2] (minimum 1 lamport). When specified, it is recommended to set
- * `computeUnitPrice=0`. Applies only when
- * `binanceChainId=CT_501`. (optional)
- * @return BuildSwapTransactionRequest
+ * @param tips Jito tips in SOL for MEV protection. Valid range [0.000000001, 2] (minimum 1
+ * lamport). When specified, it is recommended to set
+ * `computeUnitPrice=0`. The platform picks one of Jito's tip
+ * accounts at random per request. (optional)
+ * @return BuildSolanaSwapInstructionsRequest
*/
- public BuildSwapTransactionRequest tips(String tips) {
+ public BuildSolanaSwapInstructionsRequest tips(String tips) {
this.tips = tips;
return this;
}
}
- private okhttp3.Call getAggregatedQuoteCall(
+ private okhttp3.Call buildSwapTransactionCall(
String binanceChainId,
String amount,
String fromTokenAddress,
String toTokenAddress,
+ String userWalletAddress,
+ String quoteId,
Long recvWindow,
- String nonce)
+ String nonce,
+ String slippagePercent,
+ ApproveTransaction approveTransaction,
+ String approveAmount,
+ String gasLimit,
+ GasLevel gasLevel,
+ String priceImpactProtectionPercent,
+ AutoSlippage autoSlippage,
+ String maxAutoSlippagePercent,
+ String computeUnitLimit,
+ String computeUnitPrice,
+ String tips)
throws ApiException {
String basePath = null;
// Operation Servers
@@ -722,7 +654,7 @@ private okhttp3.Call getAggregatedQuoteCall(
Object localVarPostBody = null;
// create path and map variables
- String localVarPath = "/api/v1/dex/aggregator/quote";
+ String localVarPath = "/api/v1/dex/aggregator/swap";
List