Post /v2/fungible/msgs
This supports cross-chain actions among EVM chains, Cosmos chains, and between them. Returns minimal number of messages required to execute a multi-chain swap or transfer. Input consists of the output of route with additional information required for message construction (e.g. destination addresses for each chain)
Denom of the source asset
Chain-id of the source asset
Denom of the destination asset
Chain-id of the destination asset
Amount of source asset to be transferred or swapped
Amount of destination asset out
Array of receipient and/or sender address for each chain in the path, corresponding to the chain_ids array returned from a route request
Array of operations required to perform the transfer or swap
Percent tolerance for slippage on swap, if a swap is performed
Number of seconds for the IBC transfer timeout, defaults to 5 minutes
Address of the contract to execute the message on
JSON string of the message
Map of chain-ids to arrays of affiliates. The API expects all chains to have the same cumulative affiliate fee bps for each chain specified. If any of the provided affiliate arrays does not have the same cumulative fee, the API will return an error.
Whether to enable gas warnings for intermediate and destination chains
curl --request POST \
--url https://api.skip.build/v2/fungible/msgs \
--header 'Content-Type: application/json' \
--data '{
"source_asset_denom": "uusdc",
"source_asset_chain_id": "axelar-dojo-1",
"dest_asset_denom": "uatom",
"dest_asset_chain_id": "cosmoshub-4",
"amount_in": "1000000",
"amount_out": "107033",
"address_list": [
"axelar1x8ad0zyw52mvndh7hlnafrg0gt284ga7u3rez0",
"osmo1x8ad0zyw52mvndh7hlnafrg0gt284ga7syxplu",
"cosmos1x8ad0zyw52mvndh7hlnafrg0gt284ga7cl43fw"
],
"operations": [
{
"transfer": {
"port": "transfer",
"channel": "channel-3",
"from_chain_id": "axelar-dojo-1",
"to_chain_id": "osmosis-1",
"pfm_enabled": false,
"supports_memo": true,
"dest_denom": "ibc/D189335C6E4A68B513C10AB227BF1C1D38C746766278BA3EEB4FB14124F1D858"
}
},
{
"swap": {
"swap_in": {
"swap_venue": {
"name": "osmosis-poolmanager",
"chain_id": "osmosis-1"
},
"swap_operations": [
{
"pool": "678",
"denom_in": "ibc/D189335C6E4A68B513C10AB227BF1C1D38C746766278BA3EEB4FB14124F1D858",
"denom_out": "uosmo"
},
{
"pool": "1",
"denom_in": "uosmo",
"denom_out": "ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2"
}
],
"swap_amount_in": "1000000"
},
"estimated_affiliate_fee": "0ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2",
"from_chain_id": "osmosis-1",
"chain_id": "osmosis-1",
"denom_in": "ibc/D189335C6E4A68B513C10AB227BF1C1D38C746766278BA3EEB4FB14124F1D858",
"denom_out": "ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2"
}
},
{
"transfer": {
"port": "transfer",
"channel": "channel-0",
"from_chain_id": "osmosis-1",
"to_chain_id": "cosmoshub-4",
"pfm_enabled": true,
"supports_memo": true,
"dest_denom": "uatom"
}
}
],
"slippage_tolerance_percent": "1",
"chain_ids_to_affiliates": {}
}'
Body
Denom of the source asset
Chain-id of the source asset
Denom of the destination asset
Chain-id of the destination asset
Amount of source asset to be transferred or swapped
Amount of destination asset out
Array of receipient and/or sender address for each chain in the path, corresponding to the chain_ids array returned from a route request
Array of operations required to perform the transfer or swap
A cross-chain transfer
Chain-id on which the transfer is initiated
Chain-id on which the transfer is received
Channel to use to initiate the transfer
Denom of the destionation asset of the transfer
Whether pfm is enabled on the chain where the transfer is initiated
Port to use to initiate the transfer
Whether the transfer chain supports a memo
Denom of the input asset of the transfer
Denom of the output asset of the transfer
Amount of the fee asset to be paid as the transfer fee if applicable.
Amount of the fee asset to be paid as the transfer fee if applicable, converted to USD value
Asset to be paid as the transfer fee if applicable.
Chain-id of the asset
Coingecko id of the asset
Number of decimals used for amounts of the asset
Denom of the asset
Description of the asset
Indicates whether asset is a CW20 token
Indicates whether asset is an EVM token
Indicates whether asset is an SVM token
URI pointing to an image of the logo of the asset
Name of the asset
Chain-id of the origin of the asset. If this is an ibc denom, this is the chain-id of the asset that the ibc token represents
Denom of the origin of the asset. If this is an ibc denom, this is the original denom that the ibc token represents
Recommended symbol of the asset used to differentiate between bridged assets with the same symbol, e.g. USDC.axl for Axelar USDC and USDC.grv for Gravity USDC
Symbol of the asset, e.g. ATOM for uatom
Address of the contract for the asset, e.g. if it is a CW20 or ERC20 token
The forward slash delimited sequence of ibc ports and channels that can be traversed to unwind an ibc token to its origin asset.
Bridge Type:
IBC
- IBC BridgeAXELAR
- Axelar BridgeCCTP
- CCTP BridgeHYPERLANE
- Hyperlane Bridge
IBC
, AXELAR
, CCTP
, HYPERLANE
Indicates whether this transfer is relayed via Smart Relay
Index of the tx returned from Msgs that executes this operation
Amount of input asset to this operation
Amount of output asset from this operation
Percent tolerance for slippage on swap, if a swap is performed
Number of seconds for the IBC transfer timeout, defaults to 5 minutes
Map of chain-ids to arrays of affiliates. The API expects all chains to have the same cumulative affiliate fee bps for each chain specified. If any of the provided affiliate arrays does not have the same cumulative fee, the API will return an error.
Whether to enable gas warnings for intermediate and destination chains
Response
A message that interacts with multiple chains
Chain-id of the chain that the transaction containing the message is intended for
JSON string of the message
TypeUrl of the message
Path of chain-ids that the message is intended to interact with
A transaction on a Cosmos chain
Chain-id of the chain that the transaction is intended for
Path of chain-ids that the message is intended to interact with
The address of the wallet that will sign this transaction
Array of indices of the operations that this transaction executes
Indicates fees incurred in the execution of the transfer
Fee type:
- SMART_RELAY - Fees for Smart relaying services.'
SMART_RELAY
Bridge Type:
IBC
- IBC BridgeAXELAR
- Axelar BridgeCCTP
- CCTP BridgeHYPERLANE
- Hyperlane Bridge
IBC
, AXELAR
, CCTP
, HYPERLANE
Amount of the fee asset to be paid
The value of the fee in USD
Chain-id of the asset
Coingecko id of the asset
Number of decimals used for amounts of the asset
Denom of the asset
Description of the asset
Indicates whether asset is a CW20 token
Indicates whether asset is an EVM token
Indicates whether asset is an SVM token
URI pointing to an image of the logo of the asset
Name of the asset
Chain-id of the origin of the asset. If this is an ibc denom, this is the chain-id of the asset that the ibc token represents
Denom of the origin of the asset. If this is an ibc denom, this is the original denom that the ibc token represents
Recommended symbol of the asset used to differentiate between bridged assets with the same symbol, e.g. USDC.axl for Axelar USDC and USDC.grv for Gravity USDC
Symbol of the asset, e.g. ATOM for uatom
Address of the contract for the asset, e.g. if it is a CW20 or ERC20 token
The forward slash delimited sequence of ibc ports and channels that can be traversed to unwind an ibc token to its origin asset.
Chain ID of the chain where fees are collected
The index of the transaction in the list of transactions required to execute the transfer where fees are paid
The index of the operation in the returned operations list which incurs the fee
curl --request POST \
--url https://api.skip.build/v2/fungible/msgs \
--header 'Content-Type: application/json' \
--data '{
"source_asset_denom": "uusdc",
"source_asset_chain_id": "axelar-dojo-1",
"dest_asset_denom": "uatom",
"dest_asset_chain_id": "cosmoshub-4",
"amount_in": "1000000",
"amount_out": "107033",
"address_list": [
"axelar1x8ad0zyw52mvndh7hlnafrg0gt284ga7u3rez0",
"osmo1x8ad0zyw52mvndh7hlnafrg0gt284ga7syxplu",
"cosmos1x8ad0zyw52mvndh7hlnafrg0gt284ga7cl43fw"
],
"operations": [
{
"transfer": {
"port": "transfer",
"channel": "channel-3",
"from_chain_id": "axelar-dojo-1",
"to_chain_id": "osmosis-1",
"pfm_enabled": false,
"supports_memo": true,
"dest_denom": "ibc/D189335C6E4A68B513C10AB227BF1C1D38C746766278BA3EEB4FB14124F1D858"
}
},
{
"swap": {
"swap_in": {
"swap_venue": {
"name": "osmosis-poolmanager",
"chain_id": "osmosis-1"
},
"swap_operations": [
{
"pool": "678",
"denom_in": "ibc/D189335C6E4A68B513C10AB227BF1C1D38C746766278BA3EEB4FB14124F1D858",
"denom_out": "uosmo"
},
{
"pool": "1",
"denom_in": "uosmo",
"denom_out": "ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2"
}
],
"swap_amount_in": "1000000"
},
"estimated_affiliate_fee": "0ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2",
"from_chain_id": "osmosis-1",
"chain_id": "osmosis-1",
"denom_in": "ibc/D189335C6E4A68B513C10AB227BF1C1D38C746766278BA3EEB4FB14124F1D858",
"denom_out": "ibc/27394FB092D2ECCD56123C74F36E4C1F926001CEADA9CA97EA622B25F41E5EB2"
}
},
{
"transfer": {
"port": "transfer",
"channel": "channel-0",
"from_chain_id": "osmosis-1",
"to_chain_id": "cosmoshub-4",
"pfm_enabled": true,
"supports_memo": true,
"dest_denom": "uatom"
}
}
],
"slippage_tolerance_percent": "1",
"chain_ids_to_affiliates": {}
}'