import cobo_waas2
from cobo_waas2.models.max_transferable_value import MaxTransferableValue
from cobo_waas2.rest import ApiException
from pprint import pprint
# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
# Replace `<YOUR_PRIVATE_KEY>` with your private key
api_private_key="<YOUR_PRIVATE_KEY>",
# Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = cobo_waas2.WalletsApi(api_client)
wallet_id = "f47ac10b-58cc-4372-a567-0e02b2c3d479"
token_id = "ETH_USDT"
fee_rate = "10"
to_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
from_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
try:
# Get maximum transferable value
api_response = api_instance.get_max_transferable_value(
wallet_id, token_id, fee_rate, to_address, from_address=from_address
)
print("The response of WalletsApi->get_max_transferable_value:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling WalletsApi->get_max_transferable_value: %s\n" % e)
// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.WalletsApi;
import com.cobo.waas2.model.*;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Select the development environment. To use the production environment, replace `Env.DEV` with
// `Env.PROD
defaultClient.setEnv(Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
WalletsApi apiInstance = new WalletsApi();
UUID walletId = UUID.fromString("f47ac10b-58cc-4372-a567-0e02b2c3d479");
String tokenId = "ETH_USDT";
String feeRate = "10";
String toAddress = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
String fromAddress = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
try {
MaxTransferableValue result =
apiInstance.getMaxTransferableValue(walletId, tokenId, feeRate, toAddress, fromAddress);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling WalletsApi#getMaxTransferableValue");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
package main
import (
"context"
"fmt"
coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
"os"
)
func main() {
walletId := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
tokenId := "ETH_USDT"
feeRate := "10"
toAddress := "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
fromAddress := "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
configuration := coboWaas2.NewConfiguration()
// Initialize the API client
apiClient := coboWaas2.NewAPIClient(configuration)
ctx := context.Background()
// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
// Replace `<YOUR_PRIVATE_KEY>` with your private key
ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
Secret: "<YOUR_PRIVATE_KEY>",
})
resp, r, err := apiClient.WalletsAPI.GetMaxTransferableValue(ctx, walletId).
TokenId(tokenId).
FeeRate(feeRate).
ToAddress(toAddress).
FromAddress(fromAddress).
Execute()
if err != nil {
fmt.Fprintf(
os.Stderr,
"Error when calling `WalletsAPI.GetMaxTransferableValue``: %v\n",
err,
)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `GetMaxTransferableValue`: MaxTransferableValue
fmt.Fprintf(os.Stdout, "Response from `WalletsAPI.GetMaxTransferableValue`: %v\n", resp)
}
const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.WalletsApi();
const wallet_id = "f47ac10b-58cc-4372-a567-0e02b2c3d479";
const token_id = "ETH_USDT";
const fee_rate = "10";
const to_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
const opts = {
from_address: "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE",
};
apiInstance
.getMaxTransferableValue(wallet_id, token_id, fee_rate, to_address, opts)
.then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"token_id": "ETH",
"max_transferable_value": "3.0",
"fee": {
"fee_type": "EVM_EIP_1559",
"token_id": "TRON",
"max_fee_amount": "0.1"
}
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}Get maximum transferable value
You must specify to_address in your query because it affects the transaction fee.
import cobo_waas2
from cobo_waas2.models.max_transferable_value import MaxTransferableValue
from cobo_waas2.rest import ApiException
from pprint import pprint
# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
# Replace `<YOUR_PRIVATE_KEY>` with your private key
api_private_key="<YOUR_PRIVATE_KEY>",
# Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = cobo_waas2.WalletsApi(api_client)
wallet_id = "f47ac10b-58cc-4372-a567-0e02b2c3d479"
token_id = "ETH_USDT"
fee_rate = "10"
to_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
from_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
try:
# Get maximum transferable value
api_response = api_instance.get_max_transferable_value(
wallet_id, token_id, fee_rate, to_address, from_address=from_address
)
print("The response of WalletsApi->get_max_transferable_value:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling WalletsApi->get_max_transferable_value: %s\n" % e)
// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.WalletsApi;
import com.cobo.waas2.model.*;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Select the development environment. To use the production environment, replace `Env.DEV` with
// `Env.PROD
defaultClient.setEnv(Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
WalletsApi apiInstance = new WalletsApi();
UUID walletId = UUID.fromString("f47ac10b-58cc-4372-a567-0e02b2c3d479");
String tokenId = "ETH_USDT";
String feeRate = "10";
String toAddress = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
String fromAddress = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
try {
MaxTransferableValue result =
apiInstance.getMaxTransferableValue(walletId, tokenId, feeRate, toAddress, fromAddress);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling WalletsApi#getMaxTransferableValue");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
package main
import (
"context"
"fmt"
coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
"os"
)
func main() {
walletId := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
tokenId := "ETH_USDT"
feeRate := "10"
toAddress := "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
fromAddress := "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
configuration := coboWaas2.NewConfiguration()
// Initialize the API client
apiClient := coboWaas2.NewAPIClient(configuration)
ctx := context.Background()
// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
// Replace `<YOUR_PRIVATE_KEY>` with your private key
ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
Secret: "<YOUR_PRIVATE_KEY>",
})
resp, r, err := apiClient.WalletsAPI.GetMaxTransferableValue(ctx, walletId).
TokenId(tokenId).
FeeRate(feeRate).
ToAddress(toAddress).
FromAddress(fromAddress).
Execute()
if err != nil {
fmt.Fprintf(
os.Stderr,
"Error when calling `WalletsAPI.GetMaxTransferableValue``: %v\n",
err,
)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `GetMaxTransferableValue`: MaxTransferableValue
fmt.Fprintf(os.Stdout, "Response from `WalletsAPI.GetMaxTransferableValue`: %v\n", resp)
}
const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.WalletsApi();
const wallet_id = "f47ac10b-58cc-4372-a567-0e02b2c3d479";
const token_id = "ETH_USDT";
const fee_rate = "10";
const to_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
const opts = {
from_address: "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE",
};
apiInstance
.getMaxTransferableValue(wallet_id, token_id, fee_rate, to_address, opts)
.then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"token_id": "ETH",
"max_transferable_value": "3.0",
"fee": {
"fee_type": "EVM_EIP_1559",
"token_id": "TRON",
"max_fee_amount": "0.1"
}
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}import cobo_waas2
from cobo_waas2.models.max_transferable_value import MaxTransferableValue
from cobo_waas2.rest import ApiException
from pprint import pprint
# See configuration.py for a list of all supported configurations.
configuration = cobo_waas2.Configuration(
# Replace `<YOUR_PRIVATE_KEY>` with your private key
api_private_key="<YOUR_PRIVATE_KEY>",
# Select the development environment. To use the production environment, change the URL to https://api.cobo.com/v2.
host="https://api.dev.cobo.com/v2",
)
# Enter a context with an instance of the API client
with cobo_waas2.ApiClient(configuration) as api_client:
# Create an instance of the API class
api_instance = cobo_waas2.WalletsApi(api_client)
wallet_id = "f47ac10b-58cc-4372-a567-0e02b2c3d479"
token_id = "ETH_USDT"
fee_rate = "10"
to_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
from_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
try:
# Get maximum transferable value
api_response = api_instance.get_max_transferable_value(
wallet_id, token_id, fee_rate, to_address, from_address=from_address
)
print("The response of WalletsApi->get_max_transferable_value:\n")
pprint(api_response)
except Exception as e:
print("Exception when calling WalletsApi->get_max_transferable_value: %s\n" % e)
// Import classes:
import com.cobo.waas2.ApiClient;
import com.cobo.waas2.ApiException;
import com.cobo.waas2.Configuration;
import com.cobo.waas2.Env;
import com.cobo.waas2.api.WalletsApi;
import com.cobo.waas2.model.*;
public class Example {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Select the development environment. To use the production environment, replace `Env.DEV` with
// `Env.PROD
defaultClient.setEnv(Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
defaultClient.setPrivKey("<YOUR_PRIVATE_KEY>");
WalletsApi apiInstance = new WalletsApi();
UUID walletId = UUID.fromString("f47ac10b-58cc-4372-a567-0e02b2c3d479");
String tokenId = "ETH_USDT";
String feeRate = "10";
String toAddress = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
String fromAddress = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
try {
MaxTransferableValue result =
apiInstance.getMaxTransferableValue(walletId, tokenId, feeRate, toAddress, fromAddress);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling WalletsApi#getMaxTransferableValue");
System.err.println("Status code: " + e.getCode());
System.err.println("Reason: " + e.getResponseBody());
System.err.println("Response headers: " + e.getResponseHeaders());
e.printStackTrace();
}
}
}
package main
import (
"context"
"fmt"
coboWaas2 "github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2"
"github.com/CoboGlobal/cobo-waas2-go-sdk/cobo_waas2/crypto"
"os"
)
func main() {
walletId := "f47ac10b-58cc-4372-a567-0e02b2c3d479"
tokenId := "ETH_USDT"
feeRate := "10"
toAddress := "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
fromAddress := "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE"
configuration := coboWaas2.NewConfiguration()
// Initialize the API client
apiClient := coboWaas2.NewAPIClient(configuration)
ctx := context.Background()
// Select the development environment. To use the production environment, replace coboWaas2.DevEnv with coboWaas2.ProdEnv
ctx = context.WithValue(ctx, coboWaas2.ContextEnv, coboWaas2.DevEnv)
// Replace `<YOUR_PRIVATE_KEY>` with your private key
ctx = context.WithValue(ctx, coboWaas2.ContextPortalSigner, crypto.Ed25519Signer{
Secret: "<YOUR_PRIVATE_KEY>",
})
resp, r, err := apiClient.WalletsAPI.GetMaxTransferableValue(ctx, walletId).
TokenId(tokenId).
FeeRate(feeRate).
ToAddress(toAddress).
FromAddress(fromAddress).
Execute()
if err != nil {
fmt.Fprintf(
os.Stderr,
"Error when calling `WalletsAPI.GetMaxTransferableValue``: %v\n",
err,
)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `GetMaxTransferableValue`: MaxTransferableValue
fmt.Fprintf(os.Stdout, "Response from `WalletsAPI.GetMaxTransferableValue`: %v\n", resp)
}
const CoboWaas2 = require("@cobo/cobo-waas2");
// Initialize the API client
const apiClient = CoboWaas2.ApiClient.instance;
// Select the development environment. To use the production environment, replace `Env.DEV` with `Env.PROD`
apiClient.setEnv(CoboWaas2.Env.DEV);
// Replace `<YOUR_PRIVATE_KEY>` with your private key
apiClient.setPrivateKey("<YOUR_PRIVATE_KEY>");
// Call the API
const apiInstance = new CoboWaas2.WalletsApi();
const wallet_id = "f47ac10b-58cc-4372-a567-0e02b2c3d479";
const token_id = "ETH_USDT";
const fee_rate = "10";
const to_address = "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE";
const opts = {
from_address: "2N2xFZtbCFB6Nb3Pj9Sxsx5mX2fxX3yEgkE",
};
apiInstance
.getMaxTransferableValue(wallet_id, token_id, fee_rate, to_address, opts)
.then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
Authorizations
The API key. For more details, refer to API key.
In the API playground, enter your API secret, and your API key will be accordingly calculated.
Path Parameters
The wallet ID.
Query Parameters
The token ID, which is the unique identifier of a token. You can retrieve the IDs of all the tokens you can use by calling List enabled tokens.
The fee rate in sats/vByte or gas price in wei.
The recipient's address.
The sender's address. For EVM addresses in MPC Wallets, this parameter is required.
Response
The request was successful.
The maximum transferable value from the wallet or the specified address, along with the estimated transaction fee.
The token ID, which is the unique identifier of a token. You can retrieve the IDs of all the tokens you can use by calling List enabled tokens.
"ETH"
The maximum transferable value from the wallet or the specified address.
"3.0"
The preset properties to limit transaction fee.
In the fixed fee model, the transaction fee is a fixed amount within a certain amount of period regardless of the transaction size or network congestion, which can vary between different chains. For more information about the fixed fee model, refer to Fee models.
You can specify the maximum fee amount to limit the transaction fee. The transaction will fail if the transaction fee exceeds the specified maximum fee amount.
Switch between the tabs to display the properties for different transaction fee models.
- Fixed
- EVM_EIP_1559
- EVM_Legacy
- UTXO
- SOL
- FIL
Show child attributes
Show child attributes
Was this page helpful?
