ibc/applications
Table of Contents
- ibc/applications/fee/v1/ack.proto
- ibc/applications/fee/v1/fee.proto
- ibc/applications/fee/v1/genesis.proto
- ibc/applications/fee/v1/metadata.proto
-
ibc/applications/fee/v1/query.proto
- MQueryCounterpartyPayeeRequest
- MQueryCounterpartyPayeeResponse
- MQueryFeeEnabledChannelRequest
- MQueryFeeEnabledChannelResponse
- MQueryFeeEnabledChannelsRequest
- MQueryFeeEnabledChannelsResponse
- MQueryIncentivizedPacketRequest
- MQueryIncentivizedPacketResponse
- MQueryIncentivizedPacketsForChannelRequest
- MQueryIncentivizedPacketsForChannelResponse
- MQueryIncentivizedPacketsRequest
- MQueryIncentivizedPacketsResponse
- MQueryPayeeRequest
- MQueryPayeeResponse
- MQueryTotalAckFeesRequest
- MQueryTotalAckFeesResponse
- MQueryTotalRecvFeesRequest
- MQueryTotalRecvFeesResponse
- MQueryTotalTimeoutFeesRequest
- MQueryTotalTimeoutFeesResponse
- SQuery
- ibc/applications/fee/v1/tx.proto
- ibc/applications/interchain_accounts/controller/v1/controller.proto
- ibc/applications/interchain_accounts/controller/v1/query.proto
- ibc/applications/interchain_accounts/controller/v1/tx.proto
- ibc/applications/interchain_accounts/genesis/v1/genesis.proto
- ibc/applications/interchain_accounts/host/v1/host.proto
- ibc/applications/interchain_accounts/host/v1/query.proto
- ibc/applications/interchain_accounts/host/v1/tx.proto
- ibc/applications/interchain_accounts/v1/account.proto
- ibc/applications/interchain_accounts/v1/metadata.proto
- ibc/applications/interchain_accounts/v1/packet.proto
- ibc/applications/transfer/v1/authz.proto
- ibc/applications/transfer/v1/genesis.proto
-
ibc/applications/transfer/v1/query.proto
- MQueryDenomHashRequest
- MQueryDenomHashResponse
- MQueryDenomTraceRequest
- MQueryDenomTraceResponse
- MQueryDenomTracesRequest
- MQueryDenomTracesResponse
- MQueryEscrowAddressRequest
- MQueryEscrowAddressResponse
- MQueryParamsRequest
- MQueryParamsResponse
- MQueryTotalEscrowForDenomRequest
- MQueryTotalEscrowForDenomResponse
- SQuery
- ibc/applications/transfer/v1/transfer.proto
- ibc/applications/transfer/v1/tx.proto
- ibc/applications/transfer/v2/packet.proto
- Scalar Value Types
ibc/applications/fee/v1/ack.proto
TopIncentivizedAcknowledgement
IncentivizedAcknowledgement is the acknowledgement format to be used by applications wrapped in the fee middleware
| Field | Type | Label | Description |
| app_acknowledgement | bytes | the underlying app acknowledgement bytes |
|
| forward_relayer_address | string | the relayer address which submits the recv packet message |
|
| underlying_app_success | bool | success flag of the base application callback |
ibc/applications/fee/v1/fee.proto
TopFee
Fee defines the ICS29 receive, acknowledgement and timeout fees
| Field | Type | Label | Description |
| recv_fee | cosmos.base.v1beta1.Coin | repeated | the packet receive fee |
| ack_fee | cosmos.base.v1beta1.Coin | repeated | the packet acknowledgement fee |
| timeout_fee | cosmos.base.v1beta1.Coin | repeated | the packet timeout fee |
IdentifiedPacketFees
IdentifiedPacketFees contains a list of type PacketFee and associated PacketId
| Field | Type | Label | Description |
| packet_id | ibc.core.channel.v1.PacketId | unique packet identifier comprised of the channel ID, port ID and sequence |
|
| packet_fees | PacketFee | repeated | list of packet fees |
PacketFee
PacketFee contains ICS29 relayer fees, refund address and optional list of permitted relayers
| Field | Type | Label | Description |
| fee | Fee | fee encapsulates the recv, ack and timeout fees associated with an IBC packet |
|
| refund_address | string | the refund address for unspent fees |
|
| relayers | string | repeated | optional list of relayers permitted to receive fees |
PacketFees
PacketFees contains a list of type PacketFee
| Field | Type | Label | Description |
| packet_fees | PacketFee | repeated | list of packet fees |
ibc/applications/fee/v1/genesis.proto
TopFeeEnabledChannel
FeeEnabledChannel contains the PortID & ChannelID for a fee enabled channel
| Field | Type | Label | Description |
| port_id | string | unique port identifier |
|
| channel_id | string | unique channel identifier |
ForwardRelayerAddress
ForwardRelayerAddress contains the forward relayer address and PacketId used for async acknowledgements
| Field | Type | Label | Description |
| address | string | the forward relayer address |
|
| packet_id | ibc.core.channel.v1.PacketId | unique packet identifer comprised of the channel ID, port ID and sequence |
GenesisState
GenesisState defines the ICS29 fee middleware genesis state
| Field | Type | Label | Description |
| identified_fees | IdentifiedPacketFees | repeated | list of identified packet fees |
| fee_enabled_channels | FeeEnabledChannel | repeated | list of fee enabled channels |
| registered_payees | RegisteredPayee | repeated | list of registered payees |
| registered_counterparty_payees | RegisteredCounterpartyPayee | repeated | list of registered counterparty payees |
| forward_relayers | ForwardRelayerAddress | repeated | list of forward relayer addresses |
RegisteredCounterpartyPayee
RegisteredCounterpartyPayee contains the relayer address and counterparty payee address for a specific channel (used
for recv fee distribution)
| Field | Type | Label | Description |
| channel_id | string | unique channel identifier |
|
| relayer | string | the relayer address |
|
| counterparty_payee | string | the counterparty payee address |
RegisteredPayee
RegisteredPayee contains the relayer address and payee address for a specific channel
| Field | Type | Label | Description |
| channel_id | string | unique channel identifier |
|
| relayer | string | the relayer address |
|
| payee | string | the payee address |
ibc/applications/fee/v1/metadata.proto
TopMetadata
Metadata defines the ICS29 channel specific metadata encoded into the channel version bytestring
See ICS004: https://github.com/cosmos/ibc/tree/master/spec/core/ics-004-channel-and-packet-semantics#Versioning
| Field | Type | Label | Description |
| fee_version | string | fee_version defines the ICS29 fee version |
|
| app_version | string | app_version defines the underlying application version, which may or may not be a JSON encoded bytestring |
ibc/applications/fee/v1/query.proto
TopQueryCounterpartyPayeeRequest
QueryCounterpartyPayeeRequest defines the request type for the CounterpartyPayee rpc
| Field | Type | Label | Description |
| channel_id | string | unique channel identifier |
|
| relayer | string | the relayer address to which the counterparty is registered |
QueryCounterpartyPayeeResponse
QueryCounterpartyPayeeResponse defines the response type for the CounterpartyPayee rpc
| Field | Type | Label | Description |
| counterparty_payee | string | the counterparty payee address used to compensate forward relaying |
QueryFeeEnabledChannelRequest
QueryFeeEnabledChannelRequest defines the request type for the FeeEnabledChannel rpc
| Field | Type | Label | Description |
| port_id | string | unique port identifier |
|
| channel_id | string | unique channel identifier |
QueryFeeEnabledChannelResponse
QueryFeeEnabledChannelResponse defines the response type for the FeeEnabledChannel rpc
| Field | Type | Label | Description |
| fee_enabled | bool | boolean flag representing the fee enabled channel status |
QueryFeeEnabledChannelsRequest
QueryFeeEnabledChannelsRequest defines the request type for the FeeEnabledChannels rpc
| Field | Type | Label | Description |
| pagination | cosmos.base.query.v1beta1.PageRequest | pagination defines an optional pagination for the request. |
|
| query_height | uint64 | block height at which to query |
QueryFeeEnabledChannelsResponse
QueryFeeEnabledChannelsResponse defines the response type for the FeeEnabledChannels rpc
| Field | Type | Label | Description |
| fee_enabled_channels | FeeEnabledChannel | repeated | list of fee enabled channels |
| pagination | cosmos.base.query.v1beta1.PageResponse | pagination defines the pagination in the response. |
QueryIncentivizedPacketRequest
QueryIncentivizedPacketRequest defines the request type for the IncentivizedPacket rpc
| Field | Type | Label | Description |
| packet_id | ibc.core.channel.v1.PacketId | unique packet identifier comprised of channel ID, port ID and sequence |
|
| query_height | uint64 | block height at which to query |
QueryIncentivizedPacketResponse
QueryIncentivizedPacketsResponse defines the response type for the IncentivizedPacket rpc
| Field | Type | Label | Description |
| incentivized_packet | IdentifiedPacketFees | the identified fees for the incentivized packet |
QueryIncentivizedPacketsForChannelRequest
QueryIncentivizedPacketsForChannelRequest defines the request type for querying for all incentivized packets
for a specific channel
| Field | Type | Label | Description |
| pagination | cosmos.base.query.v1beta1.PageRequest | pagination defines an optional pagination for the request. |
|
| port_id | string |
|
|
| channel_id | string |
|
|
| query_height | uint64 | Height to query at |
QueryIncentivizedPacketsForChannelResponse
QueryIncentivizedPacketsResponse defines the response type for the incentivized packets RPC
| Field | Type | Label | Description |
| incentivized_packets | IdentifiedPacketFees | repeated | Map of all incentivized_packets |
| pagination | cosmos.base.query.v1beta1.PageResponse | pagination defines the pagination in the response. |
QueryIncentivizedPacketsRequest
QueryIncentivizedPacketsRequest defines the request type for the IncentivizedPackets rpc
| Field | Type | Label | Description |
| pagination | cosmos.base.query.v1beta1.PageRequest | pagination defines an optional pagination for the request. |
|
| query_height | uint64 | block height at which to query |
QueryIncentivizedPacketsResponse
QueryIncentivizedPacketsResponse defines the response type for the IncentivizedPackets rpc
| Field | Type | Label | Description |
| incentivized_packets | IdentifiedPacketFees | repeated | list of identified fees for incentivized packets |
| pagination | cosmos.base.query.v1beta1.PageResponse | pagination defines the pagination in the response. |
QueryPayeeRequest
QueryPayeeRequest defines the request type for the Payee rpc
| Field | Type | Label | Description |
| channel_id | string | unique channel identifier |
|
| relayer | string | the relayer address to which the distribution address is registered |
QueryPayeeResponse
QueryPayeeResponse defines the response type for the Payee rpc
| Field | Type | Label | Description |
| payee_address | string | the payee address to which packet fees are paid out |
QueryTotalAckFeesRequest
QueryTotalAckFeesRequest defines the request type for the TotalAckFees rpc
| Field | Type | Label | Description |
| packet_id | ibc.core.channel.v1.PacketId | the packet identifier for the associated fees |
QueryTotalAckFeesResponse
QueryTotalAckFeesResponse defines the response type for the TotalAckFees rpc
| Field | Type | Label | Description |
| ack_fees | cosmos.base.v1beta1.Coin | repeated | the total packet acknowledgement fees |
QueryTotalRecvFeesRequest
QueryTotalRecvFeesRequest defines the request type for the TotalRecvFees rpc
| Field | Type | Label | Description |
| packet_id | ibc.core.channel.v1.PacketId | the packet identifier for the associated fees |
QueryTotalRecvFeesResponse
QueryTotalRecvFeesResponse defines the response type for the TotalRecvFees rpc
| Field | Type | Label | Description |
| recv_fees | cosmos.base.v1beta1.Coin | repeated | the total packet receive fees |
QueryTotalTimeoutFeesRequest
QueryTotalTimeoutFeesRequest defines the request type for the TotalTimeoutFees rpc
| Field | Type | Label | Description |
| packet_id | ibc.core.channel.v1.PacketId | the packet identifier for the associated fees |
QueryTotalTimeoutFeesResponse
QueryTotalTimeoutFeesResponse defines the response type for the TotalTimeoutFees rpc
| Field | Type | Label | Description |
| timeout_fees | cosmos.base.v1beta1.Coin | repeated | the total packet timeout fees |
Query
Query defines the ICS29 gRPC querier service.
| Method Name | Request Type | Response Type | Description |
| IncentivizedPackets | QueryIncentivizedPacketsRequest | QueryIncentivizedPacketsResponse | IncentivizedPackets returns all incentivized packets and their associated fees |
| IncentivizedPacket | QueryIncentivizedPacketRequest | QueryIncentivizedPacketResponse | IncentivizedPacket returns all packet fees for a packet given its identifier |
| IncentivizedPacketsForChannel | QueryIncentivizedPacketsForChannelRequest | QueryIncentivizedPacketsForChannelResponse | Gets all incentivized packets for a specific channel |
| TotalRecvFees | QueryTotalRecvFeesRequest | QueryTotalRecvFeesResponse | TotalRecvFees returns the total receive fees for a packet given its identifier |
| TotalAckFees | QueryTotalAckFeesRequest | QueryTotalAckFeesResponse | TotalAckFees returns the total acknowledgement fees for a packet given its identifier |
| TotalTimeoutFees | QueryTotalTimeoutFeesRequest | QueryTotalTimeoutFeesResponse | TotalTimeoutFees returns the total timeout fees for a packet given its identifier |
| Payee | QueryPayeeRequest | QueryPayeeResponse | Payee returns the registered payee address for a specific channel given the relayer address |
| CounterpartyPayee | QueryCounterpartyPayeeRequest | QueryCounterpartyPayeeResponse | CounterpartyPayee returns the registered counterparty payee for forward relaying |
| FeeEnabledChannels | QueryFeeEnabledChannelsRequest | QueryFeeEnabledChannelsResponse | FeeEnabledChannels returns a list of all fee enabled channels |
| FeeEnabledChannel | QueryFeeEnabledChannelRequest | QueryFeeEnabledChannelResponse | FeeEnabledChannel returns true if the provided port and channel identifiers belong to a fee enabled channel |
Methods with HTTP bindings
| Method Name | Method | Pattern | Body |
| IncentivizedPackets | GET | /ibc/apps/fee/v1/incentivized_packets | |
| IncentivizedPacket | GET | /ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/sequences/{packet_id.sequence}/incentivized_packet | |
| IncentivizedPacketsForChannel | GET | /ibc/apps/fee/v1/channels/{channel_id}/ports/{port_id}/incentivized_packets | |
| TotalRecvFees | GET | /ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/sequences/{packet_id.sequence}/total_recv_fees | |
| TotalAckFees | GET | /ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/sequences/{packet_id.sequence}/total_ack_fees | |
| TotalTimeoutFees | GET | /ibc/apps/fee/v1/channels/{packet_id.channel_id}/ports/{packet_id.port_id}/sequences/{packet_id.sequence}/total_timeout_fees | |
| Payee | GET | /ibc/apps/fee/v1/channels/{channel_id}/relayers/{relayer}/payee | |
| CounterpartyPayee | GET | /ibc/apps/fee/v1/channels/{channel_id}/relayers/{relayer}/counterparty_payee | |
| FeeEnabledChannels | GET | /ibc/apps/fee/v1/fee_enabled | |
| FeeEnabledChannel | GET | /ibc/apps/fee/v1/channels/{channel_id}/ports/{port_id}/fee_enabled |
ibc/applications/fee/v1/tx.proto
TopMsgPayPacketFee
MsgPayPacketFee defines the request type for the PayPacketFee rpc
This Msg can be used to pay for a packet at the next sequence send & should be combined with the Msg that will be
paid for
| Field | Type | Label | Description |
| fee | Fee | fee encapsulates the recv, ack and timeout fees associated with an IBC packet |
|
| source_port_id | string | the source port unique identifier |
|
| source_channel_id | string | the source channel unique identifer |
|
| signer | string | account address to refund fee if necessary |
|
| relayers | string | repeated | optional list of relayers permitted to the receive packet fees |
MsgPayPacketFeeAsync
MsgPayPacketFeeAsync defines the request type for the PayPacketFeeAsync rpc
This Msg can be used to pay for a packet at a specified sequence (instead of the next sequence send)
| Field | Type | Label | Description |
| packet_id | ibc.core.channel.v1.PacketId | unique packet identifier comprised of the channel ID, port ID and sequence |
|
| packet_fee | PacketFee | the packet fee associated with a particular IBC packet |
MsgPayPacketFeeAsyncResponse
MsgPayPacketFeeAsyncResponse defines the response type for the PayPacketFeeAsync rpc
MsgPayPacketFeeResponse
MsgPayPacketFeeResponse defines the response type for the PayPacketFee rpc
MsgRegisterCounterpartyPayee
MsgRegisterCounterpartyPayee defines the request type for the RegisterCounterpartyPayee rpc
| Field | Type | Label | Description |
| port_id | string | unique port identifier |
|
| channel_id | string | unique channel identifier |
|
| relayer | string | the relayer address |
|
| counterparty_payee | string | the counterparty payee address |
MsgRegisterCounterpartyPayeeResponse
MsgRegisterCounterpartyPayeeResponse defines the response type for the RegisterCounterpartyPayee rpc
MsgRegisterPayee
MsgRegisterPayee defines the request type for the RegisterPayee rpc
| Field | Type | Label | Description |
| port_id | string | unique port identifier |
|
| channel_id | string | unique channel identifier |
|
| relayer | string | the relayer address |
|
| payee | string | the payee address |
MsgRegisterPayeeResponse
MsgRegisterPayeeResponse defines the response type for the RegisterPayee rpc
Msg
Msg defines the ICS29 Msg service.
| Method Name | Request Type | Response Type | Description |
| RegisterPayee | MsgRegisterPayee | MsgRegisterPayeeResponse | RegisterPayee defines a rpc handler method for MsgRegisterPayee RegisterPayee is called by the relayer on each channelEnd and allows them to set an optional payee to which reverse and timeout relayer packet fees will be paid out. The payee should be registered on the source chain from which packets originate as this is where fee distribution takes place. This function may be called more than once by a relayer, in which case, the latest payee is always used. |
| RegisterCounterpartyPayee | MsgRegisterCounterpartyPayee | MsgRegisterCounterpartyPayeeResponse | RegisterCounterpartyPayee defines a rpc handler method for MsgRegisterCounterpartyPayee RegisterCounterpartyPayee is called by the relayer on each channelEnd and allows them to specify the counterparty payee address before relaying. This ensures they will be properly compensated for forward relaying since the destination chain must include the registered counterparty payee address in the acknowledgement. This function may be called more than once by a relayer, in which case, the latest counterparty payee address is always used. |
| PayPacketFee | MsgPayPacketFee | MsgPayPacketFeeResponse | PayPacketFee defines a rpc handler method for MsgPayPacketFee PayPacketFee is an open callback that may be called by any module/user that wishes to escrow funds in order to incentivize the relaying of the packet at the next sequence NOTE: This method is intended to be used within a multi msg transaction, where the subsequent msg that follows initiates the lifecycle of the incentivized packet |
| PayPacketFeeAsync | MsgPayPacketFeeAsync | MsgPayPacketFeeAsyncResponse | PayPacketFeeAsync defines a rpc handler method for MsgPayPacketFeeAsync PayPacketFeeAsync is an open callback that may be called by any module/user that wishes to escrow funds in order to incentivize the relaying of a known packet (i.e. at a particular sequence) |
ibc/applications/interchain_accounts/controller/v1/controller.proto
TopParams
Params defines the set of on-chain interchain accounts parameters.
The following parameters may be used to disable the controller submodule.
| Field | Type | Label | Description |
| controller_enabled | bool | controller_enabled enables or disables the controller submodule. |
ibc/applications/interchain_accounts/controller/v1/query.proto
TopQueryInterchainAccountRequest
QueryInterchainAccountRequest is the request type for the Query/InterchainAccount RPC method.
| Field | Type | Label | Description |
| owner | string |
|
|
| connection_id | string |
|
QueryInterchainAccountResponse
QueryInterchainAccountResponse the response type for the Query/InterchainAccount RPC method.
| Field | Type | Label | Description |
| address | string |
|
QueryParamsRequest
QueryParamsRequest is the request type for the Query/Params RPC method.
QueryParamsResponse
QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| params | Params | params defines the parameters of the module. |
Query
Query provides defines the gRPC querier service.
| Method Name | Request Type | Response Type | Description |
| InterchainAccount | QueryInterchainAccountRequest | QueryInterchainAccountResponse | InterchainAccount returns the interchain account address for a given owner address on a given connection |
| Params | QueryParamsRequest | QueryParamsResponse | Params queries all parameters of the ICA controller submodule. |
Methods with HTTP bindings
| Method Name | Method | Pattern | Body |
| InterchainAccount | GET | /ibc/apps/interchain_accounts/controller/v1/owners/{owner}/connections/{connection_id} | |
| Params | GET | /ibc/apps/interchain_accounts/controller/v1/params |
ibc/applications/interchain_accounts/controller/v1/tx.proto
TopMsgRegisterInterchainAccount
MsgRegisterInterchainAccount defines the payload for Msg/RegisterAccount
| Field | Type | Label | Description |
| owner | string |
|
|
| connection_id | string |
|
|
| version | string |
|
|
| ordering | ibc.core.channel.v1.Order |
|
MsgRegisterInterchainAccountResponse
MsgRegisterInterchainAccountResponse defines the response for Msg/RegisterAccount
| Field | Type | Label | Description |
| channel_id | string |
|
|
| port_id | string |
|
MsgSendTx
MsgSendTx defines the payload for Msg/SendTx
| Field | Type | Label | Description |
| owner | string |
|
|
| connection_id | string |
|
|
| packet_data | ibc.applications.interchain_accounts.v1.InterchainAccountPacketData |
|
|
| relative_timeout | uint64 | Relative timeout timestamp provided will be added to the current block time during transaction execution. The timeout timestamp must be non-zero. |
MsgSendTxResponse
MsgSendTxResponse defines the response for MsgSendTx
| Field | Type | Label | Description |
| sequence | uint64 |
|
MsgUpdateParams
MsgUpdateParams defines the payload for Msg/UpdateParams
| Field | Type | Label | Description |
| signer | string | signer address |
|
| params | Params | params defines the 27-interchain-accounts/controller parameters to update. NOTE: All parameters must be supplied. |
MsgUpdateParamsResponse
MsgUpdateParamsResponse defines the response for Msg/UpdateParams
Msg
Msg defines the 27-interchain-accounts/controller Msg service.
| Method Name | Request Type | Response Type | Description |
| RegisterInterchainAccount | MsgRegisterInterchainAccount | MsgRegisterInterchainAccountResponse | RegisterInterchainAccount defines a rpc handler for MsgRegisterInterchainAccount. |
| SendTx | MsgSendTx | MsgSendTxResponse | SendTx defines a rpc handler for MsgSendTx. |
| UpdateParams | MsgUpdateParams | MsgUpdateParamsResponse | UpdateParams defines a rpc handler for MsgUpdateParams. |
ibc/applications/interchain_accounts/genesis/v1/genesis.proto
TopActiveChannel
ActiveChannel contains a connection ID, port ID and associated active channel ID, as well as a boolean flag to
indicate if the channel is middleware enabled
| Field | Type | Label | Description |
| connection_id | string |
|
|
| port_id | string |
|
|
| channel_id | string |
|
|
| is_middleware_enabled | bool |
|
ControllerGenesisState
ControllerGenesisState defines the interchain accounts controller genesis state
| Field | Type | Label | Description |
| active_channels | ActiveChannel | repeated |
|
| interchain_accounts | RegisteredInterchainAccount | repeated |
|
| ports | string | repeated |
|
| params | ibc.applications.interchain_accounts.controller.v1.Params |
|
GenesisState
GenesisState defines the interchain accounts genesis state
| Field | Type | Label | Description |
| controller_genesis_state | ControllerGenesisState |
|
|
| host_genesis_state | HostGenesisState |
|
HostGenesisState
HostGenesisState defines the interchain accounts host genesis state
| Field | Type | Label | Description |
| active_channels | ActiveChannel | repeated |
|
| interchain_accounts | RegisteredInterchainAccount | repeated |
|
| port | string |
|
|
| params | ibc.applications.interchain_accounts.host.v1.Params |
|
RegisteredInterchainAccount
RegisteredInterchainAccount contains a connection ID, port ID and associated interchain account address
| Field | Type | Label | Description |
| connection_id | string |
|
|
| port_id | string |
|
|
| account_address | string |
|
ibc/applications/interchain_accounts/host/v1/host.proto
TopParams
Params defines the set of on-chain interchain accounts parameters.
The following parameters may be used to disable the host submodule.
| Field | Type | Label | Description |
| host_enabled | bool | host_enabled enables or disables the host submodule. |
|
| allow_messages | string | repeated | allow_messages defines a list of sdk message typeURLs allowed to be executed on a host chain. |
QueryRequest
QueryRequest defines the parameters for a particular query request
by an interchain account.
| Field | Type | Label | Description |
| path | string | path defines the path of the query request as defined by ADR-021. https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-021-protobuf-query-encoding.md#custom-query-registration-and-routing |
|
| data | bytes | data defines the payload of the query request as defined by ADR-021. https://github.com/cosmos/cosmos-sdk/blob/main/docs/architecture/adr-021-protobuf-query-encoding.md#custom-query-registration-and-routing |
ibc/applications/interchain_accounts/host/v1/query.proto
TopQueryParamsRequest
QueryParamsRequest is the request type for the Query/Params RPC method.
QueryParamsResponse
QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| params | Params | params defines the parameters of the module. |
Query
Query provides defines the gRPC querier service.
| Method Name | Request Type | Response Type | Description |
| Params | QueryParamsRequest | QueryParamsResponse | Params queries all parameters of the ICA host submodule. |
Methods with HTTP bindings
| Method Name | Method | Pattern | Body |
| Params | GET | /ibc/apps/interchain_accounts/host/v1/params |
ibc/applications/interchain_accounts/host/v1/tx.proto
TopMsgModuleQuerySafe
MsgModuleQuerySafe defines the payload for Msg/ModuleQuerySafe
| Field | Type | Label | Description |
| signer | string | signer address |
|
| requests | QueryRequest | repeated | requests defines the module safe queries to execute. |
MsgModuleQuerySafeResponse
MsgModuleQuerySafeResponse defines the response for Msg/ModuleQuerySafe
| Field | Type | Label | Description |
| height | uint64 | height at which the responses were queried |
|
| responses | bytes | repeated | protobuf encoded responses for each query |
MsgUpdateParams
MsgUpdateParams defines the payload for Msg/UpdateParams
| Field | Type | Label | Description |
| signer | string | signer address |
|
| params | Params | params defines the 27-interchain-accounts/host parameters to update. NOTE: All parameters must be supplied. |
MsgUpdateParamsResponse
MsgUpdateParamsResponse defines the response for Msg/UpdateParams
Msg
Msg defines the 27-interchain-accounts/host Msg service.
| Method Name | Request Type | Response Type | Description |
| UpdateParams | MsgUpdateParams | MsgUpdateParamsResponse | UpdateParams defines a rpc handler for MsgUpdateParams. |
| ModuleQuerySafe | MsgModuleQuerySafe | MsgModuleQuerySafeResponse | ModuleQuerySafe defines a rpc handler for MsgModuleQuerySafe. |
ibc/applications/interchain_accounts/v1/account.proto
TopInterchainAccount
An InterchainAccount is defined as a BaseAccount & the address of the account owner on the controller chain
| Field | Type | Label | Description |
| base_account | cosmos.auth.v1beta1.BaseAccount |
|
|
| account_owner | string |
|
ibc/applications/interchain_accounts/v1/metadata.proto
TopMetadata
Metadata defines a set of protocol specific data encoded into the ICS27 channel version bytestring
See ICS004: https://github.com/cosmos/ibc/tree/master/spec/core/ics-004-channel-and-packet-semantics#Versioning
| Field | Type | Label | Description |
| version | string | version defines the ICS27 protocol version |
|
| controller_connection_id | string | controller_connection_id is the connection identifier associated with the controller chain |
|
| host_connection_id | string | host_connection_id is the connection identifier associated with the host chain |
|
| address | string | address defines the interchain account address to be fulfilled upon the OnChanOpenTry handshake step NOTE: the address field is empty on the OnChanOpenInit handshake step |
|
| encoding | string | encoding defines the supported codec format |
|
| tx_type | string | tx_type defines the type of transactions the interchain account can execute |
ibc/applications/interchain_accounts/v1/packet.proto
TopCosmosTx
CosmosTx contains a list of sdk.Msg's. It should be used when sending transactions to an SDK host chain.
| Field | Type | Label | Description |
| messages | google.protobuf.Any | repeated |
|
InterchainAccountPacketData
InterchainAccountPacketData is comprised of a raw transaction, type of transaction and optional memo field.
| Field | Type | Label | Description |
| type | Type |
|
|
| data | bytes |
|
|
| memo | string |
|
Type
Type defines a classification of message issued from a controller chain to its associated interchain accounts
host
| Name | Number | Description |
| TYPE_UNSPECIFIED | 0 | Default zero value enumeration |
| TYPE_EXECUTE_TX | 1 | Execute a transaction on an interchain accounts host chain |
ibc/applications/transfer/v1/authz.proto
TopAllocation
Allocation defines the spend limit for a particular port and channel
| Field | Type | Label | Description |
| source_port | string | the port on which the packet will be sent |
|
| source_channel | string | the channel by which the packet will be sent |
|
| spend_limit | cosmos.base.v1beta1.Coin | repeated | spend limitation on the channel |
| allow_list | string | repeated | allow list of receivers, an empty allow list permits any receiver address |
| allowed_packet_data | string | repeated | allow list of memo strings, an empty list prohibits all memo strings; a list only with "*" permits any memo string |
TransferAuthorization
TransferAuthorization allows the grantee to spend up to spend_limit coins from
the granter's account for ibc transfer on a specific channel
| Field | Type | Label | Description |
| allocations | Allocation | repeated | port and channel amounts |
ibc/applications/transfer/v1/genesis.proto
TopGenesisState
GenesisState defines the ibc-transfer genesis state
| Field | Type | Label | Description |
| port_id | string |
|
|
| denom_traces | DenomTrace | repeated |
|
| params | Params |
|
|
| total_escrowed | cosmos.base.v1beta1.Coin | repeated | total_escrowed contains the total amount of tokens escrowed by the transfer module |
ibc/applications/transfer/v1/query.proto
TopQueryDenomHashRequest
QueryDenomHashRequest is the request type for the Query/DenomHash RPC
method
| Field | Type | Label | Description |
| trace | string | The denomination trace ([port_id]/[channel_id])+/[denom] |
QueryDenomHashResponse
QueryDenomHashResponse is the response type for the Query/DenomHash RPC
method.
| Field | Type | Label | Description |
| hash | string | hash (in hex format) of the denomination trace information. |
QueryDenomTraceRequest
QueryDenomTraceRequest is the request type for the Query/DenomTrace RPC
method
| Field | Type | Label | Description |
| hash | string | hash (in hex format) or denom (full denom with ibc prefix) of the denomination trace information. |
QueryDenomTraceResponse
QueryDenomTraceResponse is the response type for the Query/DenomTrace RPC
method.
| Field | Type | Label | Description |
| denom_trace | DenomTrace | denom_trace returns the requested denomination trace information. |
QueryDenomTracesRequest
QueryConnectionsRequest is the request type for the Query/DenomTraces RPC
method
| Field | Type | Label | Description |
| pagination | cosmos.base.query.v1beta1.PageRequest | pagination defines an optional pagination for the request. |
QueryDenomTracesResponse
QueryConnectionsResponse is the response type for the Query/DenomTraces RPC
method.
| Field | Type | Label | Description |
| denom_traces | DenomTrace | repeated | denom_traces returns all denominations trace information. |
| pagination | cosmos.base.query.v1beta1.PageResponse | pagination defines the pagination in the response. |
QueryEscrowAddressRequest
QueryEscrowAddressRequest is the request type for the EscrowAddress RPC method.
| Field | Type | Label | Description |
| port_id | string | unique port identifier |
|
| channel_id | string | unique channel identifier |
QueryEscrowAddressResponse
QueryEscrowAddressResponse is the response type of the EscrowAddress RPC method.
| Field | Type | Label | Description |
| escrow_address | string | the escrow account address |
QueryParamsRequest
QueryParamsRequest is the request type for the Query/Params RPC method.
QueryParamsResponse
QueryParamsResponse is the response type for the Query/Params RPC method.
| Field | Type | Label | Description |
| params | Params | params defines the parameters of the module. |
QueryTotalEscrowForDenomRequest
QueryTotalEscrowForDenomRequest is the request type for TotalEscrowForDenom RPC method.
| Field | Type | Label | Description |
| denom | string |
|
QueryTotalEscrowForDenomResponse
QueryTotalEscrowForDenomResponse is the response type for TotalEscrowForDenom RPC method.
| Field | Type | Label | Description |
| amount | cosmos.base.v1beta1.Coin |
|
Query
Query provides defines the gRPC querier service.
| Method Name | Request Type | Response Type | Description |
| DenomTraces | QueryDenomTracesRequest | QueryDenomTracesResponse | DenomTraces queries all denomination traces. |
| DenomTrace | QueryDenomTraceRequest | QueryDenomTraceResponse | DenomTrace queries a denomination trace information. |
| Params | QueryParamsRequest | QueryParamsResponse | Params queries all parameters of the ibc-transfer module. |
| DenomHash | QueryDenomHashRequest | QueryDenomHashResponse | DenomHash queries a denomination hash information. |
| EscrowAddress | QueryEscrowAddressRequest | QueryEscrowAddressResponse | EscrowAddress returns the escrow address for a particular port and channel id. |
| TotalEscrowForDenom | QueryTotalEscrowForDenomRequest | QueryTotalEscrowForDenomResponse | TotalEscrowForDenom returns the total amount of tokens in escrow based on the denom. |
Methods with HTTP bindings
| Method Name | Method | Pattern | Body |
| DenomTraces | GET | /ibc/apps/transfer/v1/denom_traces | |
| DenomTrace | GET | /ibc/apps/transfer/v1/denom_traces/{hash=**} | |
| Params | GET | /ibc/apps/transfer/v1/params | |
| DenomHash | GET | /ibc/apps/transfer/v1/denom_hashes/{trace=**} | |
| EscrowAddress | GET | /ibc/apps/transfer/v1/channels/{channel_id}/ports/{port_id}/escrow_address | |
| TotalEscrowForDenom | GET | /ibc/apps/transfer/v1/denoms/{denom=**}/total_escrow |
ibc/applications/transfer/v1/transfer.proto
TopDenomTrace
DenomTrace contains the base denomination for ICS20 fungible tokens and the
source tracing information path.
| Field | Type | Label | Description |
| path | string | path defines the chain of port/channel identifiers used for tracing the source of the fungible token. |
|
| base_denom | string | base denomination of the relayed fungible token. |
Params
Params defines the set of IBC transfer parameters.
NOTE: To prevent a single token from being transferred, set the
TransfersEnabled parameter to true and then set the bank module's SendEnabled
parameter for the denomination to false.
| Field | Type | Label | Description |
| send_enabled | bool | send_enabled enables or disables all cross-chain token transfers from this chain. |
|
| receive_enabled | bool | receive_enabled enables or disables all cross-chain token transfers to this chain. |
ibc/applications/transfer/v1/tx.proto
TopMsgTransfer
MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between
ICS20 enabled chains. See ICS Spec here:
https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures
| Field | Type | Label | Description |
| source_port | string | the port on which the packet will be sent |
|
| source_channel | string | the channel by which the packet will be sent |
|
| token | cosmos.base.v1beta1.Coin | the tokens to be transferred |
|
| sender | string | the sender address |
|
| receiver | string | the recipient address on the destination chain |
|
| timeout_height | ibc.core.client.v1.Height | Timeout height relative to the current block height. The timeout is disabled when set to 0. |
|
| timeout_timestamp | uint64 | Timeout timestamp in absolute nanoseconds since unix epoch. The timeout is disabled when set to 0. |
|
| memo | string | optional memo |
MsgTransferResponse
MsgTransferResponse defines the Msg/Transfer response type.
| Field | Type | Label | Description |
| sequence | uint64 | sequence number of the transfer packet sent |
MsgUpdateParams
MsgUpdateParams is the Msg/UpdateParams request type.
| Field | Type | Label | Description |
| signer | string | signer address |
|
| params | Params | params defines the transfer parameters to update. NOTE: All parameters must be supplied. |
MsgUpdateParamsResponse
MsgUpdateParamsResponse defines the response structure for executing a
MsgUpdateParams message.
Msg
Msg defines the ibc/transfer Msg service.
| Method Name | Request Type | Response Type | Description |
| Transfer | MsgTransfer | MsgTransferResponse | Transfer defines a rpc handler method for MsgTransfer. |
| UpdateParams | MsgUpdateParams | MsgUpdateParamsResponse | UpdateParams defines a rpc handler for MsgUpdateParams. |
ibc/applications/transfer/v2/packet.proto
TopFungibleTokenPacketData
FungibleTokenPacketData defines a struct for the packet payload
See FungibleTokenPacketData spec:
https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures
| Field | Type | Label | Description |
| denom | string | the token denomination to be transferred |
|
| amount | string | the token amount to be transferred |
|
| sender | string | the sender address |
|
| receiver | string | the recipient address on the destination chain |
|
| memo | string | optional memo |
Scalar Value Types
| .proto Type | Notes | Python Type |
| double | float | |
| float | float | |
| int32 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. | int |
| int64 | Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. | int/long |
| uint32 | Uses variable-length encoding. | int/long |
| uint64 | Uses variable-length encoding. | int/long |
| sint32 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. | int |
| sint64 | Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. | int/long |
| fixed32 | Always four bytes. More efficient than uint32 if values are often greater than 2^28. | int |
| fixed64 | Always eight bytes. More efficient than uint64 if values are often greater than 2^56. | int/long |
| sfixed32 | Always four bytes. | int |
| sfixed64 | Always eight bytes. | int/long |
| bool | boolean | |
| string | A string must always contain UTF-8 encoded or 7-bit ASCII text. | str/unicode |
| bytes | May contain any arbitrary sequence of bytes. | str |