import cobo_waas2
from cobo_waas2.models.create_transfer_transaction201_response import (
CreateTransferTransaction201Response,
)
from cobo_waas2.models.transfer_params import TransferParams
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.TransactionsApi(api_client)
transfer_params = cobo_waas2.TransferParams(
request_id="f47ac10b-58cc-4372-a567-0e02b2c3d479",
source=cobo_waas2.TransferSource(
cobo_waas2.CustodialTransferSource(
source_type="Asset", wallet_id="d3fcfaef-f415-4210-9e5c-fbed0e090495"
)
),
token_id="ETH_USDT",
destination=cobo_waas2.TransferDestination(
cobo_waas2.AddressTransferDestination(destination_type="Address", account_output=cobo_waas2.AddressTransferDestinationAccountOutput(address="19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku",amount="1.5"))
),
)
try:
# Transfer token
api_response = api_instance.create_transfer_transaction(
transfer_params=transfer_params
)
print("The response of TransactionsApi->create_transfer_transaction:\n")
pprint(api_response)
except Exception as e:
print(
"Exception when calling TransactionsApi->create_transfer_transaction: %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.TransactionsApi;
import com.cobo.waas2.model.*;
import java.util.UUID;
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>");
TransactionsApi apiInstance = new TransactionsApi();
TransferParams transferParams =
new TransferParams()
.requestId("f47ac10b-58cc-4372-a567-0e02b2c3d479")
.source(
new TransferSource(
new CustodialTransferSource()
.sourceType(WalletSubtype.ASSET)
.walletId(UUID.fromString("d3fcfaef-f415-4210-9e5c-fbed0e090495"))))
.tokenId("ETH_USDT")
.destination(
new TransferDestination(
new AddressTransferDestination()
.destinationType(TransferDestinationType.ADDRESS)
.accountOutput(
new AddressTransferDestinationAccountOutput()
.address("19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku")
.amount("1.5"))));
try {
CreateTransferTransaction201Response result =
apiInstance.createTransferTransaction(transferParams);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TransactionsApi#createTransferTransaction");
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() {
transferParams := *coboWaas2.NewTransferParams("f47ac10b-58cc-4372-a567-0e02b2c3d479", coboWaas2.TransferSource{CustodialTransferSource: coboWaas2.NewCustodialTransferSource(coboWaas2.WalletSubtype("Asset"), "d3fcfaef-f415-4210-9e5c-fbed0e090495")}, "ETH_USDT", coboWaas2.TransferDestination{AddressTransferDestination: coboWaas2.NewAddressTransferDestination(coboWaas2.TransferDestinationType("Address"))})
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.TransactionsAPI.CreateTransferTransaction(ctx).
TransferParams(transferParams).
Execute()
if err != nil {
fmt.Fprintf(
os.Stderr,
"Error when calling `TransactionsAPI.CreateTransferTransaction``: %v\n",
err,
)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `CreateTransferTransaction`: CreateTransferTransaction201Response
fmt.Fprintf(os.Stdout, "Response from `TransactionsAPI.CreateTransferTransaction`: %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.TransactionsApi();
const opts = {
TransferParams: CoboWaas2.TransferParams.constructFromObject({
request_id: "f47ac10b-58cc-4372-a567-0e02b2c3d479",
source: {
source_type: "Asset",
wallet_id: "d3fcfaef-f415-4210-9e5c-fbed0e090495",
},
token_id: "ETH_USDT",
destination: { destination_type: "Address", account_output: { address: "19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku", amount: "1.5" } },
}),
};
apiInstance.createTransferTransaction(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"request_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"transaction_id": "c986cb3b-1301-412f-9450-13a52c43a95f",
"status": "Submitted"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}{
"error_code": 123,
"error_message": "<string>",
"error_id": "0b6ddf19083c4bd1a9ca01bec44b24dd"
}Transfer token
The operation transfers your assets from a wallet created on Cobo Portal to another address.
You need to specify details such as the sender address and recipient address, token ID, and the amount to transfer. You can specify the fee-related properties to limit the transaction fee, or specify the fee_level property to let Cobo calculate the transaction fee based on the selected fee level. A transaction request for tracking is returned upon successful operation.
request_id to prevent duplicate transfer requests. The request_id must be unique within the same organization. Duplicate requests with the same request_id will be rejected with an error and will not be executed again.utxo_outputs property to specify the destination addresses.You can have Billing Center pay the on-chain transaction fee, so that the source address does not need to hold the chain’s gas token. Use the auto_fuel property to control this behavior.
import cobo_waas2
from cobo_waas2.models.create_transfer_transaction201_response import (
CreateTransferTransaction201Response,
)
from cobo_waas2.models.transfer_params import TransferParams
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.TransactionsApi(api_client)
transfer_params = cobo_waas2.TransferParams(
request_id="f47ac10b-58cc-4372-a567-0e02b2c3d479",
source=cobo_waas2.TransferSource(
cobo_waas2.CustodialTransferSource(
source_type="Asset", wallet_id="d3fcfaef-f415-4210-9e5c-fbed0e090495"
)
),
token_id="ETH_USDT",
destination=cobo_waas2.TransferDestination(
cobo_waas2.AddressTransferDestination(destination_type="Address", account_output=cobo_waas2.AddressTransferDestinationAccountOutput(address="19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku",amount="1.5"))
),
)
try:
# Transfer token
api_response = api_instance.create_transfer_transaction(
transfer_params=transfer_params
)
print("The response of TransactionsApi->create_transfer_transaction:\n")
pprint(api_response)
except Exception as e:
print(
"Exception when calling TransactionsApi->create_transfer_transaction: %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.TransactionsApi;
import com.cobo.waas2.model.*;
import java.util.UUID;
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>");
TransactionsApi apiInstance = new TransactionsApi();
TransferParams transferParams =
new TransferParams()
.requestId("f47ac10b-58cc-4372-a567-0e02b2c3d479")
.source(
new TransferSource(
new CustodialTransferSource()
.sourceType(WalletSubtype.ASSET)
.walletId(UUID.fromString("d3fcfaef-f415-4210-9e5c-fbed0e090495"))))
.tokenId("ETH_USDT")
.destination(
new TransferDestination(
new AddressTransferDestination()
.destinationType(TransferDestinationType.ADDRESS)
.accountOutput(
new AddressTransferDestinationAccountOutput()
.address("19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku")
.amount("1.5"))));
try {
CreateTransferTransaction201Response result =
apiInstance.createTransferTransaction(transferParams);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TransactionsApi#createTransferTransaction");
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() {
transferParams := *coboWaas2.NewTransferParams("f47ac10b-58cc-4372-a567-0e02b2c3d479", coboWaas2.TransferSource{CustodialTransferSource: coboWaas2.NewCustodialTransferSource(coboWaas2.WalletSubtype("Asset"), "d3fcfaef-f415-4210-9e5c-fbed0e090495")}, "ETH_USDT", coboWaas2.TransferDestination{AddressTransferDestination: coboWaas2.NewAddressTransferDestination(coboWaas2.TransferDestinationType("Address"))})
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.TransactionsAPI.CreateTransferTransaction(ctx).
TransferParams(transferParams).
Execute()
if err != nil {
fmt.Fprintf(
os.Stderr,
"Error when calling `TransactionsAPI.CreateTransferTransaction``: %v\n",
err,
)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `CreateTransferTransaction`: CreateTransferTransaction201Response
fmt.Fprintf(os.Stdout, "Response from `TransactionsAPI.CreateTransferTransaction`: %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.TransactionsApi();
const opts = {
TransferParams: CoboWaas2.TransferParams.constructFromObject({
request_id: "f47ac10b-58cc-4372-a567-0e02b2c3d479",
source: {
source_type: "Asset",
wallet_id: "d3fcfaef-f415-4210-9e5c-fbed0e090495",
},
token_id: "ETH_USDT",
destination: { destination_type: "Address", account_output: { address: "19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku", amount: "1.5" } },
}),
};
apiInstance.createTransferTransaction(opts).then(
(data) => {
console.log("API called successfully. Returned data: " + data);
},
(error) => {
console.error(error);
},
);
{
"request_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"transaction_id": "c986cb3b-1301-412f-9450-13a52c43a95f",
"status": "Submitted"
}{
"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.create_transfer_transaction201_response import (
CreateTransferTransaction201Response,
)
from cobo_waas2.models.transfer_params import TransferParams
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.TransactionsApi(api_client)
transfer_params = cobo_waas2.TransferParams(
request_id="f47ac10b-58cc-4372-a567-0e02b2c3d479",
source=cobo_waas2.TransferSource(
cobo_waas2.CustodialTransferSource(
source_type="Asset", wallet_id="d3fcfaef-f415-4210-9e5c-fbed0e090495"
)
),
token_id="ETH_USDT",
destination=cobo_waas2.TransferDestination(
cobo_waas2.AddressTransferDestination(destination_type="Address", account_output=cobo_waas2.AddressTransferDestinationAccountOutput(address="19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku",amount="1.5"))
),
)
try:
# Transfer token
api_response = api_instance.create_transfer_transaction(
transfer_params=transfer_params
)
print("The response of TransactionsApi->create_transfer_transaction:\n")
pprint(api_response)
except Exception as e:
print(
"Exception when calling TransactionsApi->create_transfer_transaction: %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.TransactionsApi;
import com.cobo.waas2.model.*;
import java.util.UUID;
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>");
TransactionsApi apiInstance = new TransactionsApi();
TransferParams transferParams =
new TransferParams()
.requestId("f47ac10b-58cc-4372-a567-0e02b2c3d479")
.source(
new TransferSource(
new CustodialTransferSource()
.sourceType(WalletSubtype.ASSET)
.walletId(UUID.fromString("d3fcfaef-f415-4210-9e5c-fbed0e090495"))))
.tokenId("ETH_USDT")
.destination(
new TransferDestination(
new AddressTransferDestination()
.destinationType(TransferDestinationType.ADDRESS)
.accountOutput(
new AddressTransferDestinationAccountOutput()
.address("19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku")
.amount("1.5"))));
try {
CreateTransferTransaction201Response result =
apiInstance.createTransferTransaction(transferParams);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling TransactionsApi#createTransferTransaction");
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() {
transferParams := *coboWaas2.NewTransferParams("f47ac10b-58cc-4372-a567-0e02b2c3d479", coboWaas2.TransferSource{CustodialTransferSource: coboWaas2.NewCustodialTransferSource(coboWaas2.WalletSubtype("Asset"), "d3fcfaef-f415-4210-9e5c-fbed0e090495")}, "ETH_USDT", coboWaas2.TransferDestination{AddressTransferDestination: coboWaas2.NewAddressTransferDestination(coboWaas2.TransferDestinationType("Address"))})
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.TransactionsAPI.CreateTransferTransaction(ctx).
TransferParams(transferParams).
Execute()
if err != nil {
fmt.Fprintf(
os.Stderr,
"Error when calling `TransactionsAPI.CreateTransferTransaction``: %v\n",
err,
)
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
}
// response from `CreateTransferTransaction`: CreateTransferTransaction201Response
fmt.Fprintf(os.Stdout, "Response from `TransactionsAPI.CreateTransferTransaction`: %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.TransactionsApi();
const opts = {
TransferParams: CoboWaas2.TransferParams.constructFromObject({
request_id: "f47ac10b-58cc-4372-a567-0e02b2c3d479",
source: {
source_type: "Asset",
wallet_id: "d3fcfaef-f415-4210-9e5c-fbed0e090495",
},
token_id: "ETH_USDT",
destination: { destination_type: "Address", account_output: { address: "19AR6YWEGbSoY8UT9Ksy9WrmrZPD5sL4Ku", amount: "1.5" } },
}),
};
apiInstance.createTransferTransaction(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.
Body
The request body to create a transfer transaction
The information about a token transfer.
A client-defined unique request identifier (idempotency key) used to prevent duplicate transfer requests. It must be unique within the same organization. Requests with the same request ID will be rejected with an error.
"f47ac10b-58cc-4372-a567-0e02b2c3d479"
The information about the transaction source types Asset. Refer to Transaction sources and destinations for a detailed introduction about the supported sources and destinations for each transaction type.
Switch between the tabs to display the properties for different transaction sources.
- Asset
- Web3
- Org-Controlled/User-Controlled
- Main/Sub
Show child attributes
Show child attributes
The token ID of the transferred token. You can retrieve the IDs of all the tokens you can use by calling List enabled tokens. For transfers from Exchange Wallets, this property value represents the asset ID.
"ETH_USDT"
The information about the transaction destination type Address. Refer to Transaction sources and destinations for a detailed introduction about the supported sources and destinations for each transaction type.
You need to specify either the account_output property or the utxo_outputs property.
You can transfer tokens to multiple addresses only if you use MPC Wallets as the transaction source. To do this, you should use the utxo_outputs property to specify the destination addresses.
Switch between the tabs to display the properties for different transaction destinations.
- Address
- CustodialWallet
- ExchangeWallet
Show child attributes
Show child attributes
The custom category for you to identify your transactions.
The description of the transfer.
"Transfer from wallet"
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
The transaction fee level. Specify this property if you want Cobo to calculate the transaction fee for you based on the selected level, instead of providing the fee-related properties yourself. Possible values are:
Slow: A lower transaction fee, which may lead to a longer confirmation time.Recommended: The recommended transaction fee, which balances the fee cost and the confirmation time.Fast: A higher transaction fee for a shorter confirmation time.
You can call Estimate transaction fee to view the estimated transaction fee of each fee level.
You cannot specify both fee_level and fee in the same request. If you specify both, the request fails.
This property does not take effect in the following cases, and the transaction fee is determined by Cobo:
- The transaction uses the fixed fee model. For more information about the fee models, refer to Fee models.
- The transaction is initiated from Custodial Wallets (Asset Wallets) or Exchange Wallets.
Slow, Recommended, Fast "Recommended"
Transaction processing type. This property applies to MPC Wallets and Custodial Wallets (Web3 Wallets) only. Possible values are:
AutoProcess(default): After the transaction is constructed, it will be automatically signed and broadcast.BuildOnly: Set to this value if you want to build the transaction first without automatically signing and broadcasting it. You can manually call the Sign and broadcast transaction operation to complete the signing and broadcasting process.SignOnly: Set to this value if you want to build and sign the transaction first without automatically broadcasting it. You can manually call the Broadcast signed transactions operation to broadcast the transaction to the blockchain.
AutoProcess, BuildOnly, SignOnly "AutoProcess"
Whether Billing Center pays the on-chain transaction fee for this transaction, and under what condition.
On-chain fees are charged in a chain's gas token, which is usually not the token you are sending. Without Billing Center, the source address must hold that gas token or the transaction fails. When Billing Center covers the fee, the source address does not need to hold any gas token.
For more details, refer to Billing Center.
Accepted values
ProActiveAutoFuel: Always have Billing Center pay the fee, without touching the gas token in the source address.PassiveAutoFuel: Use the gas token in the source address when it is sufficient; otherwise have Billing Center pay the fee.UsePortalPreference: Follow the per-chain sponsorship rules configured on Cobo Portal, under Billing Center > Settings.DisableAutoFuel: Never use Billing Center. The transaction pays its fee from the source address and fails if the balance is insufficient.
If this parameter is not specified, it defaults to UsePortalPreference.
Support and limitations
- Applies to transactions from MPC Wallets and Custodial Wallets (Web3 Wallets) on EVM-compatible chains, TRON, Solana, and Tempo. Other chains, such as BTC, are not supported, and the source address must hold the fee itself.
- TRON, Solana, and Tempo do not support
PassiveAutoFueldue to their fee delegation mechanisms. - The per-chain sponsorship rules on Cobo Portal apply only to API transactions that pass
UsePortalPreference. They do not affect transfers initiated from the Cobo Portal interface.
PassiveAutoFuel, ProActiveAutoFuel, UsePortalPreference, DisableAutoFuel "PassiveAutoFuel"
Some validation settings for creating a transaction.
Show child attributes
Show child attributes
Response
The request was successful.
The request ID that is used to track a transaction request. The request ID is provided by you and must be unique within your organization.
"f47ac10b-58cc-4372-a567-0e02b2c3d479"
The transaction ID.
"c986cb3b-1301-412f-9450-13a52c43a95f"
The transaction status. For more details including sub-statuses, please refer to Transaction statuses and sub-statuses.
The PendingAuthorization status covers both manual approval steps and internal automated risk-control, KYT, and compliance screening checks. A transaction in this status does not necessarily require a human to take action.
Submitted, PendingScreening, PendingAuthorization, PendingSignature, Broadcasting, Confirming, Completed, Failed, Rejected, Pending "Submitted"
Was this page helpful?
