Get Route Status
This method aims to provide the status of the transaction
Squid uses Axelar's infrastructure to provide status of cross-chain transactions. You can access this status using the following
getStatus
.You can also check completion of a cross chain transaction by copying the transaction hash into AxelarScan.
const status = await squid.getStatus({
transactionId
})
Property | Description |
---|---|
transactionId | Transaction hash from the transaction submitted to the source chain. |
Property | Description |
---|---|
id | transaction hash |
status | Transaction status from Axelarscan: Our status endpoint aggregates AxelarScan's GMP and token transfer responses. Depending on transaction type, possible responses are as below:
GMP responses for status { SRC_GATEWAY_CALLED = "source_gateway_called", DEST_GATEWAY_APPROVED = "destination_gateway_approved", DEST_EXECUTED = "destination_executed", DEST_ERROR = "error", ERROR_FETCHING_STATUS = "error_fetching_status", } Token transfer responses for status : { ASSET_SENT = "asset_sent", BATCH_SIGNED = "batch_signed", VOTED = "voted", EXECUTED = "executed" } |
gasStatus | Transaction gas status returned from AxelarScan. The possible gas status response are: { GAS_UNPAID = "gas_unpaid", GAS_PAID = "gas_paid", GAS_PAID_NOT_ENOUGH_GAS = "gas_paid_not_enough_gas", GAS_PAID_ENOUGH_GAS = "gas_paid_enough_gas", } |
isGMPTransaction | Returns true if the transaction is a GMP transaction, false if it is a bridge transfer |
fromChain.transactionId | Chain ID of fromChain |
fromChain.blockNumber | Transaction block number on fromChain |
fromChain.callEventStatus | SquidMulticall contract event status relating to transactionId on fromChain |
fromChain.callEventLog | SquidMulticall event logs for transactionId on fromChain |
toChain.transactionId | Transaction hash on toChain |
toChain.blockNumber | Transaction block number on toChain |
toChain.callEventStatus | Latest SquidMulticall event status on toChain |
toChain.callEventLog | SquidMulticall event logs on toChain |
error | Error returned from Axelarscan GMP API |
{
"id": "0xb7792edf93d423037c6b3bb61074b1ef12ed8a1e93647e1610d231ff8c3802ff_1_22",
"status": "destination_executed",
"gasStatus": "gas_paid_enough_gas",
"isGMPTransaction": true,
"axelarTransactionUrl": "https://axelarscan.io/gmp/0xb7792edf93d423037c6b3bb61074b1ef12ed8a1e93647e1610d231ff8c3802ff",
"fromChain": {
"transactionId": "0xb7792edf93d423037c6b3bb61074b1ef12ed8a1e93647e1610d231ff8c3802ff",
"blockNumber": 23830217,
"callEventStatus": "",
"callEventLog": [],
"chainData": {
"chainName": "Avalanche",
"chainType": "evm",
"rpc": "https://api.avax.network/ext/bc/C/rpc",
"networkName": "Avalanche C-Chain",
"chainId": 43114,
"nativeCurrency": {
"name": "Avalanche",
"symbol": "AVAX",
"decimals": 18,
"icon": "https://assets.coingecko.com/coins/images/12559/small/coin-round-red.png?1604021818"
},
"chainIconURI": "https://axelarscan.io/logos/chains/avalanche.svg",
"blockExplorerUrls": [
"https://snowtrace.io/"
],
"chainNativeContracts": {
"wrappedNativeToken": "0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7",
"ensRegistry": "0xa7eebb2926d22d34588497769889cbc2be0a5d97",
"multicall": "0xcA11bde05977b3631167028862bE2a173976CA11",
"usdcToken": "0xB97EF9Ef8734C71904D8002F8b6Bc66Dd9c48a6E"
},
"axelarContracts": {
"gateway": "0x5029C0EFf6C34351a0CEc334542cDb22c7928f78",
"forecallable": ""
},
"squidContracts": {
"squidRouter": "0xce16F69375520ab01377ce7B88f5BA8C48F8D666",
"defaultCrosschainToken": "0xfaB550568C688d5D8A52C7d794cb93Edc26eC0eC",
"squidMulticall": "0x28D04fD16B2D7b8c0FDAdb821E381b72fe3CC11e"
},
"estimatedRouteDuration": 90
},
"transactionUrl": "https://snowtrace.io/tx/0xb7792edf93d423037c6b3bb61074b1ef12ed8a1e93647e1610d231ff8c3802ff"
},
"toChain": {
"transactionId": "0xb22c00d39971852f330d50e74e84e2d7d26a53f4b066edd67fbcf8d945586c18",
"blockNumber": 2542604,
"callEventStatus": "CrossMulticallExecuted",
"callEventLog": [
{
"contractAddress": "0xce16F69375520ab01377ce7B88f5BA8C48F8D666",
"args": {
"eventFragment": {
"name": "CrossMulticallExecuted",
"anonymous": false,
"inputs": [
{
"name": "payloadHash",
"type": "bytes32",
"indexed": true,
"components": null,
"arrayLength": null,
"arrayChildren": null,
"baseType": "bytes32",
"_isParamType": true
}
],
"type": "event",
"_isFragment": true
},
"name": "CrossMulticallExecuted",
"signature": "CrossMulticallExecuted(bytes32)",
"topic": "0x7c3aa10c5d96985be6de7d2e6fa79bdef95a95a9cb272f4113b3fe1ca89fedae",
"args": [
"0xfde523ed16736fe2a0bb26ed8dfa1e6e44c73da2ee81daabec62adeef3784225"
]
}
}
],
"chainData": {
"chainName": "Moonbeam",
"chainType": "evm",
"rpc": "https://rpc.api.moonbeam.network",
"networkName": "Moonbeam Mainnet",
"chainId": 1284,
"nativeCurrency": {
"name": "Moonbeam",
"symbol": "GLMR",
"decimals": 18,
"icon": "https://assets.coingecko.com/coins/images/22459/small/glmr.png?1641880985"
},
"chainIconURI": "https://axelarscan.io/logos/chains/moonbeam.svg",
"blockExplorerUrls": [
"https://moonscan.io/"
],
"chainNativeContracts": {
"wrappedNativeToken": "0xAcc15dC74880C9944775448304B263D191c6077F",
"ensRegistry": "",
"multicall": "0x6477204E12A7236b9619385ea453F370aD897bb2",
"usdcToken": "0x931715fee2d06333043d11f658c8ce934ac61d0c"
},
"axelarContracts": {
"gateway": "0x4F4495243837681061C4743b74B3eEdf548D56A5",
"forecallable": ""
},
"squidContracts": {
"squidRouter": "0xce16F69375520ab01377ce7B88f5BA8C48F8D666",
"defaultCrosschainToken": "0xCa01a1D0993565291051daFF390892518ACfAD3A",
"squidMulticall": "0x28D04fD16B2D7b8c0FDAdb821E381b72fe3CC11e"
},
"estimatedRouteDuration": 150
},
"transactionUrl": "https://moonscan.io/tx/0xb22c00d39971852f330d50e74e84e2d7d26a53f4b066edd67fbcf8d945586c18"
},
"timeSpent": {
"call_approved": 51,
"total": 93,
"approved_executed": 42
},
"error": {}
}
You can also access the Axelar GMP block explorer to monitor your transaction status.
Last modified 3mo ago