Override Transaction
API Documentation: Override Transaction
Overview
This API endpoint allows you to override previous transaction, by creating new transaction with same nonce but different transaction data.
- HTTP Method: POST
- Endpoint:
/api/v1/wallet/eth/override
Request Body Parameters
walletId
(required): this will be used to determine which key used to sign. The type is string.overrideRequestId
(required): The ID of the previous request that you want to be override.feeMultiplierPercentage
(required): The percentage of fee increment (in percentage).transactionType
(required): The type of new transaction that want to be override the previous transaction, the possible values are :send_coin
,send_erc20
,send_erc721
,send_erc1155
,send_raw
,send_transaction
andsend_generic
pin
: The PIN is necessary if the wallet has a PIN enabled. The PIN need to be in hashed format (SHA-256).
Request Body Parameters for send_coin
to
(required): the destination EVM address that will receive the coin.amount
(required): in the wei format.
Example Request Body
{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_coin",
"feeMultiplierPercentage": 10, // 10% increment
"to" : "0xeF236f1b35B2105836540c23d055d1BFb6c5db52",
"amount": "10000000000000000000000000000"
}
Request Body Parameters for send_erc20
to
(required): the destination EVM address that will receive the NFT.amount
(required): amount in wei unit format.tokenAddress
(required): the ERC20 token contract address.
Example Request Body
{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_erc20",
"feeMultiplierPercentage": 10, // 10% increment
"to" : "0xeF236f1b35B2105836540c23d055d1BFb6c5db52",
"amount": "3000000",
"tokenAddress": "0x280c2D3182574d65139EE65383BD6285380d393d"
}
Request Body Parameters for send_erc721
to
(required): the destination EVM address that will receive the NFT.tokenId
(required): the NFT ID.tokenAddress
(required): the NFT contract address.
Example Request Body
{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_erc721",
"feeMultiplierPercentage": 10, // 10% increment
"to" : "0xeF236f1b35B2105836540c23d055d1BFb6c5db52",
"tokenId": "1",
"tokenAddress": "0x280c2D3182574d65139EE65383BD6285380d393d",
}
Request Body Parameters for send_erc1155
to
(required): the destination EVM address that will receive the NFT.amount
(required): the Amount in wei unit format.tokenId
(required): the Token ID.tokenAddress
(required): the Token contract address.
Example Request Body
{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_erc1155",
"feeMultiplierPercentage": 10, // 10% increment
"to" : "0xeF236f1b35B2105836540c23d055d1BFb6c5db52",
"amount": "1",
"tokenId": "1",
"tokenAddress": "0x280c2D3182574d65139EE65383BD6285380d393d"
}
Request Body Parameters for send_raw
rawUnsignedTransaction
(required): Unsigned transaction in hex format (can be with prefix 0x or without prefix 0x).
Example Request Body
{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_raw",
"feeMultiplierPercentage": 10, // 10% increment
"rawUnsignedTransaction": "0x02f082426801843b9aca00848321560082522894f08f55777ca21aee3aeb451ffcdb4db322a73c6c8207d0822222c0808080"
}
Request Body Parameters for send_transaction
to
(required): The recipient’s Ethereum address, specified in standard Ethereum address format.data
(required): The data associated with the transaction. If no specific data is provided, use 0x to indicate an empty transaction.nonce
(required): The sender’s nonce, which is a number representing the number of transactions sent from the sender’s address. This should be an integer.gasFeeCap
(required): The maximum gas fee (in gwei) the sender is willing to pay for the transaction, represented as a number (maxFeePerGas).gasTipCap
(required): The maximum tip fee (in gwei) the sender is willing to provide as a priority fee to miners, represented as a number (maxPriorityFeePerGas).gas
(required): The amount of gas (in units) required for the transaction to be processed. This should be specified as a number.value
(required): The amount of Ether (in wei) to be transferred in the transaction. The value should be represented as an integer in wei (the smallest unit of Ether).
Example Request Body
{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_transaction",
"feeMultiplierPercentage": 10, // 10% increment
"to": "0x69DDcdE165b784c059cC3E9DFA1cdc374cd6F3C3",
"data": "0x",
"nonce": 1,
"gasFeeCap": 20000000000, // 20 gwei
"gasTipCap": 10000000000, // 10 gwei
"gas": 21000,
"value": 1000000000000000000 // 1 Ether (in wei)
}
Request
Request Headers
X-CLIENT-ID
: (required): Client ID which was generated when register in Xellar TSS API Service Dashboard.X-SIGNATURE
: (required): Calculated signature, please refer to Authorization section.X-TIMESTAMP
: (required): Request timestamp in RFC3339 format.
Example Request Syntax
curl -X POST -H "Content-Type: application/json" -H "x-client-id: $YOUR_CLIENT_ID" -H "x-client-secret: $YOUR_CLIENT_SECRET" -d '{
"walletId" : "...",
"overrideRequestId": "2055187f-5c20-4cc4-8063-3eb1a3383da5",
"transactionType": "send_coin",
"feeMultiplierPercentage": 10,
"to" : "0xeF236f1b35B2105836540c23d055d1BFb6c5db52",
"amount": "10000000000000000000000000000"
}' <BASE_URL>/api/v1/wallet/eth/override
Response
The response will include a JSON object with the following properties:
status
(number): The HTTP status code of the response (e.g., 200 for success).message
(string): A message providing additional information about the operation.data
(object): An object containing the request information.data.requestId
(string): The unique identifier for the request.
Example Response
{
"status": 200,
"message": "Override transaction is in progress",
"data": {
"requestId": "9c276eb2-e0e1-4789-bd54-42d5e920379f"
}
}